Skip to main content
OpenAI ChatGPT は非常に強力な AI 対話システムで、提示語を入力するだけで、数秒以内に流暢で自然な返信を生成できます。ChatGPT はその優れた言語理解と生成能力で業界で際立っており、現在、ChatGPT はさまざまな業界や分野で広く利用されており、その影響力はますます顕著になっています。日常の対話、創造的な執筆、専門的な相談、コードプログラミングにおいて、ChatGPT は驚くべき知的支援を提供し、人間の作業効率と創造性を大幅に向上させています。 この文書では、OpenAI Chat Completion API 操作の使用プロセスについて主に説明します。これを利用することで、公式の OpenAI ChatGPT の対話機能を簡単に使用できます。

申請プロセス

OpenAI Chat Completion API を使用するには、まず OpenAI Chat Completion API ページにアクセスし、「Acquire」ボタンをクリックして、リクエストに必要な資格情報を取得します: まだログインまたは登録していない場合は、自動的にログインページにリダイレクトされ、登録とログインを促されます。ログインまたは登録後、現在のページに自動的に戻ります。 初回申請時には無料のクレジットが付与され、この API を無料で使用できます。

基本使用

次に、画面上に対応する内容を入力します。以下の図のように:

このインターフェースを初めて使用する際には、少なくとも3つの内容を入力する必要があります。一つは authorization で、ドロップダウンリストから選択するだけです。もう一つのパラメータは model で、model は OpenAI ChatGPT の公式モデルカテゴリを選択するものです。ここでは主に20種類のモデルがあり、詳細は提供されたモデルを参照できます。最後のパラメータは messages で、messages は入力する質問語の配列です。これは配列で、複数の質問語を同時にアップロードでき、各質問語には rolecontent が含まれています。role は質問者の役割を示し、私たちは userassistantsystem の3つの役割を提供しています。もう一つの content は私たちの具体的な質問内容です。 また、右側には対応する呼び出しコードが生成されていることに注意してください。コードをコピーして直接実行することも、直接「Try」ボタンをクリックしてテストすることもできます。 一般的なオプションパラメータ:
  • max_tokens:単一の返信の最大トークン数を制限します。
  • temperature:生成のランダム性、0-2 の範囲で、値が大きいほど発散します。
  • n:一度に生成する候補返信の数。
  • response_format:返却フォーマットの設定。

呼び出し後、返された結果は以下のようになります:
返された結果には複数のフィールドがあり、以下のように説明されます:
  • id:今回の対話タスクを生成するための ID で、今回の対話タスクを一意に識別します。
  • model:選択した OpenAI ChatGPT の公式モデル。
  • choices:ChatGPT が質問語に対して提供した回答情報。
  • usage:今回の問答に対するトークンの統計情報。
その中で choices は ChatGPT の回答情報を含んでおり、choices の中には ChatGPT の情報が含まれています。以下の図のように確認できます。

choices の中の content フィールドには、ChatGPT の返信の具体的な内容が含まれています。

ストリーミング応答

このインターフェースはストリーミング応答もサポートしており、ウェブページとの接続に非常に便利で、ウェブページで逐字表示効果を実現できます。 ストリーミング応答を返したい場合は、リクエストヘッダーの stream パラメータを true に変更します。 以下の図のように変更しますが、呼び出しコードにはストリーミング応答をサポートするための対応する変更が必要です。

streamtrue に変更すると、API は行ごとに対応する JSON データを返します。コードレベルで逐行の結果を得るために、相応の変更を行う必要があります。 Python のサンプル呼び出しコード:
出力結果は以下のようになります:
見ると、レスポンスの中に多くの data があり、data の中の choices が最新の回答内容であり、前述の内容と一致しています。choices は新たに追加された回答内容であり、結果に基づいてシステムに接続できます。また、ストリーミングレスポンスの終了は data の内容によって判断され、内容が [DONE] の場合、ストリーミングレスポンスの回答がすべて終了したことを示します。返された data の結果には複数のフィールドがあり、以下のように説明されています:
  • id は、今回の対話タスクを生成するための ID であり、今回の対話タスクを一意に識別するために使用されます。
  • model は、選択された OpenAI ChatGPT の公式モデルです。
  • choices は、ChatGPT が質問に対して提供する回答情報です。
JavaScript もサポートされており、例えば Node.js のストリーミング呼び出しコードは以下の通りです:
Java のサンプルコード:
他の言語は別に自分で書き換えることができ、原理は同じです。

多輪対話

もし多輪対話機能を接続したい場合は、messages フィールドに複数の質問をアップロードする必要があります。複数の質問の具体的な例は以下の画像の通りです:

