今回は、OpenAIが開発したGPT-3.5の新機能「Function calling」について解説していきます。これは、AIとの対話形式で高精度な会話を行うことができる機能です。どのように使うのか、どのように活用していくのかを詳しく見ていきましょう。
GPT-3.5とは
GPT-3.5は、OpenAIが開発した最新のAIモデルで、自然言語処理タスクを高い精度で実行できます。主に「gpt-3.5-turbo」と「text-davinci-003」という2つのモデルがあり、「gpt-3.5-turbo」は小規模で速度が速く、比較的簡単な自然言語処理タスクに使用されることが多いです。一方、「text-davinci-003」は高度な自然言語処理タスクに使用されます。これらのモデルは、OpenAIのAPIを通じて利用できます。
Function callingの概要
Function callingとは、GPT-3.5の新機能で、関数を定義してOpenAI APIに与えることで、関数を呼び出すことができます。これにより、AIと対話しながら独自の処理を組み込むことができるようになります。Function callingを使う場合、2回以上OpenAI APIをコールすることがあります。1回目は関数の定義をAPIに与え、2回目以降は関数の呼び出しを行います。
Function callingの使い方
Function callingを使うには、まず関数に関する情報を含んだデータを作成し、functionsというパラメータに与えます。次に、function_callパラメータを”auto”に設定してAPIを呼び出します。この際、関数の定義が正しく行われていれば、APIからのレスポンスのmessageにfunction_callが含まれるはずです。このfunction_callを用いて、関数を呼び出すことができます。
例えば、天気を取得する関数を定義し、関数に関する情報を含んだデータを作成することができます。この関数を呼び出すことで、現在の天気情報を取得できるようになります。
Function callingの活用方法
Function callingを活用することで、GPT-3.5を用いてさまざまなタスクを実行できます。例えば、自動的にコードを生成することや、自然言語での問い合わせに対してプログラムのように回答することができます。また、エラトステネスの篩を用いて素数を計算する関数を定義し、素数のリストを生成することも可能です。
このように、Function callingはプログラマーだけでなく、ライターや翻訳者など、様々な分野で活用されることが期待されています。
Function callingの設定
presence_penaltyの設定
GPT-3.5では、presence_penaltyというパラメータを設定することで、トピックに関連するトピックが出現しやすくなります。これにより、AIがより関連性のある回答を提供できるようになります。
会話ログの保存とリセット
GPT-3.5では、APIの会話ログを保存し、必要に応じてリセットすることができます。これにより、過去の会話を参照しながら新しい会話を行うことが可能となります。
Function callingを使った具体例
素数のリストを作成する関数
Function callingを使って、エラトステネスの篩を用いた素数のリストを作成する関数を定義することができます。この関数を呼び出すことで、例えば100までの素数を表示することができます。
天気情報を取得する関数
Function callingを使って、天気情報を取得する関数を定義することができます。この関数を呼び出すことで、現在の天気情報を取得できるようになります。
まとめ
GPT-3.5の新機能Function callingを使うことで、AIとの対話形式で高精度な会話を行いながら、独自の処理を組み込むことができます。これにより、GPT-3.5を用いてさまざまなタスクを実行できるようになります。プログラマーだけでなく、ライターや翻訳者など、様々な分野で活用されることが期待されています。今回の解説を参考にして、Function callingを自分のプロジェクトに活用してみてください。