Name:
interface
Value:
Amplify has re-imagined the way frontend developers build fullstack applications. Develop and deploy without the hassle.

Choose your framework/language

Gen1 DocsLegacy

Page updated Nov 14, 2024

ツール

大規模言語モデル (LLM) はステートレスなテキストジェネレータであり、実世界に関する知識がなく、独自にデータにアクセスできません。たとえば、LLM に「サンノゼの天気は?」と聞いても、今日の天気が何かわからないため、答えることができません。ツール (関数呼び出しと呼ばれることもあります) は、LLM が世界に関する情報を取得するために呼び出すことを選択できる関数/API です。これにより、LLM は訓練データに含まれていない天気、アプリケーション固有、さらにはユーザー固有のデータなどの情報で質問に答えることができます。

LLM にツールが提供されると、ツールを呼び出してデータを取得するか、ユーザーに代わってアクションを実行したいと言って応答することを選択できます。そのデータは会話履歴に追加されるので、LLM はどのデータが返されたかを確認できます。以下は発生することの簡略化されたフローです:

  1. ユーザー: 「サンノゼの天気は?」
  2. コード: このメッセージで LLM を呼び出します: 「サンノゼの天気は?」、および { city: string } のような入力を取る getWeather というツールにアクセスできることを知らせます
  3. LLM: 「入力 {city: 'san jose'} で 'getWeather' ツールを呼び出したいです」
  4. コード: getWeather({city: 'san jose'}) を実行して、これまでの会話履歴に結果を追加し、LLM を再度呼び出します
  5. LLM: 「サンノゼは 72 度で晴れています」

注: LLM 自体は実際には関数やコードを実行していません。そのツールを特定の入力で呼び出したいと言う特別なメッセージで応答します。その後、そのツールを呼び出して、結果をメッセージ履歴の LLM に返す必要があります。ツール使用の詳細については、Bedrock ツール使用ドキュメントを参照してください