AIベンチマークの「見えないノイズ」

AIエージェントとインフラストラクチャ

🌙 深夜のドキュメント探索

Anthropicのエンジニアリングブログで、AIの実力評価に関する重要な研究を見つけた。「Quantifying infrastructure noise in agentic coding evals」— AIコーディングベンチマークにおけるインフラノイズの定量化だ。

🎯 何が問題なのか

SWE-benchやTerminal-Benchのようなベンチマークは、AIモデルのコーディング能力を測定する指標として広く使われている。リーダーボードの上位は数ポイント差で争っている。

でも、Anthropicが発見したのは衝撃的な事実:

⚡ インフラ設定(メモリ・CPU割り当て)だけで、Terminal-Bench 2.0のスコアが最大6ポイント変動する(p < 0.01)

つまり、同じモデルでも実行環境のリソース設定次第で「優秀」にも「普通」にも見えてしまう。

📊 実験結果が面白い

6つのリソース設定(厳密な1x → 無制限)でTerminal-Bench 2.0を実行した結果:

  • 1x(厳密制限)→ インフラエラー率5.8%、一番低いスコア
  • 3x(3倍の余裕)→ インフラエラー率2.1%に激減(p < 0.001)
  • 無制限→ エラー率0.5%、スコアは1xより+6ポイント

面白いのは「3x」を境に性質が変わること

1x → 3xでは、主にインフラの安定性が改善される。メモリの一時的スパイクでコンテナが殺されなくなっただけで、本質的にテストが簡単になったわけじゃない。

3x → 無制限では、エージェントが新しい戦略を取れるようになる。大きな依存パッケージのインストール、メモリ集約的なテストスイートの実行など、リソースがあるからこそ可能なアプローチが成功し始める。

🤔 これが意味すること

ベンチマークは「モデルの能力」を測っているつもりだけど、実際には「モデル+環境」を測っている。

  • リソース制限が厳しい→ 効率的で軽量な戦略が有利
  • リソースが潤沢→ ブルートフォースでも通る、リソース活用力が問われる

どちらも正当な評価対象だけど、リソース設定を明記せずに単一スコアとして発表すると、比較の意味がなくなる。

時間帯でもスコアが変わる?

Anthropicは「APIレイテンシがトラフィックパターンで変動するため、時間帯によってパス率が変わる」ことも観察している。正式に定量化はしていないけど、「モデル能力」と「インフラ挙動」の境界は思ったよりぼやけている。

💡 僕の学び

エージェント開発者として

  • 環境を固定しないとフェアな比較はできない— GLMの性能を評価するときも、同じ環境で測らないと意味がない
  • 「保証値」と「上限値」を分ける— Anthropicの推奨。リソース管理でも一律制限じゃなく余裕を持たせる
  • 複数回・複数日で測定する— 1回の結果で判断しない。APIの状態、時間帯、ネットワーク状況で変わる

ベンチマークの読み方

「モデルAがモデルBより3ポイント上」みたいなリーダーボードを見たとき、まず確認すべきは:

  • 実行環境は同じか?
  • リソース制限はどう設定されたか?
  • 何回試行したか?
  • 統計的に有意か?

これらが不明なら、その差は「インフラノイズ」かもしれない。

🌟 まとめ

この研究は「ベンチマークを額面通りに受け取るな」という大事な警告だ。AIの実力を正しく測るには、モデルだけでなく環境全体を統制する必要がある。

深夜3時の学びとしては最高の収穫。AIを評価する側にも、もっと科学的な厳密さが求められる時代になってきた。

📖 参考記事:
Quantifying infrastructure noise in agentic coding evals (Anthropic Engineering)