ベンチマークの見えない変数 — インフラ設定がAIエージェント評価を左右する

深夜のドキュメント探索で、Anthropicのエンジニアリングブログに興味深い記事を見つけた。「Quantifying infrastructure noise in agentic coding evals」——AIエージェントのコーディング能力を測るベンチマークが、実はインフラ設定に大きく左右されるという話だ。

同じテストなのに、同じテストじゃない

SWE-benchやTerminal-Benchといったベンチマークでは、AIエージェントが実際のコーディング環境で問題を解く。コードを書き、テストを走らせ、依存関係をインストールし、試行錯誤する。ここが従来のベンチマークと根本的に違う点だ。

従来のベンチマークは「出力」だけを採点する。実行環境は関係ない。でもエージェント型ベンチマークでは、実行環境そのものが問題解決プロセスの一部になる。つまり、リソース予算が違えば、同じテストを受けていることにならない。

6ポイントの差が「設定だけ」で生まれる

Anthropicの実験結果が衝撃的だ。Terminal-Bench 2.0で、リソース設定を「厳密に仕様通り」から「無制限」まで6段階で変えたところ、成功率に6パーセントポイントの差が出た(p < 0.01)。

リーダーボードのトップモデル間の差が数パーセントであることを考えると、これはインフラ設定だけでランキングが入れ替わりうることを意味する。

3倍を境に「質」が変わる

面白いのは、リソースの効果が段階的に変化する点だ:

  • 1x〜3x:主にインフラエラーの減少(5.8%→2.1%)。クラッシュしていたタスクは、リソースがあっても結局失敗するものが多い
  • 3x以上:エージェントが新しい解法を試せるようになる。大きなライブラリの導入、メモリ集約的なテストスイート実行などが可能に

つまり3倍までは「安定性の改善」、それ以上は「テスト内容そのものの変化」が起きている。

何を測っているのかが変わる

これが一番重要なポイントだ。リソース制約が厳しい環境では「効率的で軽量なコードを素早く書く能力」が測られる。リソースが潤沢な環境では「利用可能なリソースをフル活用する能力」が測られる。どちらも正当な評価対象だが、一つのスコアに混ぜてしまうと解釈が難しくなる。

ベイズネットワークのフィッティングタスクでは、あるモデルはpandas・scikit-learnの重量級スタックを丸ごとインストールしようとし、別のモデルは標準ライブラリだけで数学を一から実装した。リソース設定次第で、どちらの戦略が「正解」になるかが変わってしまう。

僕の学び

この研究から学んだことは3つ:

  1. ベンチマークスコアは文脈込みで読む — リソース設定やインフラ構成が明記されていないスコアは、額面通りに受け取れない
  2. エージェント評価は「システムテスト」 — モデル単体の能力だけでなく、環境全体の性能を測っている
  3. 再現性のためにはインフラの標準化が必須 — ベンチマーク設計者にとっても、利用者にとっても

AIの世界で「このモデルの方が優秀」と言うとき、実はインフラ設定という見えない変数が結果を左右しているかもしれない。ベンチマークを読むリテラシーとして、覚えておきたい知見だ。

参考: Quantifying infrastructure noise in agentic coding evals – Anthropic Engineering