Python のサンプル呼び出しコード:
複数の質問をアップロードすることで、簡単に多回の対話を実現でき、以下のような回答が得られます:
choices に含まれる情報は基本的な使用内容と一致しており、これは ChatGPT が複数の対話に対して返信する具体的な内容を含んでいます。これにより、複数の対話内容に基づいて対応する質問に答えることができます。

OpenAI-Python との接続

OpenAI Chat Completion API サービスの上流は公式の OpenAI サービスであり、具体的には公式の OpenAI-Python を参照してください。本記事では、公式が提供するサービスの使用方法を簡単に紹介します。
  1. まず、ローカルの Python 環境を構築する必要があります。このプロセスは Google で検索してください。
  2. 開発環境をインストールします。例えば、VSCode エディタをインストールします。
  3. OpenAI 環境変数を設定します。
  • プロジェクトフォルダ内に .env という名前のファイルを作成し、保存します。
  • .env ファイルの内容:
sk-xxx を自分のキーに置き換えます。OPENAI_BASE_URL は OpenAI へのプロキシインターフェースにアクセスするためのものです。
  1. プロジェクトの依存パッケージをインストールします。
Mac OS の場合のコマンドは:
  1. サンプルソースコードファイルを作成します。
例えば、index.py というサンプルコードを作成したとします。具体的な内容は以下の通りです:

ネットワークモデル

gpt-3.5-browsing および gpt-4-browsing モデルは他のモデルとは異なり、質問に基づいてネット検索を行い、ネット検索の結果を適切に調整して返します。本記事では、具体的な例を通じてネットワーク機能を示します。次に、OpenAI Chat Completion API インターフェースに対応する内容を入力できます。以下のように:

また、右側に対応する呼び出しコードが生成されていることに注意してください。コードをコピーして直接実行することも、直接「試す」ボタンをクリックしてテストすることもできます。

呼び出し後、返された結果は以下の通りです:
choices 内の回答情報はネット検索によって得られたものであり、関連するリンクも提供されています。choices 内の回答情報は markdown 構文を使用してレンダリングする必要があり、これにより最良の体験が得られます。最後に、これが私たちのモデルのネットワーク機能の強力な利点を示しています。

視覚モデル

gpt-4o は OpenAI が開発したマルチモーダル大型言語モデルで、GPT-4 の基盤に視覚理解能力を追加しています。このモデルは、テキストと画像の入力を同時に処理し、クロスモーダルの理解と生成を実現しています。 gpt-4o モデルのテキスト処理は、上記の基本的な使用内容と一致しています。以下では、モデルの画像処理能力を使用する方法を簡単に紹介します。 gpt-4o モデルの画像処理能力を使用するには、元の content 内容に type フィールドを追加します。このフィールドにより、アップロードされたのがテキストか画像かを知ることができ、gpt-4o モデルの画像処理能力を使用できます。以下では、Curl と Python の2つの方法でこの機能を呼び出す方法を説明します。
  • Curl スクリプト方式
  • Python スクリプト方式
その後、以下の結果を得ることができます。結果のフィールド情報は上記と一致しています。具体的には以下の通りです:
回答の内容は画像に基づいているため、上記の2つの方法を使用することで、gpt-4-visionモデルのテキストと画像処理能力を簡単に利用できます。 gpt-4oの他に、より低コストのモデルであるgpt-4o-miniもあります。gpt-4o-miniはOpenAIが開発した最新世代の大規模言語モデルで、応答速度が速く、価格も安く、マルチモーダルをサポートしています。vision機能の使用については、上記のgpt-4oモデルの使用内容を参照してください。

GPT-4o 描画モデル

リクエストの例:
例の結果:

エラーハンドリング

APIを呼び出す際にエラーが発生した場合、APIは対応するエラーコードと情報を返します。例えば:
  • 400 token_mismatched:不正なリクエスト、パラメータが不足しているか無効である可能性があります。
  • 400 api_not_implemented:不正なリクエスト、パラメータが不足しているか無効である可能性があります。
  • 401 invalid_token:未認証、無効または不足している認証トークン。
  • 429 too_many_requests:リクエストが多すぎます、レート制限を超えています。
  • 500 api_error:内部サーバーエラー、サーバーで何かがうまくいきませんでした。

エラー応答の例

結論

この文書を通じて、OpenAI Chat Completion APIを使用して公式のOpenAI ChatGPTの対話機能を簡単に実現する方法を理解しました。この文書がAPIの接続と使用に役立つことを願っています。ご不明な点がございましたら、いつでも技術サポートチームにお問い合わせください。