Function Calling
用語名をコピー
AI概念約1分で読めます
LLMがユーザーの要求を解釈し、あらかじめ登録された外部関数やAPIを選択して呼び出すよう連携する機能です。
別名
関数呼び出しTool Useツール使用
詳しい説明
Function Calling(関数呼び出し)は、LLMがユーザーの要求を解釈し、あらかじめ登録された外部関数やAPIの中から適切なものを選択し、必要な引数を入力して呼び出すようにする機能です。モデルは直接コードを実行するのではなく、呼び出す関数名と引数を構造化された形式(JSON)で出力し、実際の実行と結果の返却はアプリケーションが担います。これにより、リアルタイムデータの照会、計算、データベースへのクエリ、外部サービスとの連携など、モデル自身では行えない作業を実行することができます。OpenAI、Anthropic、Googleなどの主要なプロバイダーがサポートしており、AIエージェントを構築する上での中核的なメカニズムとなっています。
ツール選択において重要な理由
Function Callingのサポート有無は、単なるチャットボットと、実際の業務を処理するAIエージェントを分ける基準となります。外部システムと連携して作業を自動化するには、モデルが関数呼び出しを安定して構造化できなければなりません。ツールを選ぶ際は、同時に複数の関数を呼び出せるか、呼び出し引数の形式をスキーマで強制できるか、呼び出し失敗時に再試行や検証ロジックを設けることができるかを確認すると良いでしょう。
ツールを選ぶ際に確認すべき点
- 関数の引数をJSONスキーマで強制し、形式エラーを減らすことができるか
- 1回の応答で複数の関数を並列に呼び出すことができるか
- 呼び出し結果を再びモデルに渡して、後続の推論を継続できるか
- 誤った呼び出しや不足している引数に対する検証・再試行の手段があるか
実際の適用例
「来週の釜山(プサン)出張の航空便を調べて」という要求を受けると、モデルは直接回答をでっち上げる代わりに、search_flights関数を呼び出し対象として指定し、出発地・目的地・日付の引数を入力して返します。アプリケーションが実際の航空APIを呼び出して得た結果を再びモデルに伝えると、モデルが人間にとって読みやすい形式に整理してくれます。
関連用語
AIエージェント
自律的に目標を設定し、ツール(API、ウェブなど)を使用して複雑なタスクを実行するインテリジェントなシステムです。単に回答を生成するレベルを超えて、推論(Reasoning)、計画(Planning)、実行(Execution)のループを繰...
LLM数十億以上のパラメータを通じて膨大なデータを学習した人工知能モデルです。自然言語の理解や生成だけでなく、複雑な推論、要約、コード作成など多様な知的タスクを実行し、現代の生成AIサービスのコアエンジンとしての役割を果たしています。
APIソフトウェア間でデータや機能をやり取りするための標準的なインターフェースです。AI分野では、クラウド上に構築された大規模言語モデル(LLM)を外部アプリケーションに連携し、テキスト生成や画像分析などの機能を即座に実装するためのコアツールとし...