Looking for how to use this in your app?See Frontend Libraries →
ツール
大規模言語モデル (LLM) はステートレスなテキストジェネレータであり、実世界に関する知識がなく、独自にデータにアクセスできません。たとえば、LLM に「サンノゼの天気は?」と聞いても、今日の天気が何かわからないため、答えることができません。ツール (関数呼び出しと呼ばれることもあります) は、LLM が世界に関する情報を取得するために呼び出すことを選択できる関数/API です。これにより、LLM は訓練データに含まれていない天気、アプリケーション固有、さらにはユーザー固有のデータなどの情報で質問に答えることができます。
LLM にツールが提供されると、ツールを呼び出してデータを取得するか、ユーザーに代わってアクションを実行したいと言って応答することを選択できます。そのデータは会話履歴に追加されるので、LLM はどのデータが返されたかを確認できます。以下は発生することの簡略化されたフローです:
- ユーザー: 「サンノゼの天気は?」
- コード: このメッセージで LLM を呼び出します: 「サンノゼの天気は?」、および
{ city: string }のような入力を取るgetWeatherというツールにアクセスできることを知らせます - LLM: 「入力
{city: 'san jose'}で 'getWeather' ツールを呼び出したいです」 - コード:
getWeather({city: 'san jose'})を実行して、これまでの会話履歴に結果を追加し、LLM を再度呼び出します - LLM: 「サンノゼは 72 度で晴れています」