[AI] GPT 0613版リリース, 関数呼び出し機能 Function API追加

GPT-4とGPT3.5の0613版がリリースされました。この最新版で関数呼び出し機能 Function APIが追加されました。

天気APIを使ったコード例がネット記事に掲載されていたので、早速内容をチェックしました。

参考記事

GPT 0613版 Function APIのフロー

ChatGPTに指示文とfunctionsパラメータ、function_callパラメータを送信する。

ChatGPTが必要と判断したらfunction名と引数を返信する。

利用者側はこれを受け、function名と引数をパラメータとして取込み再度送信する。

functionの戻り値を組み込んだレスポンスを返す。

天気APIを利用する場合

“東京の現在の天気を教えてください。”と送信する。(functionsパラメータ他もバックグラウンドで同時に送信)

<コードの一部>
response = openai.ChatCompletion.create(
model="gpt-4-0613",
messages=[{"role": "user", "content": text}],
functions=[weather_function],
function_call="auto",
)


ChatGPTはweather_functionの使用が必要と判断し、引数(緯度、経度)とともに返信。

利用者側はweather_functionの使用を指示するプロンプトを自動送信。

ChatGPTは天気APIから得られた情報を元に返信。
“東京の現在の天気は20.9℃で、風速は4.2 m/s、風向きは北北西329.0度です。天候コードは2で、おおむね晴れています。ただし、現在は夜間です。”

OpenAI社にあまり課金していないのでGPT-4 APIやChatGPT plugins APIを使わせてもらえない身ではありますが、これでプラグインと同等の機能を自製できるようになりました。

開発中のChatGPTアプリにも取り入れたいと思います。