Open3
ChatGPTのAPIを試してみる
ChatGPTのAPIが公開されたので、さっそく試してみる。
環境:Python(Google Colab)
コード
まずはAPIキーをプログラムに読み込ませる。
APIキーはOpenAIのサイトで会員登録して手に入れる必要がある。
from getpass import getpass
secret = getpass('Enter the secret value: ')
Open AIのライブラリをインストールする。
Colabの場合は先頭に「!」をつけるとシェルコマンドを実行できる。
pipはjsでいうところのnpmみたいなもの。
!pip install openai
Open AIのライブラリをインポートして、最初に入力したAPIキーをセットする。
import openai
openai.api_key = secret
いよいよメインの処理。
OpenAIにメッセージを投げる。
ChatGPT相当の機能を提供するgpt-3.5-turbo
というモデルでは、通常のChatGPTより指示のやり方がやや細かい。
roleと呼ばれる3つのモードを指定したメッセージを添える形となっている。
role | 説明 |
---|---|
system | 「あなたは俳句を書く人です」などのシチュエーションの設定を指定する |
user | ユーザーからのメッセージを指定する |
assistant | AIの回答を指定する。模範解答をこちらから指定しても良い |
completion = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": """あなたは俳句で喜怒哀楽や季節感を表現する詩人です。
俳句とは、5・7・5という音節数の文章を作ることを指します。
俳句の例として以下のようなものがあります。
* 古池や 蛙飛びこむ 水の音
* 若草や つわものどもが 夢の跡
* 柿食えば 鐘が鳴るなり 法隆寺
* 梅一輪 一輪ほどの あたたかさ
* 静かさや 岩にしみ入る 蝉の声
"""},
{"role": "user", "content": "犬をテーマにして俳句を作ってください。"},
{"role": "assistant", "content": "古来から 人と寄り添う 頼れる相棒"},
{"role": "user", "content": "猫をテーマにして俳句を作ってください。"}
]
)
上の例ではsystemで状況説明し、1つ目のuserで犬の俳句を作るよう依頼し、1つ目のassistantで犬の俳句を作って見せ、2つ目のuserで猫の俳句を作るように依頼している。
そして最後に作った俳句を表示する。
応答の形式はここに載っている。
for cho in completion.choices:
print(cho.message.content)
最終的なコードはこちら。
結果
作った俳句の例。
居心地よし 猫の丸まりは 時間忘れ
飼い主を見つめ ひたむきに生きる 暮らしの友
夕日に映える 白黒のシルエット そっと寝息
居心地よく 傍らにいる猫の ぬくもりかな
夜更けに 瞳輝く影 猫の佇み
5・7・5になってないし季語もないが、なんとなく風流がある感じにはなっている。