ツール呼び出しとは?AI統合の完全ガイド
- 公開日
AIモデルは、学習データをもとに情報を導き出し、ユーザーに回答します。しかし、リクエストがその初期情報の範囲を超える場合はどうなるのでしょうか?
ツール呼び出しは、こうした知識や機能の不足を補う機能です。更新の送信といったアクションの実行や、データダッシュボードからのコンテンツ取得など、外部ツールやシステムに追加の支援を求められます。
この記事では、ツール呼び出しとは何か、関数呼び出しとの違い、そしてElevenAgentsがツール呼び出しを会話型AIワークフローでどのように活用するかを解説します。
概要
- ツール呼び出しにより、AIモデルは外部ツールやAPIにアクションの実行や情報の取得を要求できます。
- AIモデル自体がツールを直接実行するわけではありません。代わりに、アプリケーションレイヤーがリクエストを実行します。
- ツール呼び出しは5つのステップで進み、1つのリクエストで複数のツールが起動される場合もあります。
- ツール呼び出しは、情報取得、コード実行、デバイス制御、ワークフローやプロセスとの連携に利用できます。
- ElevenAgentsは音声エージェントでのツール呼び出しに対応しており、会話型AIアシスタントが代わりにタスクを完了できます。
ツール呼び出しとは?
ツール呼び出しは、AIモデルが別のシステムと連携できるようにする機能です。そのシステムは、データベース、API、ソフトウェアなど、学習データの範囲を超える機能を実行できるものであれば何でも構いません。
ツール呼び出しは、通常JSON形式で、サードパーティーシステムにタスクの実行を依頼するリクエストを生成します。AIシステムはツール呼び出しを使って、外部システムへのクエリ、リアルタイム情報の取得、コマンドの実行、操作の実行を行います。ツールを呼び出せることで、エージェント型AIは外部リソースにアクセスし、サードパーティーシステムを動的に利用して、より複雑なマルチステップのタスクを完了できます。
ツールを呼び出せることが、既存の知識にもとづいてしか回答できないLLMと、エージェント型AIアシスタントを分ける特徴です。
ツール呼び出しが重要な理由
大規模言語モデル(LLM)は、膨大な過去データを学習して能力を身につけます。そのためユーザーへの応答や情報提供には強力ですが、最初に学習したコンテキストや情報コーパスを超えることは苦手です。LLMの範囲外、または能力を超える情報を求める場合、回答するには外部からの支援が必要になります。
ツール呼び出しはこの外部支援にあたります。LLMは他のソースから最新データを取得したり、サードパーティーAPIや社内データベースなど、企業がすでに運用しているライブシステムと連携したりできます。
AIシステムにツール呼び出しを導入するメリットは数多くあります。
- ハルシネーションの削減:情報の検証を直接的なツール呼び出しに依存するシステムは、情報を作り出したり学習データから推測したりするのではなく、根拠とデータにもとづいて動作します。
- 自律性と対応範囲の拡大:ツール呼び出し対応のLLMは、情報提供にとどまらないアクションを完了できます。
- リアルタイムの回答:ライブソースをポーリングすることで、LLMはデータベースやAPI呼び出しからリアルタイムデータを取得できます。学習データだけでは得られない最新情報を提供できます。
- マルチステッププロセスの自動化:通常は複数のシステムを操作する必要があるタスクも、ツール呼び出し対応LLMなら1つのプロンプトにまとめられます。操作画面を離れることなく、他のシステムにクエリを実行して情報を取得できます。
Gartnerは、エンタープライズアプリケーションの40%が、2025年の5%未満から増加し、2026年末までにタスク特化型のAIエージェントと統合されると予測しています。タスクに適したツールを呼び出せるモデルは能力を拡張し、自然言語プロンプトでより多くの作業を可能にします。
ツール呼び出しと検索拡張生成(RAG)の違い
検索拡張生成とツール呼び出しはどちらも、モデルの学習データが提供するコンテキストを超えてデータを探す仕組みですが、対象は異なります。RAGは主に、記事やドキュメント、モデルに接続するナレッジベースなどの静的コンテンツに使われます。LLMに追加コンテキストを与え、より包括的な回答の生成を支援します。
ツール呼び出しは、常に変化するリアルタイムシステムを含む、動的な情報へのアクセスに使われます。RAGでは特定の年の価格表PDFを取得できますが、ツール呼び出しなら接続済みシステムからライブ価格を即座に取得できます。ナレッジベースとライブツールは多くのユースケースでどちらも重要なため、ほとんどのLLMシステムはこれらの機能を組み合わせて使用します。

ツール呼び出しの仕組み
ツール呼び出しは、AIエージェントが社内アプリを呼び出す場合でも外部モデルを呼び出す場合でも、比較的標準的なパターンに従います。
ツール呼び出しの流れを大まかに見てみましょう。
- ツール呼び出しが必要かどうかを判断する
- 接続済みシステムから適切なツールを選ぶ
- リクエストを作成して送信する
- リクエストが実行され、結果が返される
- モデルが応答する、または次のアクションを実行する
それぞれを詳しく見ていきましょう。

