目次
はじめに
PythonでChatGPTのAPIを使ってみましょう。
APIを利用することで、様々なアプリケーションとつなげることができます。
この記事では、APIを叩くために必要な手順と、料金などの簡単な仕様を紹介させていただきます。
準備
OpenAIライブラリのインストール
ChatGPT API の使い方は簡単です。
以下のコマンドをターミナルで実行してください。
$ pip install openai
OpenAI APIシークレットキーの入手
次に、OpenAIからシークレットキーを取得します。APIキーは以下のURLから取得してください。
https://platform.openai.com/account/api-keys
“create new secret key” をクリックして、シークレットキーをコピーしておいてください!
サンプルコード
import openai
openai.api_key = 'ここにシークレットキーを入れてください'
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{'role': 'user', 'content': 'Tell me about ChatGPT in brief'}],
temperature=0.0,
)
print(response)
実行結果(長すぎるので一部省略)
% python api_test.py
{
"choices": [
{
"finish_reason": "stop",
"index": 0,
"message": {
"content": "ChatGPT is an online chat platform that allows users to connect with each other and have conversations on various topics. It is a free service that does not require any registration or sign-up process. Users can simply enter a username and start chatting with other users from around the world.\n\nChatGPT offers a variety of chat rooms, including general chat, (省略)",
"role": "assistant"
}
}
],
"created": 1680782377,
"id": "chatcmpl-72IZ7QvFI9FozY3KpolohlxV3D0m4",
"model": "gpt-3.5-turbo-0301",
"object": "chat.completion",
"usage": {
"completion_tokens": 218,
"prompt_tokens": 16,
"total_tokens": 234
}
}
解説
レスポンスの中身へのアクセス
ChatGPT のレスポンスには、response[‘choices’][0][‘message’][‘content’] からアクセス可能です。
temperature
0-1の値を指定できます。
生成されるテキストの多様性を調整できます。
低いとテキストは予測しやすいものとなり、高いとランダムな単語や表現が含まれるようになります。
つまり低いとより実用的なアプリケーション向きとなり、高いとクリエイティブ向きとなります。
usage
どのくらいトークンを使用したかわかります。1000トークンあたり約0.2円です。
messages
roleに”user”(あなた),”assistant”(ChatGPTの返事),”system”(指示)を指定できます。
userとassistantを交互に配列に追加していくことで、会話を再現できます。
また、会話の冒頭にsystemを追加することで、assistantに事前の支持(振る舞い方など)を指定することができます。