LLMエージェントのツール呼び出しは、JSONで関数定義を渡す方式が主流です。しかし2026年8月公開の論文「The Bitter Lesson of Tool Calling」(Patel et al.)は、この前提に疑問を投げかけました。
同論文は、Pythonコードでツールを呼ぶProgrammatic Tool Calling(PTC)が主要14モデル中11でJSON以上と報告しています。論文本文はarxiv.org/abs/2608.06370で公開されています。

LLMエージェントのツール呼び出しは、JSONで関数定義を渡す方式が主流です。しかし2026年8月公開の論文「The Bitter Lesson of Tool Calling」(Patel et al.)は、この前提に疑問を投げかけました。
同論文は、Pythonコードでツールを呼ぶProgrammatic Tool Calling(PTC)が主要14モデル中11でJSON以上と報告しています。論文本文はarxiv.org/abs/2608.06370で公開されています。
JSONで関数を定義するツール呼び出しは、少数ツール・単発呼び出しでは十分に機能します。しかしツール数が増えるとschemaがコンテキストを圧迫し、精度と応答時間が同時に悪化します。
本番運用でJSON方式が特に苦しくなるのは、次の3つの場面です。
これらの弱点は、AIエージェントを企業システムに接続する際に頻繁に現れます。
fan-outは1リクエストで複数ツールを並列呼び出しする形です。JSON方式では、プロトコル依存で再現性が低いと以前から指摘されてきました。
Programmatic Tool Calling(PTC)は、ツールを関数定義として渡すのではなく、LLMに型付きPython関数の情報を渡し、実行をコード生成でまかなう方式です。

論文が定義するPTCの特徴は次のとおりです。
技術的な差分の中心は、ツール呼び出しをプロトコルからプログラムへ移すことです。多ターンのやり取りが不要になり、fan-outの制御はPython側の並列構文に委ねられます。
論文は関数呼び出し能力を測る**BFCL v4(Berkeley Function Calling Leaderboard v4)**を評価軸として用いました。対象は14種類のLLMで、PTCとJSON native tool callingを比較しています。
主要な結果は下表のとおりです。
| 比較軸 | JSON tool calling | Programmatic Tool Calling | 実務上の読み方 |
|---|---|---|---|
| BFCL v4 総合 | ベースライン | 14モデル中11で同等以上 | 大半のモデルで劣化なく切替可能 |
| GPT-5.6系列 | ベースライン | +10.6% | 上位モデルほど改善幅が大きい |
| 並列fan-out | 変動あり | 14モデル中13で同等以上 | 複数ツールの同時呼び出しに強い |
| context rot条件 | 平均-2.3%劣化 | 安定 | 長文/多ターンでも精度崩れが起きにくい |
数値はarXiv版abstractで確認できる範囲に限定しています。個別モデルの詳細スコアは論文本文(arxiv.org/abs/2608.06370)を参照してください。
数値の読み方で重要なのは、PTCが上位モデルかつ長文または並列条件で最も差を広げている点です。ツール数が少なく単発呼び出しが中心の条件では、JSONとの差は小さくなります。
論文の主張は強力ですが、実務適用にはいくつかの前提条件があります。

論文自体の限界として、次があります。
実務適用時の注意として、次があります。
これらは論文が積極的に扱っていない領域です。導入判断の際は自社データを使ったPoC検証を推奨します。
企業がJSON tool callingからPTCへの移行を検討する場合、次の5点を先に確認してください。
いずれか1つでもNoが残る場合、まずは既存のJSON方式を維持しつつ、PoCで小規模検証を先行させる判断が現実的です。
BlackfordのAIエージェント設計案件では、ツール数が5〜10を超えるとJSON schemaの管理コストが跳ね上がる傾向を実務で確認しています。論文の結果は、この体感と整合します。

一方で、PTCはコード生成能力が高いモデル前提の話です。モデル選定と抱き合わせで検討しないと、コード実行基盤だけ整えて精度が上がらない構成になり得ます。
BFCL v4は狭い評価軸のため、自社業務データで応答精度・レイテンシ・コストをA/B比較する段階を必ず挟むべきです。監査ログ・権限分離・サンドボックス設計は、Blackfordが支援する領域です。
関連する社内ナレッジ検索や業務データ活用の観点では、DataRoidによるデータ基盤整備が、PTCで扱うツール群の設計精度を高めます。
目的が異なります。MCPはツール定義や接続の共通プロトコル、PTCはLLMがツールを呼ぶ表現形式(JSONではなくコード)の話です。
MCPで提供されたツール群をPTC形式で呼び出す組合せも可能で、両者は排他ではありません。詳しくはMCPのエンタープライズ運用記事を参照してください。
既存のJSONツール定義をPythonスタブへ移す作業と、コード実行サンドボックスの整備が必要です。特にセキュリティ設計と権限分離が主な工数になります。
既存ツール数が少ないなら移行負荷は限定的ですが、監査要件が厳しい業種では調整に時間がかかります。
いいえ。論文はBFCL v4での14モデル評価で、うち3モデルではPTCがJSONを下回りました。
コード生成能力の低いモデルや小型モデルでは、効果が限定的な可能性が高いです。導入前に自社が使うモデルで単発の比較検証を行ってください。
まず社内で扱うツール数と並列実行の必要性を評価してください。ツール数が少なく単発呼び出しが中心なら、既存のJSON方式で十分に機能します。
ツール数増加、並列fan-out、長文コンテキスト対応が課題化した段階で検討する順序が現実的です。
論文「The Bitter Lesson of Tool Calling」は、LLMエージェントのツール呼び出しをJSONからProgrammatic Tool Calling(PTC)に切り替えることで、並列・長文条件下でも精度を保てる可能性を示しました。
ただしBFCL v4という単一ベンチマークでの結果であり、モデルによっては効果が出ないケースもあります。導入判断はモデル選定・サンドボックス設計・監査要件と一体で行う必要があります。
Blackfordでは、既存のJSON tool calling運用の設計、PTCへの移行判断、A/B検証まで一気通貫で支援できます。相談したい場合は、以下からお問い合わせください。