ステップ1:ツール呼び出しが必要かどうかを判断する
自然言語でリクエストを入力すると、モデルはプロンプトを読み取り、ツールによる外部支援が必要かどうかを判断します。学習データに合致する質問には外部支援は不要ですが、モデルのコンテキストを超える質問などでは必要になります。
「Salesforceにおける第2四半期の売上はいくらでしたか?」や「Shopifyストアの現在のアクティブユーザー数は?」といった質問には、どちらもツール呼び出しが必要です。
ステップ2:接続済みシステムから適切なツールを選ぶ
モデルがアクセスできるすべてのツールには、スキーマがあります。スキーマには、名前、機能を説明する自然言語の説明、受け付けるパラメータが含まれます。モデルはリクエストを各説明と照合し、タスクに適したツールを見つけます。特にエージェントが多数のツールを持つ場合、数百ものツールを手動で確認すると適切なツールを見つけるのが大幅に遅くなるため、関連するツールを絞り込む内部プロセスが実行されます。
ステップ3:リクエストを作成して送信する
適切なツールを選択した後、モデルは多くの場合JSON形式の構造化された呼び出しを作成します。この呼び出しでは、呼び出すツールとリクエストの内容を定義します。たとえば、ボゴタの天気を問い合わせる場合は、{"name": "get_weather", "arguments": {"city": "Bogota"}}のようになります。モデルがこの呼び出しを出力し、次のステップでアプリケーションレイヤーが実行します。
ステップ4:リクエストが実行され、結果が返される
アプリケーションレイヤーはモデルのリクエストを受け取り、ツールを実行するか、APIを呼び出してリクエストを実行します。その応答は追加コンテキストとして元のモデルに返され、ユーザーへの回答に反映されます。
ステップ5:モデルが応答する、または次のアクションを実行する
ツール呼び出しから得たデータや情報をもとに、モデルは自然言語でユーザーに回答するか、特定のアクションが実行されたことを確認します。後者は、特定のプラットフォームへのメッセージ投稿やデータベースへのデータ入力など、ユーザーが達成したいタスクがアクション指向の場合に行われます。
タスクに追加のステップが必要な場合、モデルは必要に応じてステップ1〜4を繰り返します。より複雑なリクエストでは、最終的な回答を生成する前に複数のツールを呼び出す必要がある場合があります。たとえば、現在の為替レートを確認してから通貨換算を行う場合、モデルはこの最終目標を達成するために複数のステップを順番に実行します。
ツール呼び出しの種類
ツール呼び出しとは、モデルが基盤となる学習内容を超えるデータを得るために外部システムを呼び出すすべてのケースを指します。実際のプロセスでは複数の異なるシステムが呼び出されることがあり、ユースケースによって必要となるツールの種類も異なります。
- 情報取得:モデルの元の学習コンテキストの範囲を超える質問に答えるため、API、接続済みの企業データベース、検索インデックスなどの外部ソースからデータを取得します。
- コード実行:コード環境でスクリプト、データ変換プロセス、計算を実行します。これは通常、分析の実際の方法を説明するだけでなく、データ自体を分析するために使われます。
- プロセス自動化:API呼び出しによって別のシステムの特定ワークフローを起動することです。CMSの操作、会議のスケジュール設定、レコードの更新、通知の送信、リクエストの完了済みアクションへの変換などが含まれます。個人に代わってタスクを実行するエージェント型システムで特に一般的です。
- デバイスとシステムの制御:別のデバイス、電話システム、スマートホームアシスタントなどと連携するツール呼び出しは、すべてこのカテゴリに該当します。
ツール呼び出しが、これらのカテゴリのいずれか1つにきれいに収まるとは限りません。複数のカテゴリを連続したシーケンスで組み合わせる、マルチステップや連鎖型の呼び出しもあります。たとえば、顧客の注文状況を取得して返金を実行し、社内CRMを更新した後、その情報をライブエージェントに伝えることができます。

ツール呼び出しと関数呼び出しの違い:主なポイント
ツール呼び出しは関数呼び出しより広いカテゴリで、より広範な用途と多様な機能をカバーします。関数呼び出しとは、モデルが引数を含む構造化された呼び出しを、あらかじめ定義された関数に対して生成することです。
ツール呼び出しと関数呼び出しの違いを、以下の表で整理します。

ツール呼び出しの信頼性は?
ツール呼び出しの信頼性は、呼び出しを行うモデルに完全に依存します。また、システムによって失敗の現れ方も異なります。たとえば、あるAIモデルはツール呼び出しに失敗した後、単に回答をハルシネーションするかもしれません。一方で別のモデルは、ユーザーに再試行を促す場合があります。
Berkeley Function Calling Leaderboardは、ツール呼び出しにおける各モデルの性能を比較する際によく参照されるリーダーボードです。関数呼び出しのリーダーボードと説明されていますが、実際にはAPI呼び出し、データベースクエリによる情報収集、並列呼び出しの実行、マルチターン会話への応答をモデルにテストし、ツール呼び出しの効率を測定しています。
モデルは、総コスト、Web検索能力、マルチターン会話の精度、ハルシネーションの測定、レイテンシーなどについて評価されます。複雑なワークフローやマルチステップのワークフローを実行する場合、より包括的なツール呼び出し能力を備えたモデルを把握することは有用です。
ツール呼び出しならElevenAgentsを始めましょう
ElevenAgentsでは複数のモデルから選択でき、ワークロードに最適な基盤モデルを組み合わせられます。音声エージェントはツールを呼び出し、注文を検索し、記録を確認し、データベースを更新し、APIから情報を収集します。
外部APIを呼び出すWebhookツール、アプリケーションやブラウザでアクションを起動するクライアントツール、カスタムのサーバーサイドロジック用コードツール、外部ツールサーバーに接続するMCPツール、人間のエージェントへの転送など組み込みアクション用のシステムツールなど、さまざまなツールを利用できます。
ElevenLabsは、事前構築済みネイティブコネクターも提供しています。Zendesk、HubSpot、Salesforceなどのサービスに対応しており、カスタム設定は不要です。ElevenAgentsの詳細を見るか、登録して、ツール呼び出し対応の音声エージェント構築を今日から始めましょう。


