AIツール超わかる教科書

Function Calling / Tool Use

LLM が外部の関数・API を呼び出して情報取得や処理を行う仕組み「Function Calling / Tool Use」を、小中学生でも分かるレベルに超訳します。AI エージェントの基盤技術として、OpenAI・Anthropic・Google の公式ドキュメントに沿って整理しました。

公開: 2026-05-13 / 更新: 2026-06-11

ざっくり言うと

OpenAI では Function calling、Anthropic では Tool use、Google では Function calling と呼び方が少し違いますが、やっていることはほぼ同じです。AI エージェント(自分で判断して動く AI)の基礎技術にあたります。

イメージ

正確には

OpenAI の公式ドキュメントによると、Function calling は モデルをあなたのコードや外部サービスにつなげるための仕組み と説明されています。具体的には、開発者があらかじめ 使える関数のリスト(名前・説明・引数の形) をモデルに渡しておくと、モデルが「この質問にはこの関数を呼べばいい」と判断し、呼び出すべき関数名と引数を JSON 形式で返してくれる、という流れです。実際に関数を実行するのは LLM ではなく、開発者側のプログラムである点に注意してください。

Anthropic の Claude では同じ機能が Tool use という名前で提供されています。公式ドキュメントでは「クライアント側で定義したツールを Claude に渡し、Claude がそのツールを呼ぶように要求できる」と整理されており、流れは OpenAI とほぼ共通です。

Google の Gemini API でも Function calling という名称で同様の機能が用意されており、公式ドキュメントでは「モデルの能力を外部のツール・API と接続するための仕組み」と説明されています。

大まかな流れ

3社共通で、ざっくり以下のステップになります。

ステップ誰がやる内容
1. ツール定義開発者「使える関数」の一覧をモデルに渡す(名前・説明・引数のスキーマ)
2. 判断LLMユーザーの質問を見て「どの関数をどんな引数で呼ぶか」を決める
3. 実行開発者側のコードLLM が指定した関数を実際に実行し、結果を受け取る
4. 回答LLM実行結果を受け取り、人間向けの自然な回答にまとめる

LLM 単独だと何が弱いのか

Function Calling / Tool Use が必要になる理由は、LLM 単独だと以下の作業が苦手だからです。

  • 最新情報の取得: LLM の知識には学習データの締切日(カットオフ)があり、それ以降のニュースや株価は知らない
  • 正確な計算: 大きな桁の四則演算や、複雑な数式の処理はミスしやすい
  • 外部システム連携: メール送信・カレンダー登録・データベース検索など、世の中のシステムに何か書き込む系の処理は単独ではできない
  • 個別データへのアクセス: 社内 DB やユーザーの個人ファイルなど、学習データに含まれていない情報は知らない

これらを 外部の関数・API として用意して LLM に渡せる ようにしたのが Function Calling です。

AI エージェントとの関係

最近よく聞く「AI エージェント」(自分で計画を立てて動く AI)は、この Function Calling / Tool Use を 何度も繰り返して 仕事を進めています。

たとえば「来週の出張の手配をして」と頼まれたエージェントは、内部で「カレンダーで予定を確認 → 航空券検索 API を呼ぶ → ホテル検索 API を呼ぶ → メールを送信」といった具合に、複数のツール呼び出しをつなげて タスクを完遂します。Function Calling はその 一回一回の道具を使う動作 にあたります。

やってみよう

LLM とその外側の世界をつなぐ「橋」が Function Calling / Tool Use です。関連用語として、複数のツールを共通仕様でつなぐ MCP(Model Context Protocol) や、ツール呼び出しを連鎖させる AI エージェント も合わせて押さえておくと、最近の AI 話題がかなり見通しよくなります。

参考ソース

UPDATES

新着用語をLINEでお届け

新しい用語記事やAIの最新ニュース、仕事に役立つヒントをお届けします!

リンク先は、運営元の Nanoha AI Labo 公式LINEです。

公式LINEを友だち追加