Function Calling を使うと、任意のカスタム関数や外部 API をアシスタントに説明できます。これにより、アシスタントは関連する引数を含む JSON オブジェクトを出力して、それらの関数をインテリジェントに呼び出せます。
Chat Playground での Function Calling の利用
Playground でツール設定を開き、関数を追加します。
次に、関数のパラメーターを定義する JSON スキーマを入力します。ベータ版の生成機能では、関数で実行したいことをプレーンテキストで説明すると、JSON スキーマの候補が提示されます。
これで、ツールの一覧に関数が表示されます。
Playground で関数をテストするには、モデルがその関数を呼び出すきっかけとなるメッセージを入力します。
たとえば、get_weather 関数の場合は「バークレーの天気はどうですか?」と入力します。
関数が呼び出されたら、{"temp": 80} などの関数の出力を入力し、実行を選択します。アシスタントは、入力された関数の出力を使って応答します。
並列 Function Calling への対応
はい、Chat Playground は並列 Function Calling に対応しています。
並列 Function Calling は、モデルが複数の関数をまとめて呼び出す機能です。これにより、各関数の処理と結果の取得を並列で行えます。特に、関数の処理に時間がかかる場合に役立ち、API とのやり取りの回数を減らせます。
関数定義の strict: true 設定による構造化出力の有効化
構造化出力を有効にすると、関数呼び出しのためにモデルが生成する引数が、指定した JSON スキーマに一致することが保証されます。
構造化出力を使用しない場合、引数の構造が正しいことは保証されません。そのため、引数を使用する前に Pydantic などの検証ライブラリで検証することをおすすめします。
構造化出力を使った Function Calling の詳細をご覧ください。
Playground での関数呼び出しの強制
モデル名の横にある設定アイコンを選択します。
ツール選択を選択します。
自動から必須、または事前に作成した目的の関数に変更します。
