跳到正文
IFAI

AI科研

OpenAI 詳述為何停用 SWE-bench Verified:59.4% 錯題有硬傷

首次發布 傳播指數 38

OpenAI 宣佈停用 SWE-bench Verified 評估並推薦 SWE-bench Pro。團隊複核 o3 未解題目,發現 59.4% 存在測試缺陷導致正確程式碼被誤拒;測試還證實前沿模型在訓練中背誦了原題和補丁。OpenAI 認為該基準已無法反映真實程式碼水平。

OpenAI 詳述為何停用 SWE-bench Verified:59.4% 錯題有硬傷
圖:openai.com

AI 圈刷分最狠的基準測試,現在連出題人自己都看不下去了。

OpenAI 宣佈徹底停止在基準測試 SWE-bench Verified 上彙報模型成績,同時勸告業界其他廠商也別再用了。理由很直接:這個被業內奉為程式碼能力金標的測試集,現在不僅題目有大量硬傷,還被各大前沿模型背得一清二楚,刷再高分也看不出真實水平了。

SWE-bench Verified 是 OpenAI 在 2024 年 8 月牽頭推出的,挑選了 500 道開源 Python 倉庫裡的真實 issue。但過去 6 個月裡,業內模型的最好成績從 74.9% 艱難爬到 80.9%,增長明顯慢了下來。OpenAI 回頭一查才發現,模型解不出來往往不是腦子不夠用,而是題目本身出了大問題。

題目挑刺,正確答案照樣掛

OpenAI 抽查了自家旗艦推理模型 o3 在 64 次獨立執行中沒能穩定解出的 138 道題,這部分佔了整個資料集的 27.6%。由多名資深工程師交叉稽核後發現,其中居然有 59.4% 的題目本身存在嚴重缺陷。

最典型的一種情況是測試用例太狹隘,佔了被查題目的 35.5%。比如 pylint 的一道題,原倉庫的提交人在修復時順手封裝了一個叫 get_annotation 的新函式,測試指令碼就直接 import 這個函式名。題目要求里根本沒提這個名字,模型哪怕寫出了完全正確的修復邏輯,也會因為沒用這個特定函式名而直接判錯。

另一種情況是測試用例太寬,佔了 18.8%。比如 sympy 倉庫裡的一個任務,當時人類開發者在一個 PR 裡同時修了 3 個問題,但測試題目的描述只寫了其中一個。結果就是,模型嚴格按題目描述修好之後,跑測試卻掛在另外兩個它完全不知情的問題上。

連註釋都背下來了,根本不是在寫程式碼

除了題目有硬傷,另一個更致命的問題是汙染太嚴重。這個測試集裡的問題全都來自知名開源專案,而前沿大模型做預訓練時早就把這些倉庫掃了個底朝天。

OpenAI 用 GPT-5 作為探針,去測試 GPT-5.2、Claude Opus 4.5 和 Gemini 3 Flash Preview。結果發現,所有受測模型都在作弊,它們甚至能一字不差地默寫出原作者當年提交的程式碼補丁。

Claude Opus 4.5 不僅能精準復現 4 行修改細節,連補丁里的行內註釋都一字不落背了出來。Gemini 3 Flash 只要看到題目編號,就能直接背出對應的正規表示式和程式碼。GPT-5.2 在解一道極其苛刻的 Django 題目時,思考鏈裡甚至直接搬出了 Django 4.1 版本的發行說明。

換句話說,現在的 SWE-bench Verified 已經測不出模型的推理或程式碼編寫能力,分數漲跌比的純粹是誰在訓練時把題庫背得更熟。在新的無汙染評估體系做出來之前,OpenAI 建議大家轉向測試集 SWE-bench Pro。

為什麼重要

對日常寫程式碼的開發者來說,這份報告算是一記及時的清醒劑。很多團隊在選型時喜歡盯著釋出會 PPT 上的 SWE-bench 榜單看,但事實證明,那些 80% 的高分背後充斥著背題水分,完全無法代表模型在你傢俬有程式碼庫裡的實戰表現。

對整個行業而言,基準測試的失效正在成為模型迭代的最大路障。公開基準一旦淪陷,模型廠商就很容易陷入為了刷榜而喂資料的虛假繁榮,真正需要攻克的多步推理和長流程軟體工程能力反而被掩蓋了。

我們認為 OpenAI 這次主動掀桌子的做法非常聰明。既然老測試已經見底且充滿噪音,率先公開承認它的失效,既能戳破競爭對手拿微調刷分的幻覺,又把自己放在了行業規則重構者的位置上。接下來的看點,就看其他大模型廠商願不願意跟進放棄,以及大家能否在 SWE-bench Pro 甚至私有評估集上拿出真本事了。

來源 (1)

  1. [1]
    openai.com(在新分頁開啟)原文openai.com

每日 AI 內容精選