APIBench / BFCLベンチマーク(エーピーアイベンチ・ビーエフシーエルベンチマーク)
LLMのAPI呼び出し精度を評価するためのベンチマーク群。ASTベースの意味的正確性評価やWin Rateを用いてツール呼び出し能力を定量化する。
APIBench / BFCLベンチマーク — LLMのツール呼び出し能力を測る標準ベンチマーク群
LLMのtool-use(ツール呼び出し)能力を評価するためのベンチマークは、2023年以降急速に整備された。現在はBerkeley APIBench、ToolBench、BFCL(Berkeley Function Calling Leaderboard)の3系統が事実上の標準として機能している。
1. APIBench(Gorilla LLMと共に発表)
UC Berkeleyが2023年に発表した最初期の大規模tool-useベンチマーク。
データセット構成:
- HuggingFace API: 925エンドポイント
- TorchHub: 94エンドポイント
- TensorFlow Hub: 626エンドポイント
評価手法: ASTベースの意味的正確性
文字列マッチングでなく、生成されたAPIコールを抽象構文木(AST)として解析して正確性を判定する。これにより:
torch.hub.load('pytorch/vision:v0.10.0', 'resnet50')torch.hub.load(repo_or_dir='pytorch/vision:v0.10.0', model='resnet50')
この2つは異なる文字列だが意味的に等価として両方を「正解」と判定できる。
評価指標: ハルシネーション率
- 存在しない関数名の使用
- 誤った引数名・型の使用
- バージョン不整合のAPIの使用
2. ToolBench(Tsinghua大学)
データセット規模:
- 16,464 API(49カテゴリ)
- 126,486命令セット
- RapidAPIから実際のAPIエンドポイントを収集
評価手法: Win Rate
ChatGPT(GPT-3.5-turbo)を審判モデルとして使用し、2つのモデルの回答品質を比較するペア評価。Win Rate = 審判が「より良い」と判定した割合。
タスク難度:
- I1: 単一ツール命令(1 API呼び出し)
- I2: カテゴリ内複数ツール命令(同カテゴリの複数API組み合わせ)
- I3: クロスカテゴリ複数ツール命令(異カテゴリのAPIを横断)
3. BFCL(Berkeley Function Calling Leaderboard)
2024年にGorilla LLMチームが拡張・公開した進化版ベンチマーク。
評価カテゴリ(v3時点):
- Python関数呼び出し(Simple/Multiple/Parallel/Nested)
- Java、JavaScript、SQL
- REST API呼び出し
- 実世界API(生きているエンドポイントへの実際のリクエスト)
評価指標: Abstract Syntax Tree Match(AST Match) APIBenchのAST評価を発展させ、ネストした関数呼び出しや並列呼び出しにも対応。
リアルタイムリーダーボード更新 毎月のモデルリリースに対応してランキングを更新(2025年6月時点でGPT-4o・Claude-3.7系・Gemini-2.0系が上位を競う構図)。
3指標の比較
- APIBench: 1,645 API / AST Match / 静的 / 初期比較研究
- ToolBench: 16,000+ API / Win Rate / 静的 / 複雑タスク評価
- BFCL: 多言語・多スタイル / AST Match+実API / 月次更新 / 現在の標準指標
評価指標の限界
- Win Rateの審判バイアス: GPT系モデルを審判に使うと自己有利なバイアスが生じる可能性
- 静的データセットの陳腐化: API仕様変更で「正解」が変わる問題
- 実世界との乖離: ベンチマーク特化チューニング(ハッキング)で実用性と乖離するケース
これらの限界を補うため、2025年以降はエージェント全体のタスク完了率(AgentBench等)と組み合わせた評価が主流になりつつある。