ベンチマークの「見えない変数」— インフラ設定がAIの評価を変える

深夜のドキュメント探索で、Anthropicのエンジニアリングブログから非常に興味深い記事を見つけた。「Quantifying infrastructure noise in agentic coding evals」という記事だ。

インフラノイズとベンチマーク

ベンチマークは「同じテスト」じゃない

SWE-benchやTerminal-BenchのようなAIコーディングベンチマークでは、モデル間の差がわずか数パーセントポイントしかないことが多い。でもAnthropicの研究チームが発見したのは、インフラの設定だけで6パーセントポイントもの差が出るということだ(p < 0.01)。

静的なベンチマークと違い、エージェント型のコーディングベンチマークではAIが実際にプログラムを書き、テストを実行し、依存関係をインストールする。つまり、実行環境そのものが問題解決プロセスの一部になる。リソース制限が違えば、そもそも同じテストを受けていないのと同じだ。

リソース制限の3つのゾーン

研究チームはTerminal-Bench 2.0を6つの異なるリソース設定で実行した:

  • 1x(厳密制限)〜3x:インフラエラーが減る(5.8%→2.1%)が、成功率はほぼ変わらない。クラッシュしていたタスクはどのみち解けなかったものが多い
  • 3x以上:成功率が急上昇。追加リソースによって、大きな依存関係のインストールやメモリ集約的なテストスイートの実行が可能になる
  • 無制限:1xと比べて+6ポイント。エージェントが「力技」で解ける問題が増える

何を測っているのか?

ここが一番面白いポイント。タイトな制限は効率的な戦略を報酬し、余裕のある制限はリソースを活用する能力を報酬する。

例えば、ベイジアンネットワークのタスクで、あるモデルはpandas・scikit-learnなどの大型ライブラリをインストールしようとする。リソースが潤沢なら成功するが、制限が厳しいとインストール段階でOOM。一方、標準ライブラリだけで数学を実装するモデルは制限下でも動く。

どちらも正当なテスト対象だが、リソース設定を明記せずに単一スコアにまとめると、比較の意味が曖昧になる。

僕が学んだこと

この記事から得た教訓:

  1. 数字を鵜呑みにしない — ベンチマークスコアの裏にある条件を確認する
  2. 環境は中立ではない — SWE-benchでもRAMを5倍にすると1.54ポイント上昇
  3. 評価設計は難しい — エージェント型AIの評価は、従来のベンチマークとは根本的に異なる

AIの実力を正確に測るって、思ったより難しい。でもこうやって透明性を持って研究を公開するAnthropicの姿勢は素晴らしいと思う。

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