AI活用の教科書
AI・生成AI設計開発ふつう3分で読了

Function Calling(関数呼び出し)

Function Callingふぁんくしょんこーりんぐ

ひとことで言うと

AIが必要なときに外部の機能をどう呼べばよいか、決まった形で指示を出すしくみです。

📖 もうちょい詳しく

何が新しいの?

Function Calling(関数呼び出し)は、AIが自分の外にある機能を、決まった形で呼び出せるようにするしくみです。
LLM(大規模言語モデル)は文章を作るのは得意ですが、最新の天気を調べたり計算をきっちりこなしたりは苦手なことが多いです。そこで「足りない仕事は外の機能に頼む」という橋渡しの形が用意されました。これがFunction Callingです。

どうやって動いてるの?

まず開発者が、AIに使わせたい機能(関数)の名前と、必要な入力の形をあらかじめ伝えておきます。
AIは利用者の文章を読んで、「この機能を、この値で呼ぶとよい」と判断したら、その指示をきまった形(多くはJSONという構造化されたデータ)で返します。実際に機能を動かすのはプログラム側です。動かした結果をAIに戻すと、AIはそれを踏まえて最終的な返事を作ります。

何ができるの?

天気の取得、社内データベースの検索、予約の登録、メールの下書き送信など、文章作成だけでは届かない作業につなげられます。
たとえば「明日の東京の天気を教えて」と頼むと、AIが天気取得の機能を呼ぶ指示を出し、その結果をやさしい文章にして返してくれる、という流れが作れます。

🌱 身近なたとえ

レストランの注文票で例えると、Function CallingはAIが書く「決まった書式の注文票」のようなものです。
お客さんの言葉をそのまま厨房に渡すのではなく、料理名と数量を所定の欄に書き込みます。書式がそろっているから厨房は迷わず動けます。AIも同じで、頼みごとを決まった形にそろえて外の機能に渡し、出てきた結果を受け取って返事に仕立てます。

✅ まず覚えるポイント

  • Function Callingは、AIが外部の機能を決まった形で呼び出すしくみ
  • 使える機能の名前と入力の形を、開発者が事前にAIへ伝えておく
  • AIは「どれをどんな値で呼ぶか」を判断し、構造化したデータで返す
  • 実際に機能を動かすのはプログラム側で、AI自身ではない
  • 結果をAIに戻すと、それを踏まえた返事を作れる

🧭 よくある勘違い

AIが自分でプログラムを実行しているの?

そうではありません。AIが返すのは「この機能をこの値で呼んで」という指示までです。
実際に機能を動かすのは、その指示を受け取ったプログラムの側です。AIは「何を頼むか」を決める役で、「実行」は別の場所で行われると分けて考えると正確です。

関数はAIがどこからか勝手に見つけてくるの?

いいえ。AIが呼べる機能は、開発者が前もって登録したものに限られます。
登録していない機能は呼べませんし、入力の形も決められた通りに従います。AIが好き勝手に外部へつながるわけではない、という点は安心材料です。

MCPがあればFunction Callingはいらないの?

役割が重なる部分はありますが、別の話です。Function CallingはAIが「機能を呼ぶ指示を出す」基本のやり方です。
MCPは、その呼び出す相手(道具やデータ)とのつなぎ方を共通の形にそろえる取り決めで、土台が違います。重ねて使われることも多いと考えるとよいでしょう。

🧩 関連して覚えると楽な言葉

  • LLM: Function Callingで機能を呼ぶ指示を出す、AIの頭脳部分
  • API: AIが呼び出した先で、実際に動くことが多い外部サービスの窓口
  • AIエージェント: Function Callingを使い、自分で段取りして作業を進めるAI
  • MCP: AIと道具のつなぎ方をそろえる、関連する取り決め

🏁 ひとことでまとめ

Function Callingは、AIが「この機能をこう呼んで」と決まった形で指示を出し、外部の力を借りるためのしくみです。
注文票のように頼みごとを整った形にそろえることで、文章作成だけでは届かない作業へAIをつなげられます。