メインコンテンツへスキップ
AI用語集に戻る
AI用語

ツール呼び出し

Tool Calling

解説

AIが計算機や検索エンジン、社内データベースなどの外部ツールを適切なタイミングと形式で使用する能力のこと。

さらに詳しく解説

ツール呼び出しとは

ツール呼び出し(Tool Calling / Tool Use)は、LLMが外部ツールや関数を呼び出して情報取得やアクションを実行する機能です。Function Callingの発展形として、エージェント型AIの基盤となっています。

Function Callingとの関係

用語の関係:
├── Function Calling(OpenAI)
│   └── 関数呼び出し機能
├── Tool Use(Anthropic)
│   └── ツール使用機能
└── Tool Calling
    └── 両者の総称

動作の仕組み

ツール呼び出しの流れ:
1. ユーザーの質問
   └── 「東京の天気は?」
   ↓
2. LLMがツール選択
   └── get_weather関数を選択
   ↓
3. 引数の生成
   └── {"location": "Tokyo"}
   ↓
4. ツール実行(アプリ側)
   └── 天気APIを呼び出し
   ↓
5. 結果をLLMに返却
   └── {"weather": "晴れ", "temp": 25}
   ↓
6. 最終回答生成
   └── 「東京は晴れで25度です」

定義例(OpenAI)

python
tools = [
    {
        "type": "function",
        "function": {
            "name": "get_weather",
            "description": "指定された場所の天気を取得",
            "parameters": {
                "type": "object",
                "properties": {
                    "location": {
                        "type": "string",
                        "description": "都市名"
                    }
                },
                "required": ["location"]
            }
        }
    }
]

response = client.chat.completions.create(
    model="gpt-4o",
    messages=messages,
    tools=tools
)

活用事例

ツール用途
検索API最新情報の取得
データベースデータ検索・更新
計算ツール複雑な計算
メール送信通知・連絡
カレンダー予定管理

並列ツール呼び出し

複数ツールの同時呼び出し:
├── ユーザー: 「東京と大阪の天気は?」
└── LLM: 2つのget_weather呼び出しを生成
    ├── get_weather(location="Tokyo")
    └── get_weather(location="Osaka")

セキュリティ考慮

セキュリティ対策:
├── 入力検証
│   └── 引数の妥当性チェック
├── 権限管理
│   └── ユーザー権限に応じた制限
├── レート制限
│   └── 過剰な呼び出し防止
└── ログ記録
    └── 監査用の記録

各社の対応

提供者機能名
OpenAIFunction Calling, Tools
AnthropicTool Use
GoogleFunction Calling
MistralTool Use

MCP(Model Context Protocol)

Anthropicが提唱する、ツール呼び出しの標準化プロトコル。異なるツール間の相互運用性を向上。

AI用語集に戻る

この用語をシェア

AIの導入についてご相談ください

「うちの会社でも使えるの?」「何から始めればいい?」
そんな疑問に、30分のオンライン相談でお答えします。

無料相談を予約する