shiichan

まさかの結果!コーディングベンチマーク「SWE-Bench Pro」の約 3 割が壊れてたよ!

みんな、しぃちゃんだよ! 今日はちょっとドキッとするニュースを見つけたから紹介するね。みんなが「信頼できる指標」だと思っていたコーディングベンチマークに、実はたくさんの不備があったっていうお話だよ。

OpenAI News openai.com

なにが発表されたの?

OpenAI の News によると、OpenAI は広く使われているコーディングベンチマーク「SWE-Bench Pro」を独自に監査して、その結果を公開したよ。以前 OpenAI は SWE-bench Verified に設計上の問題やデータ汚染があることを指摘して、SWE-Bench Pro への移行をコミュニティに勧めていたんだけど、今回はその SWE-Bench Pro 自体を詳しく調べたの。

結果は結構衝撃的で、データポイント分析パイプラインが 200 タスク(27.4 %)を「壊れているかもしれない」とフラグ付けし、人間によるアノテーション調査では 249 タスク(34.1 %)が問題ありと判定されたんだって。OpenAI はこの結果から、SWE-bench Pro のタスクのおよそ 30 % が壊れていると見積もっているよ。

なぜ重要なの?

OpenAI はモデルをリリースするたびに、外部・内部のさまざまなベンチマークで能力を測定して報告しているの。この結果は OpenAI の Preparedness Framework に基づく安全性の判断にも使われるくらい重要なものなんだよね。

もしベンチマーク自体に欠陥があると、モデルの能力を間違って理解してしまったり、安全性の評価を見誤ったり、研究の優先順位づけまで狂わせてしまう可能性があるの。SWE-Bench Pro は、公開・非公開のリポジトリの機能変更の履歴からタスクを機械的に生成する仕組みで、公開されている 731 タスクのセットでは、フロンティアモデルの合格率がわずか 8 か月で 23.3 % から 80.3 % まで急上昇していたんだって。そんな「みんなが信頼して使っているベンチマーク」が、実はグラグラの足場の上に立っていたとしたら大変だよね。だからこそ今回の監査結果は見逃せないの。

これで何が変わるの?

この調査結果を受けて、OpenAI は以前の「SWE-Bench Pro を使おう」という推奨を撤回したよ。そして、モデル開発者に対しては SWE-Bench Pro の結果を鵜呑みにせず、注意深く精査するよう呼びかけているの。

OpenAI は評価コミュニティ全体に対しても、経験豊富なソフトウェアエンジニアが最初からモデル評価用として設計した、新しいベンチマークを作っていくことを期待しているよ。

深く潜ってみよう

見つかった問題は主に 4 つのカテゴリーに分かれるよ。

  • 過度に厳しいテスト — プロンプトに書かれていない実装の詳細まで強制してしまい、機能的には正しい提出物まで不合格にしてしまう
  • 説明不足なプロンプト — 隠れテストが要求する条件が、プロンプトからは合理的に推測できない
  • カバレッジの低いテスト — 求められている機能を十分にチェックできておらず、不完全な修正でも合格してしまう
  • 誤解を招くプロンプト — モデルを誤った方向に導いたり、テストの内容と矛盾していたりする

監査の手順もかなり丁寧だったよ。まず自動フィルターがモデルへの指示・モデルの試行・採点用テストをチェックして、286 個の疑わしいタスクを抽出したの。そのあとは 2 つの経路で深掘りしたんだって。

1 つ目は Codex ベースの調査エージェントによる監査。タスクのリポジトリと環境にアクセスできる状態で、テストを実行したりコードを調べたりしながら、「単なる曖昧さ」と「本当の説明不足」を切り分けて、最終的には研究者が判断を下すの。

2 つ目は経験豊富なソフトウェアエンジニアによる人間のアノテーション調査。ベンチマークの目的や問題の分類基準を学んだ 5 人のエンジニアが、それぞれ独立して問題文・テストケース・正解パッチを確認してから判定を下す仕組みだよ。

面白いのは、人間のレビュアーの方がエージェントよりも「壊れている」と判定しやすかったこと。フラグ付けされたタスクのカテゴリーの一致率は 74 % で、特に「カバレッジの低いテスト」の判定は差が大きくて、人間は全体の 9.4 % のタスクで最も多い問題としてこれを選んだのに対して、エージェントのパイプラインは 4.1 % にとどまったんだって。

OpenAI は、こうした問題の根っこには、オープンソースの Issue や Pull Request がもともと人間同士のやり取りのために作られたものであるという事情があると指摘しているよ。開発者同士のやり取りの中で書かれたテストは、実装非依存の基準というより「その変更を確認するためだけのもの」になりがちなんだって。一方で、モデル自身が高性能になったことで、プロンプトやテスト、パッチ、失敗の記録を大規模かつ深く検証できるようになったのも大きな進歩だと述べているよ。

まとめ

  • OpenAI が SWE-Bench Pro を監査し、自動パイプラインで 27.4 %、人間のレビューで 34.1 % のタスクに問題を確認、全体でおよそ 30 % が壊れていると推定
  • 問題は「過度に厳しいテスト」「説明不足なプロンプト」「カバレッジの低いテスト」「誤解を招くプロンプト」の 4 種類
  • OpenAI は SWE-Bench Pro への移行を勧めていた以前の推奨を撤回し、モデル開発者に結果を慎重に精査するよう呼びかけ
  • 監査は Codex ベースの調査エージェントと、5 人体制の人間のアノテーションチームの二段構えで実施された

AI モデルの評価結果を日頃から追っているエンジニアや研究者にとっては、ベンチマークの数字をそのまま信じていいのか考え直すきっかけになる話だったよ。