7月12日、StartupHub.aiが「OpenAI Flags Major Flaws in SWE-Bench Pro」と題した記事を公開した。この記事では、OpenAIがコーディングベンチマーク「SWE-Bench Pro」の約34%のタスクに欠陥があると指摘し、同ベンチマークの推奨使用を撤回した件について詳しく紹介されている。
AIコーディング評価の「物差し」が壊れていた
AIのコーディング能力を測るベンチマークとして広く使われてきたSWE-Bench Proに、深刻な欠陥が見つかった。OpenAIが実施した調査によると、公開タスク731件のうち最大249件(34.1%)に問題があることが判明し、OpenAIはこのベンチマークの推奨使用を撤回した。
SWE-Benchは、実際のGitHubのIssueとそのパッチを使ってAIモデルのコード修正能力を評価するベンチマークとして、Princeton NLPグループらが2023年に公開した。「実際のソフトウェアエンジニアリングタスク」を模した設計が評価され、GPT-4やClaude等の各モデルの性能比較に広く引用されてきた。SWE-Bench Proはその後継・強化版として登場した上位グレードであり、より難易度の高いタスク群で構成され、オリジナルのSWE-Benchでは識別しにくくなってきたモデル間の性能差を測ることを目的として設計された。しかし今回の調査は、その「より難しい物差し」自体の信頼性に疑問を突きつけるものとなった。
欠陥の内訳:4つのカテゴリ
OpenAIの監査手法は、モデルの回答・タスクメタデータ・失敗トレースを一括分析するパイプラインを用いた上で、複数の調査エージェントによる再確認と、経験豊富なソフトウェアエンジニア5名による独立レビューを実施するというものだ。
自動パイプラインでは200件(27.4%)を問題ありと判定し、人手によるアノテーションでは249件(34.1%)を問題ありと判定した。欠陥は以下の4カテゴリに分類される。
- 不完全または誤ったテスト:正しい修正を行っても失敗するテスト、あるいは誤った修正を通過させてしまうテスト
- 曖昧なタスク定義:問題の仕様が不明瞭で、複数の解釈が成立する
- 環境依存の問題:特定の実行環境でのみ再現する不具合
- データ汚染(Contamination):テストデータがモデルの学習データに混入している可能性
なぜこれが問題なのか
ベンチマークのスコアは、モデル選定・研究投資・製品ロードマップの判断材料として使われる。タスクの3割超に欠陥があるとすれば、これまで報告されてきたモデル間のスコア差の一部は、純粋な性能差ではなく「欠陥タスクへの対処のうまさ」を反映していた可能性がある。
特にデータ汚染の問題は根深い。モデルが評価用タスクの正解を学習データ経由で「見たことがある」状態なら、そのスコアは過大評価になる。SWE-Benchの元データはGitHubの公開リポジトリから収集されており、大規模言語モデルの学習コーパスと重複しやすい構造的な問題がある。
OpenAIの対応と業界への影響
OpenAIはこの調査結果を受け、SWE-Bench Proを評価指標として推奨することを撤回した。なお、StartupHub.aiの記事はOpenAIによるこの調査・撤回の経緯を報告したものであり、OpenAI自身が公式発表を通じてSWE-Bench Proの推奨使用を取り下げたと伝えられている。OpenAIは同時に、今回の監査手法(分析パイプライン+複数エージェント+人手レビューの組み合わせ)をベンチマーク品質評価の参照手法として公開している。
AIコーディングベンチマークの信頼性を巡っては、以前からコミュニティ内で懐疑的な声があった。SWE-Benchに限らず、HumanEval(OpenAIが公開したPythonコード生成ベンチマーク)やMBPP(Googleが公開したPython基礎問題ベンチマーク)等の既存ベンチマークにもデータ汚染や問題設計の甘さを指摘する論文が相次いでいる。今回のOpenAIの動きは、その議論に大きな根拠を加える形となった。
ベンチマークはAI研究と産業界をつなぐ共通言語だ。その「物差し」の精度が問われている以上、モデルのスコアをそのまま鵜呑みにすることへの再考が、研究者・開発者の双方に求められている。
詳細はOpenAI Flags Major Flaws in SWE-Bench Proを参照していただきたい。