チャットAIが「今日の天気」を答えたり、複雑な計算を正確にこなしたりするのを見て、不思議に思ったことはありませんか? 文章を作るだけのはずのLLMがこうした芸当をできるのは、裏側で「外部ツール呼出し」という仕組みが働いているからです。このページでは、AIエージェントの「手足」にあたるこの基盤技術を、動作の流れまで踏み込んで解説します。

📖 ひと言でいうと

外部ツール呼出しとは、LLM(大規模言語モデル)が回答を作る途中で「これは自分だけでは無理だ」と判断したとき、検索・計算・データベース照会などの外部の道具(ツール)を呼び出して結果を受け取り、それを踏まえて答えを完成させる仕組みです。

身近な例えでいうと、優秀な秘書の仕事ぶりに似ています。秘書は何でも暗記しているわけではありませんが、「知らないことは調べる」「計算は電卓を使う」「予定はカレンダーを確認する」と、道具を使い分けて正確な仕事をします。外部ツール呼出しは、LLMにこの「道具を使い分ける秘書の働き方」をさせる仕組みなのです。

🖼 1枚でわかる外部ツール呼出し

外部ツール呼出し(Tool Use / Function Calling)
  • LLMの弱点を道具で補う — 計算・最新情報・実行はツールに任せる
  • ツールを選ぶのはLLM自身 — 質問内容から必要な道具を判断する
  • 実行するのはLLMの外側 — LLMは「呼出しの指示」を出すだけ
  • エージェントの手足 — RAGの検索もツール呼出しの一種
つくもち屋「生成AI入門」SUMMARY

🔍 しっかり理解する

なぜ道具が必要なのか——LLM単体の3つの壁

LLMは「次に来る言葉を予測して文章を組み立てる」仕組みです。この仕組みには生まれつきの壁が3つあります。第一に計算の壁。LLMは数式を計算しているのではなく「それらしい数字の並び」を生成しているだけなので、桁数の多い計算などで間違えることがあります。第二に情報の鮮度の壁。学習した時点までの知識しか持たず、今日の天気や現在の在庫数は知りません。第三に行動の壁。文章を出力することしかできず、メールを送る・予定を登録するといった実際の操作はできません。

外部ツール呼出しは、この3つの壁を「本人の能力を上げる」のではなく「道具に任せる」ことで乗り越える発想です。計算は計算プログラムに、最新情報は検索や社内システムに、行動は各種ソフトウェアの操作窓口に任せれば、LLMは「どの道具をいつ使い、結果をどう言葉にまとめるか」という得意な仕事に集中できます。

動作の流れを追ってみる

外部ツール呼出しは、おおむね次の流れで動きます。

① 質問を受ける
利用可能なツール一覧も一緒に渡される
② ツールが必要か判断
LLMが「どの道具に何を頼むか」を指示として出力
③ 外部で実行
システム側がツールを実行し結果を取得
④ 結果を踏まえ回答
結果を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エージェントにとっては行動を支える「手足」にあたる基盤技術です
  • ツールを使っても、道具選びや結果の解釈で誤る可能性は残るため、重要な操作には人間の承認を挟む設計が実務の基本です