目次
APIのリリースを通じて、OpenAIはChatGPTの機能をすべての人に開放しました。あなたのアプリケーションにChatGPT’のパワーをシームレスに統合することができるようになりました。
ChatGPTを既存のアプリケーションに統合する場合でも、新しいアプリケーションを開発する場合でも、以下の初期ステップを踏んでください。
OpenAI APIキーにアクセスする
ChatGPT APIの利用を開始するには、まずOpenAI APIキーを取得する必要があります。OpenAIの公式プラットフォームにサインアップまたはログインしてください。
ログインしたら、右上の「個人」タブをクリックします。ドロップダウンから「View API Keys」オプションを選択すると、APIキーのページに移動します。新しい秘密鍵を作成する」ボタンをクリックして、APIキーを生成してください。
この鍵は二度と見ることができないので、安全な場所に保管してください。
このプロジェクトで使用されているコードはGitHubのリポジトリで公開されており、MITライセンスのもとで自由に使用することができます。
ChatGPT APIの使用方法
OpenAI API’のgpt-3.5-turboとgpt-4モデルは、ChatGPTとChatGPTがそれぞれ使用しているものと同じモデルです。これらの強力なモデルは、自然言語のテキストを理解し、生成することが可能です。
なお、ChatGPT APIは、gpt-3.5-turboやgpt-4など、チャットボットの開発にGPTベースのモデルを使用するOpenAI APIを総称するものです。
ChatGPT APIは主にチャットに最適化されていますが、テキスト補完のタスクでも十分に機能します。gpt-3.5-turboとgpt-4モデルは、従来のGPT-3モデルよりも強力で安価なモデルです。ただし、執筆時点では、GPT-3.5モデルのファインチューニングは行えません。GPT-3のベースモデルであるダヴィンチ、キュリー、エイダ、キャベツのみ微調整が可能です。
執筆時点では、GPT-4 APIはキャンセル待ちの状態です。しかし、GPT-3.5モデルは誰でもアクセスできるので、この記事では同じものを使用することにします。ただし、GPT-4はChatGPTにアップグレードすれば、今すぐにでも使うことができます。
チャット補完のためのChatGPT APIの利用について
APIコールの準備をするために、チャットモデルを設定する必要があります。これは、例の助けを借りてよりよく理解することができます:
importopenaiopenai.api_key =\"YOUR_API_KEY "completion = openai.ChatCompletion.create()
上記のコードは、Pythonを使ったChatGPT APIコールを示しています。最後のユーザープロンプトで明示的に言及しなかったにもかかわらず、モデルは文脈("dad joke")と期待していた応答のタイプ(Q&A form)を理解することができたことに注意してください。
このように、アプリケーションを構築する際に、あらかじめコンテキストを提供しておけば、それに応じてモデルが要件に適応してくれるのです。
ここで、最も重要なのはmessagesパラメータで、メッセージオブジェクトの配列を受け取ることができます。各メッセージ・オブジェクトには、ロールとコンテンツが含まれます。メッセージ・オブジェクトには、3種類のロールを指定することができます:
- のシステムです:アシスタントのコンテキストや振る舞いを設定します。
- ユーザーアシスタントに指示を与えるために使用されます。通常、エンドユーザーによって生成されます。しかし、開発者であるあなたが、あらかじめ潜在的なユーザーのプロンプトをいくつか用意しておくこともできます。
- assistant: アシスタントにあらかじめ情報を与えておき、APIから期待されるレスポンスを得られるようにします。
さらにモデルの温度とmax_tokensパラメータをカスタマイズすることで、要件に応じた出力を得ることができます。
温度が高いほど、出力のランダム性は高くなり、逆もまた然りです。もしあなたが、反応をより集中的で決定論的なものにしたいのであれば、低い温度の値を選んでください。また、よりクリエイティブにしたいのであれば、高い値を選んでください。温度値の範囲は0~2です。
ChatGPTと同様に、そのAPIにも単語制限があります。レスポンスの長さを制限するには、max_tokensパラメータを使用します。ただし、max_tokensの値を低く設定すると、出力が途中で切れてしまう可能性があり、潜在的な問題が発生する可能性があります。本稿執筆時点では、gpt-3.5-turboモデルのトークン制限は4,096、gpt-4モデルのトークン制限は8,192となっています。
OpenAIが提供する他のパラメータを使用して、さらにモデルを設定することができます。
ChatGPT APIを使ったテキスト補完の方法
チャット補完のタスクとは別に、gpt-3.5-turboモデルはテキスト補完も得意としている。前モデルのtext-davinci-003を凌駕し、価格も10分の1程度に抑えています。
次の例は、ChatGPT APIでテキスト補完を行うための設定方法を示しています:
importopenaiopenai.api_key =\"YOUR_API_KEY "completion = openai.ChatCompletion.create()messages = [
ChatGPT APIのレスポンスフォーマット
ChatGPT APIは、以下のフォーマットでレスポンスを送信します:
さらに、コンテンツに格納されているアシスタントからの返信を抽出する必要があります。
ChatGPT APIを利用したアプリケーションの構築
APIエンドポイントやopenai Python/Node.jsライブラリを直接使用して、ChatGPT API搭載アプリケーションの構築を開始することができます。公式のopenaiライブラリとは別に、OpenAIが推奨するコミュニティでメンテナンスされたライブラリを使用してアプリケーションを開発することも可能です。
ただし、OpenAIはこれらのコミュニティが管理するライブラリの安全性を検証していませんので、APIエンドポイントを直接利用するか、公式のopenai Python/Node.jsライブラリを利用するのがよいでしょう。
方法1:APIエンドポイントを利用する
gpt-3.5-turboおよびgpt-4モデルを利用するためには、/v1/chat/completionsエンドポイントを使用する必要があります。
importrequestsopenai.api_key = \"YOUR_API_KEY "URL =\"https://api.openai.com/v1/chat/completions "payload = {.
まず、APIキーを変数に代入します。次に、ペイロードオブジェクトのmodelパラメータに、モデル名を与える必要があります。その後、messagesパラメータに会話履歴を用意しました。
ここでは、温度を高めに設定することで、よりランダムな反応を実現し、よりクリエイティブな表現ができるようにしました。
ここで’は応答出力である:
なお、OpenAI’のChatGPTには問題があるので、そのAPIからも攻撃的な返信や偏った返信が来るかもしれません。
方法2:openai公式ライブラリーを利用する
openaiのPythonライブラリをpipでインストールします:
pip install openai
これで、テキストやチャットの補完を生成する準備が整いました。
importopenaiopenai.api_key =\"YOUR_API_KEY "response = openai.ChatCompletion.create()
コードを実行すると、次のようなレスポンスが得られます’:
ChatGPTの応答は魔法のように見えるかもしれませんし、ChatGPTがどのように機能するのか誰もが疑問に思うかもしれません。しかし、その裏では、Generative Pre-trained Transformer (GPT)という言語モデルによって支えられているのです。
ChatGPT APIを使った次世代アプリの構築
ChatGPT APIの設定方法について学びました。ChatGPT APIは、あなたや世界中の開発者が、AIの力を活用した革新的な製品を構築するための門を開きました。
このツールを使って、ストーリーライター、コード翻訳者、メールライター、マーケティングコピー作成者、テキスト要約者などのアプリケーションを開発することができます。この技術を活用したアプリケーションの構築は、あなたの想像力の限界です。
ChatGPT APIとは別に、他のOpenAIモデルを使ってクールなアプリケーションを開発することも可能です。