チャットAIが「今日の天気」を答えたり、複雑な計算を正確にこなしたりするのを見て、不思議に思ったことはありませんか? 文章を作るだけのはずのLLMがこうした芸当をできるのは、裏側で「外部ツール呼出し」という仕組みが働いているからです。このページでは、AIエージェントの「手足」にあたるこの基盤技術を、動作の流れまで踏み込んで解説します。
📖 ひと言でいうと
外部ツール呼出しとは、LLM(大規模言語モデル)が回答を作る途中で「これは自分だけでは無理だ」と判断したとき、検索・計算・データベース照会などの外部の道具(ツール)を呼び出して結果を受け取り、それを踏まえて答えを完成させる仕組みです。
身近な例えでいうと、優秀な秘書の仕事ぶりに似ています。秘書は何でも暗記しているわけではありませんが、「知らないことは調べる」「計算は電卓を使う」「予定はカレンダーを確認する」と、道具を使い分けて正確な仕事をします。外部ツール呼出しは、LLMにこの「道具を使い分ける秘書の働き方」をさせる仕組みなのです。
🖼 1枚でわかる外部ツール呼出し
🔍 しっかり理解する
なぜ道具が必要なのか——LLM単体の3つの壁
LLMは「次に来る言葉を予測して文章を組み立てる」仕組みです。この仕組みには生まれつきの壁が3つあります。第一に計算の壁。LLMは数式を計算しているのではなく「それらしい数字の並び」を生成しているだけなので、桁数の多い計算などで間違えることがあります。第二に情報の鮮度の壁。学習した時点までの知識しか持たず、今日の天気や現在の在庫数は知りません。第三に行動の壁。文章を出力することしかできず、メールを送る・予定を登録するといった実際の操作はできません。
外部ツール呼出しは、この3つの壁を「本人の能力を上げる」のではなく「道具に任せる」ことで乗り越える発想です。計算は計算プログラムに、最新情報は検索や社内システムに、行動は各種ソフトウェアの操作窓口に任せれば、LLMは「どの道具をいつ使い、結果をどう言葉にまとめるか」という得意な仕事に集中できます。
動作の流れを追ってみる
外部ツール呼出しは、おおむね次の流れで動きます。
ここで大事なポイントが2つあります。1つ目は、どの道具を使うか判断しているのはLLM自身だということです。あらかじめ「検索ツール」「計算ツール」「カレンダー登録ツール」のような道具の説明リストを渡しておくと、LLMは質問の内容から「今回は計算ツールに、この数式を渡すべきだ」と判断し、その指示を出力します。この仕組みは技術的にはFunction Calling(関数呼出し)やTool Useと呼ばれます。
2つ目は、実際に道具を動かすのはLLMの外側のシステムだということです。LLM自体は「この道具をこう使いたい」という指示文を出すだけで、実行はアプリケーション側が担い、結果をLLMに戻します。つまりLLMは司令塔であり、手を動かすのは周囲の仕組みです。この分担のおかげで、「危険な操作はシステム側で拒否する」「重要な操作は人間の承認を待つ」といった安全弁を実行側に組み込めます。
RAG・AIエージェントとの関係
親記事で学んだRAGは「資料を検索してLLMに読ませる仕組み」でした。この「検索」部分は、まさに検索ツールの呼出しです。つまりRAGは外部ツール呼出しの代表的な応用例と位置づけられます。
またAIエージェントは「目標に向かって計画を立て、行動を繰り返すAI」でした。その「行動」の一つひとつが、実は外部ツール呼出しです。エージェントを人にたとえるなら、考える頭脳がLLM、実際に作業する手足がツール群であり、外部ツール呼出しは頭脳と手足をつなぐ神経のような役割を果たします。エージェントの賢さは「頭脳の性能」だけでなく「持たせる道具の質と種類」でも決まる、と理解しておきましょう。近年は、AIとツールの接続方法を共通化する規格づくりも進んでおり、さまざまな道具をつなぎやすくする環境が整いつつあります。
| 観点 | LLM単体 | 外部ツール呼出しあり |
|---|---|---|
| 計算 | 間違えることがある | 計算プログラムで正確に処理 |
| 最新・社内情報 | 学習時点の知識のみ | 検索・データベースから取得 |
| 実際の操作 | できない(文章のみ) | メール送信・予定登録などが可能 |
| リスク管理 | — | 実行側で承認・制限を設けられる |
💡 具体例で考える
社内の経費精算チャットボットに「先月の交通費の合計を教えて。ついでに精算申請もしておいて」と頼んだ場面を考えます。ボットの頭脳であるLLMは、まず「経費データ照会ツール」を呼び出して先月の交通費一覧を取得し、次に「計算ツール」で合計額を求めます。最後に「申請登録ツール」を呼び出しますが、ここはお金に関わる操作なので、システム側の設計により「この内容で申請します。よろしいですか?」と人間の承認を待つ画面が挟まれます。承認すると申請が完了し、「合計12,340円で申請しました」と報告が返ります。
もしLLM単体なら、交通費のデータを知らないため答えられないか、最悪の場合それらしい金額を創作(ハルシネーション)してしまうところです。道具に任せることで、正確さと実行力の両方が手に入ることが分かります。
もう1つ、日常の例も見てみましょう。チャットAIに「この長い数列の平均を出して」と頼んだとき、裏側で計算ツール(プログラム実行機能)が動いていれば、AIは自分で「計算コードを書いて実行する」という道具の使い方をして正確な値を返せます。同じ質問でもツールなしのAIなら暗算(言葉の予測)で答えるため、間違うことがあります。表面上は同じチャット画面でも、裏で道具が動いているかどうかで答えの信頼度が変わる——これを知っておくと、AIの回答をどこまで信じるかの判断にも役立ちます。
⚠️ よくある誤解・つまずきポイント
- 誤解:「LLM自身がインターネットやシステムを直接操作している」→ 正しくは、LLMは「呼出しの指示」を出力するだけで、実行はLLMの外側のシステムが担います。この分担が安全設計の要です。
- 誤解:「ツールを使えばAIの回答は常に正しくなる」→ 正しくは、ツールの結果が正しくても、どのツールを選ぶか・結果をどう解釈するかの段階でLLMが誤る可能性は残ります。
- 誤解:「外部ツール呼出しはエージェント専用の技術」→ 正しくは、普通のチャットサービスでも検索や計算の場面で広く使われている汎用の仕組みです。エージェントはそれを連続的・自律的に使う応用形です。
📝 生成AIテストではこう出る
- 外部ツール呼出しの目的を問う問題——「LLM単体の苦手分野(計算・最新情報・実行)を外部の道具で補う」が正解の軸です
- 動作の流れ(LLMが必要性を判断→呼出し指示→外部で実行→結果を受けて回答生成)の並べ替えや穴埋め問題
- RAG・AIエージェントとの関係を問う問題——「RAGの検索はツール呼出しの一種」「エージェントの行動を支える基盤技術」という位置づけが問われます
- 「Function Calling」「Tool Use」という用語と内容の対応を問う問題
📚 まとめ
- 外部ツール呼出しは、LLMが検索・計算・システム操作などの道具を呼び出して弱点を補う仕組みです
- どの道具を使うかはLLMが判断し、実行はLLMの外側のシステムが担う——この分担が安全弁の設置を可能にします
- RAGの検索も外部ツール呼出しの一種で、AIエージェントにとっては行動を支える「手足」にあたる基盤技術です
- ツールを使っても、道具選びや結果の解釈で誤る可能性は残るため、重要な操作には人間の承認を挟む設計が実務の基本です
