※本ページにはプロモーション(広告)が含まれています
AIが自然言語応答の代わりに、事前定義された関数・APIを呼び出す仕組み。AIエージェントの手足を提供する基盤技術。
詳しい解説
Tool Call(ツール使用・Function Callingとも呼ばれる)は、LLMが自然言語で回答する代わりに、事前に定義された関数やAPIを呼び出して外部システムと連携する仕組みです。2023年6月のOpenAI Function Calling発表以降、Claude・Gemini・Llamaなど主要モデルが次々対応し、2026年現在はLLM活用の基本機能として完全に定着しました。MCP・AIエージェントの背骨となる技術でもあります。
仕組みとしては、開発者が『使える関数の一覧(名前・説明・引数スキーマ)』をJSON形式でLLMに渡します。LLMはユーザーの質問に対し、『自然言語で答える』または『関数を呼び出すべき』を自動判断し、後者の場合は関数名と引数をJSONで返します。アプリ側はそれを受け取って実際に関数を実行し、結果をLLMに返し、LLMが最終回答を生成する、という往復で動作します。
典型例として、ユーザーが『今日の東京の天気は?』と聞いた場合、LLMは `get_weather(city="東京", date="2026-04-18")` を呼び出し、天気APIから『晴れ、22度』を取得し、『今日の東京は晴れで気温22度です』と答える、という流れです。LLM自身が『関数を使うべきか』『どの関数をどの引数で使うか』を判断できる点が肝で、これによって学習データにない最新情報や独自データに自在にアクセスできるようになりました。
応用として、①天気・株価・為替などの最新情報取得、②データベース照会・更新、③Web検索、④メール送信・予約操作、⑤Pythonコード実行・計算、⑥画像生成・解析、⑦ファイル読み書き、⑧他のAIへの委譲、などあらゆる外部連携がTool Callで表現されます。MCPはこれを業界標準化した上位プロトコルで、関係としてはTool Callが基本語彙、MCPが統一文法、というイメージです。
実装面では、OpenAI・Anthropic・Google各社のSDKがTool Call記述をサポートしており、開発者は関数シグネチャと説明を書くだけでLLMが自律選択してくれます。並列Tool Call(複数関数同時呼び出し)、ストリーミングTool Call、型付き引数バリデーションといった拡張も2026年時点で標準機能化しています。
注意点としては、①関数説明の質が呼び出し精度を左右、②権限制御を怠ると破壊的操作につながる、③引数のバリデーションを怠るとインジェクション攻撃を受ける、④呼び出し履歴の監査ログを必ず残す、などがエンタープライズ利用での必須事項です。
Slackボットに『先週の売上トップ3の商品を教えて』と聞くと、LLMが内部で `query_sales_db(start_date="2026-04-11", end_date="2026-04-17", top=3)` というTool Callを発行し、DBから結果を取得して『1位: 商品A、2位: 商品B、3位: 商品C』と回答します。開発者はSQLクエリ関数を1つ定義しただけで、以降どんな聞き方をしても適切な引数でLLMが呼び出してくれる、という汎用性がTool Callの威力です。
別の呼び方
Function Calling
関数呼び出し
Tool Use
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!