ThinkingBoxベンチマークが507のビジネスワークフローにおけるAIエージェントの一貫性のギャップを明らかに
TL;DR
ThinkingBoxは、Hugging Face経由で現在利用可能であり、AIエージェントの最終データベース状態をチェックすることで評価する。これにより、ほとんどのエージェントは1回の実行では成功するが、20回の試行で正しい結果を再現できないことが明らかになり、12のLLM間でコストと一貫性のトレードオフが顕著であることがわかった。
1つのツール呼び出しは結果ではない
エージェントが有効なツール呼び出しを行っても、誤ったデータベースレコードを生成する可能性がある。
- 12のLLMで121,680回のアブレーション実験を行った結果、79,853回の試行が実行チェックに失敗した。
- その失敗のうち**67.24 %**は、クリーンに終了し、ツールエラーを報告せず、状態を変更した。
- 失敗したトレースのうち、**77.61 %**は誤ったフィールド値を持ち、**43.30 %**は意図しない副作用を生じ、**25.36 %**は必要な効果を欠いていた。
"軌道は主張である。データベース状態こそが証拠。繰り返しは信頼の試練である。"
したがって、このベンチマークは表面的な対話やツール呼び出し回数ではなく、終端バックエンド状態に基づいてエージェントを評価する。
1回の成功は信頼性ではない
各タスクを20回実行することで、エージェントがどれだけ信頼できるかがわかる。
以下の3つのメトリクスが報告されている:
| メトリクス | 測定内容 | 解決する問い |
|---|---|---|
| pass@1 | 成功した試行の割合 | モデルは通常、どのように動作するか? |
| pass@20 | 20回の試行の中で少なくとも1回成功したタスクの割合 | たとえ1回でもタスクを解決できるか? |
| Observed 20/20 | 20回すべてで成功したタスクの数 | すべての試行で正しく動作できるか? |
ブログはObserved 20/20に焦点を当てる——つまり、すべての繰り返しで成功したタスクの実際の数である。
エージェントの背後にあるモデルに頼れるか?
幅(pass@20)と一貫性(Observed 20/20)はモデルによって大きく異なる。
- Kimi‑K3は少なくとも1回で**93.89 %**のタスクを解決(最大の幅)だが、**Observed 20/20は13.41 %**にとどまる。
- Claude Opus 5は少なくとも1回で解決するタスクは**79.09 %**と少ないが、**Observed 20/20は47.53 %**で、最も高い一貫性を達成している。
- Claude Opus 5.5はpass@1が(67.16 % vs 66.50 %)で改善されたが、一貫して正しいタスク数は増加していない(依然として241のObserved 20/20)。
"実際のレコードに影響を与える業務にモデルを選ぶなら、pass@20は見ないべき欄だ。"
一貫性のコスト
成功タスクあたりのコストは、OpenRouterのリストレートに基づくトークン使用量から計算される。
- GPT‑5.4:507試行で$43.49 → $0.131/成功タスク
- GPT‑5.6 Sol:成功あたりのコストが最も低く、$0.127
- Claude Opus 5.5:成功あたり$0.276、より高い正確性
パレートコストフロンティア
3つのモデルがフロンティア上にある(他のモデルより安価かつ正確なものは存在しない):
- GPT‑5.6 Sol – 成功あたり最も安価
- GPT‑5.4 – 成功あたり$0.004追加で中程度の正確性向上
- Claude Opus 5.5 – 成功あたり$0.276でさらに1.8 %の正確性向上
信頼できるタスクあたりのコスト(20回実行の一貫性)
| モデル | 20/20で成功したタスク数 | 20回実行の推定コスト | 信頼できるタスクあたりのコスト |
|---|---|---|---|
| GPT‑5.4 | 128 (25.25 %) | $869.80 | $6.80 |
| GPT‑6 Astra | 231 (45.56 %) | $1,720.60 | $7.45 |
| Claude Opus 5.5 | 241 (47.53 %) | $1,880.77 | $7.80 |
| … | … | … | … |
1回の正しい答えを得るための最も安価なモデルは、一貫して正しい答えを得るための最も安価なモデルではない。
失敗のシグネチャ
4つの診断カテゴリが失敗の大部分を説明する。
| シグネチャ | 失敗の割合 |
|---|---|
| ツール使用 | 79.9 % |
| 間違った状態更新 | 10.3 % |
| ユーザー解決の不完全 | 7.0 % |
| 状態変更アクションなし | 2.9 % |
主な問題はモデルの推論ではなく、ツールの扱いの誤りである。エージェントはツール呼び出しが失敗するワークフロー段階に到達した後、回復できず、より良いリトライおよびエラー回復ロジックの必要性を示している。
仕組み
ThinkingBoxはサンドボックス環境とベンチマークデータセット(ThinkingBox‑Bench)を提供する。
- タスク定義 – 初期バックエンド状態、ユーザーの目的、利用可能なMCPツール、ポリシー、実行可能チェック
- 隔離されたMCPセッション – 20回の繰り返しの各試行は、新規のデータベーススナップショットから開始される
- エージェント実行 – モデルがツールと対話し、状態を更新し、最終応答を生成する
- 副作用抽出 – 実際のデータベース変更を記録する
- 決定論的ジャッジ – 抽出された状態を必要な終了状態と比較。正しい状態に到達したすべての軌道が合格とされる
すべての評価ロジックは評価者側で実行される。モデルはゴールデン状態や採点コードを見ることはない。
自分で実行してみよう
ThinkingBoxはHugging Faceに公開され、完全なOpenEnv統合を備えている。
必要条件
- Linux/WSL、Python 3.11+、
uv、Docker - OpenEnv、thinkingbox-dataのピンされたリリースをクローンし、
thinkingboxCLIをインストールする
クイックスタート(抜粋)
# OpenEnv + ThinkingBox環境をクローンしてインストール
git clone https://github.com/huggingface/OpenEnv && cd OpenEnv
uv sync --project envs/thinkingbox_env --frozen
# v1.0のデータリポジトリをクローン
git clone https://github.com/microsoft/thinkingbox-data && \
git -C thinkingbox-data checkout thinkingbox-bench-v1.0
# CLIをインストール
uv tool install "thinkingbox @ git+https://github.com/microsoft/thinkingbox"
その後、ブログに記載された通りにTypesense、MCPセッションプロキシ、OpenEnvサーバーを起動(3つの別々のターミナル)。準備が整ったら、1つのタスクを評価する:
echo "- sandbox_external_retail_group1.py:test_case_ST002_001" > one_task.yaml
uv run --project envs/thinkingbox_env thinkingbox-eval \
one_task.yaml \
--config "$PWD/thinkingbox.yaml" \
--output results.jsonl \
--repeat 1 --message-timeout 1800
CLIはバイナリの成功/失敗報酬を返し、再現性のためにシステムエラーをログに記録する。
今後の展開
このベンチマークの主な貢献は、再現性と状態ベースの採点を簡単に採用できる環境を提供することである。
実践者への推奨事項:
- 失敗を検査する – 最終対話ではなく、実際のデータベース変更を確認する
- OpenEnvを用いて自分のモデルでタスクを再現する
- 繰り返しメトリクス(例:best-of-kやevery-of-k)を報告し、集計方法を明確にする
すべてのコードはオープンソース(サンドボックスはMIT、データはCDLA‑Permissive‑2.0)。ベンチマークは合成だが、実世界の企業エージェントのパターンを模倣している。
リソース
- ThinkingBox環境:
https://huggingface.co/docs/openenv/environments/thinkingbox - ThinkingBox‑Benchデータセット:
https://huggingface.co/datasets/microsoft/ThinkingBox-Bench - 論文:
arXiv:2608.19741 - GitHubリポジトリ:
microsoft/thinkingbox,microsoft/thinkingbox-data,microsoft/thinkingbox-training(RLトレーニングは近日公開予定)