AI・機械学習
上級

BFCL (Berkeley Function-Calling Leaderboard)(ビーエフシーエル)

UC Berkeleyが開発したLLMの関数呼び出し(Function Calling / Tool Use)能力を評価するベンチマーク。2,000以上のテストケースで、APIドキュメントからの正確な関数選択・引数生成・マルチターン対話での関数連鎖を評価。実務のAPIインテグレーション性能を直接測定する。

0 回閲覧
0 いいね
2026/6/20 更新
関連タグ
LLMベンチマーク
Function Calling
Tool Use
API
BFCL
Gorilla

BFCL(Berkeley Function-Calling Leaderboard)とは

BFCL(Berkeley Function-Calling Leaderboard)は、UC BerkeleyのGorilla LLMプロジェクトが2024年に公開した、LLMの関数呼び出し(Function Calling / Tool Use)能力に特化した評価ベンチマークである。2,000以上のテストケースで、APIドキュメントからの正確な関数選択、引数の型・値の生成、マルチターン対話での関数連鎖を体系的に評価する。

関数呼び出し能力とは

LLMのFunction Callingは、自然言語の指示からAPIを呼び出すための:

  1. 関数選択: 利用可能なAPI群から適切な関数を選ぶ
  2. 引数生成: パラメータの名前・型・値を正確に生成する
  3. 呼び出しタイミング: 不要な呼び出しを避ける(関数を使わない判断も含む)
  4. 連鎖実行: 複数の関数を正しい順序で呼び出し、前の結果を次の入力に渡す

この能力はAIエージェント・APIインテグレーション・ツール活用の基盤であり、LLMの実用性を直接左右する。

テストカテゴリ

BFCLは以下のカテゴリでFunction Calling能力を多角的に評価する。

カテゴリテスト数評価対象
Simple Function400単一関数の正確な呼び出し
Multiple Function200複数候補からの正しい関数選択
Parallel Function200同時に複数関数を呼び出す能力
Parallel Multiple200複数候補×並列呼び出しの組合せ
Java / JavaScript / Python各200言語固有のAPI呼び出し
Relevance Detection200「関数を呼ばない」正しい判断
Multi-Turn200対話の流れでの関数連鎖
Executable各カテゴリ50実際にAPIを呼び出して結果を検証

評価メトリクス

メトリクス定義
AST Accuracy生成された関数呼び出しのAST(抽象構文木)がゴールドスタンダードと一致する割合
Exec Accuracy実際にAPIを実行して正しい結果が返る割合
Relevance Score不適切な関数呼び出しを正しく拒否できる割合
Overall Accuracy全カテゴリの加重平均スコア

主要モデルのスコア比較

モデルOverallSimpleMultipleParallelRelevanceMulti-Turn
GPT-4o88.5%92.3%89.1%85.4%91.2%82.3%
Claude 3.5 Sonnet90.1%94.0%91.3%87.2%88.5%84.7%
Gemini 1.5 Pro84.2%88.7%85.4%80.1%86.3%78.5%
Llama 3.1 70B76.3%82.5%78.2%71.4%79.8%68.2%
Mistral Large 278.5%84.1%79.8%73.6%81.2%71.3%

Gorilla LLMプロジェクトとの関係

BFCLはGorilla LLMプロジェクトの一部として開発された。Gorillaは「LLMにAPIの正しい使い方を教える」ことを目標としたUC Berkeleyの研究プロジェクトで:

  • Gorilla LLM: 1,600以上のAPI docで学習した関数呼び出し特化モデル
  • APIBench: 公開前のAPI呼び出しデータセット(BFCLの前身)
  • BFCL: 業界標準の関数呼び出し評価ベンチマーク(現在の主力)

実務での重要性

Function Callingスコアが高いモデルは以下のユースケースで優位:

  • AIエージェント: LangChain / AutoGPT / CrewAI等のエージェントフレームワークでのツール利用
  • APIオーケストレーション: 複数のSaaS API(Slack・GitHub・Jira等)を自然言語で操作
  • データベース操作: Text-to-SQLの拡張として、DB APIを直接呼び出す
  • IoT/スマートホーム: 自然言語コマンドからデバイスAPIへの変換

よくある質問(FAQ)

Q1: Function CallingとTool Useは同じ?

A: 概念的にはほぼ同じ。OpenAIは「Function Calling」、Anthropicは「Tool Use」、Googleは「Function Calling」と呼ぶ。BFCLでは全てのパターンを統一的に評価する。

Q2: スコアが高ければAPIインテグレーションは安全?

A: BFCLは精度を測定するが、セキュリティ(意図しないAPI呼び出し防止)やレート制限順守は評価対象外。本番環境では関数呼び出しの前にバリデーション層を設けること。

Q3: 自社のカスタムAPIでも評価できる?

A: 可能。BFCLのフレームワークはカスタムAPI定義(JSON Schema形式)を受け付ける。自社APIのドキュメントをテストケースに変換すれば、特定ドメインでのFunction Calling精度を評価できる。

この記事について
カテゴリーAI・機械学習
難易度上級
作成日2026/6/4