新智元報(bào)道
編輯:定慧
【新智元導(dǎo)讀】OpenAI在SWE-bench Verified編程測(cè)試中僅完成477道題卻公布74.9%高分,對(duì)比之下,Anthropic的Claude完成全部500題。
幾天前,OpenAI發(fā)布會(huì)上,奧特曼宣布GPT-5登頂了,號(hào)稱代碼能力全球第一。
但發(fā)布會(huì)上搞了一個(gè)大烏龍,52.8>69.1=30.8?
于是,OpenAI那些年薪上億的天才們做的一張表格火遍了全世界(左邊)。
雖然這張表格一開(kāi)始在OpenAI的官博中是準(zhǔn)確的,但是當(dāng)面向全世界直播竟然搞了這么大一個(gè)Bug。
拋開(kāi)烏龍外,更重要的但是被人們忽視的一個(gè)事情是,GPT-5在SWE-bench Verified基準(zhǔn)上取得的74.9%的通過(guò)率。
這個(gè)分?jǐn)?shù)略高于Anthropic的Claude Opus 4.1的74.5%。
這一下子,就讓GPT-5成為當(dāng)前軟件工程任務(wù)基準(zhǔn)上的領(lǐng)先模型。
但等等,這分?jǐn)?shù)…好像有點(diǎn)貓膩啊。
OpenAI并未運(yùn)行SWE-bench Verified的全部500道測(cè)試任務(wù),而是略去了其中無(wú)法運(yùn)行的23個(gè)任務(wù),僅基于477個(gè)任務(wù)計(jì)算得分。
SemiAnalysis專門發(fā)帖提到這個(gè)問(wèn)題。
Anthropic專門在它的博客里也「內(nèi)涵」了這個(gè)問(wèn)題。
SWE-bench Verified總共500道題,GPT-5只做了477道,那23道題,它直接跳過(guò)了!
而對(duì)手Claude呢?老老實(shí)實(shí),500道題一道沒(méi)落。
這下,性質(zhì)全變了。
當(dāng)然OpenAI是承認(rèn)這件事情的。
他們從GPT-4.1開(kāi)始就在「?jìng)渥ⅰ估镎f(shuō)明了:OpenAI的基礎(chǔ)設(shè)施無(wú)法運(yùn)行這23道題目。(好奇啊,什么樣的題目,OpenAI的天才們竟然說(shuō)無(wú)法運(yùn)行)
如果將這23道無(wú)法運(yùn)行的題目按0分計(jì)入,GPT-4.1的得分將從54.6%降至52.1%。
由此推測(cè),GPT-5的74.9%,若也將那23道題視作全錯(cuò),其實(shí)際全500題通過(guò)率約為71.4%(74.9%×477/500,注意這是極度簡(jiǎn)化的計(jì)算)明顯低于Claude Opus 4.1基于500道題取得的74.5%
需要強(qiáng)調(diào)的是,那23個(gè)被略去的任務(wù)并非對(duì)GPT-5「無(wú)關(guān)緊要」。
相反,它們大多是Verified集中最困難的一批問(wèn)題。
據(jù)第三方分析,在Verified數(shù)據(jù)集的「耗時(shí)>4小時(shí)」級(jí)別的任務(wù)中,絕大多數(shù)模型都無(wú)法解決任何一道。
模型在需要超過(guò)1小時(shí)才能完成的「較難」問(wèn)題上表現(xiàn)顯著下降。
只有ClaudeSonnet4(非思考模式)、o3和GPT4.1能夠完成部分超過(guò)4小時(shí)的任務(wù)(各占33%)。
這些極端困難任務(wù)對(duì)模型的綜合能力是嚴(yán)峻考驗(yàn)。
如果GPT-5無(wú)法運(yùn)行這些任務(wù),那么從全面能力上說(shuō),它可能尚未真正超越Claude 4.1。
在Anthropic提供的信息中,Claude 4.1很可能也嘗試了這些任務(wù)(Anthropic并未聲稱其模型跳過(guò)任何Verified任務(wù)),因此其74.5%分?jǐn)?shù)包含了所有難題的考驗(yàn)。
而GPT-5的74.9%則是在剔除了這些「攔路虎」后的結(jié)果。
這種差異引發(fā)的主要爭(zhēng)議點(diǎn)在于:評(píng)測(cè)分?jǐn)?shù)的可比性和報(bào)告方法的透明性。
甚至,就連作為裁判的SWE-bench Verified數(shù)據(jù)集,也是OpenAI自己搞的。
SemiAnalysis認(rèn)為,要想「公平」的對(duì)比模型之間的成績(jī),或許swebench.com上的SWE-bench官方排行榜可能是對(duì)當(dāng)前模型在此基準(zhǔn)測(cè)試中表現(xiàn)的最清晰描述。
沒(méi)有「驗(yàn)證」子集,工具使用受限(僅限bash),大部分腳手架內(nèi)容是開(kāi)放可見(jiàn)的。
在此前提下的基準(zhǔn)測(cè)試中,5月14日的Claude 4 Opus檢查點(diǎn)(67.6)表現(xiàn)是要優(yōu)于GPT-5(65)的。
接下來(lái)的問(wèn)題就是,什么是SWE-bench,什么又是「驗(yàn)證」子集,為啥要額外搞一個(gè)SWE-bench Verified?
SWE-bench:AI界的「程序員高考」
SWE-bench你可以把它想象成AI界的「程序員高考」。
考的,全是真實(shí)世界的代碼難題。
想拿高分?不僅要修復(fù)bug。還不能引入新bug,這標(biāo)準(zhǔn)簡(jiǎn)直不要太嚴(yán)格。
曾幾何時(shí),AI們分?jǐn)?shù)也就二三十分,慘不忍睹。
比如截至2024年8月5日,根據(jù)SWE-bench的排行榜,編碼智能體在SWE-bench上最高得分20%。
在SWE-bench Lite上得分能稍微好點(diǎn),達(dá)到43%。
但是現(xiàn)在的AI厲害了,基本上前十的模型都能超過(guò)50分。
OpenAI覺(jué)得SWE-bench太難了,一些任務(wù)甚至壓根沒(méi)法解決,從而沒(méi)法很好的評(píng)估模型的能力。
簡(jiǎn)單介紹下SWE-bench
SWE-bench測(cè)試集中的每個(gè)樣本均來(lái)自GitHub上12個(gè)開(kāi)源Python存儲(chǔ)庫(kù)中的已解決GitHub問(wèn)題。
每個(gè)樣本都有一個(gè)相關(guān)的拉取請(qǐng)求(PR),其中包含解決方案代碼和單元測(cè)試以驗(yàn)證代碼的正確性。
這些單元測(cè)試在PR中的解決方案代碼添加之前會(huì)失敗,但添加之后會(huì)通過(guò),因此被稱為FAIL_TO_PASS
測(cè)試。
每個(gè)樣本還具有相關(guān)的PASS_TO_PASS
測(cè)試,這些測(cè)試在PR合并前后都會(huì)通過(guò),用于檢查PR是否破壞了代碼庫(kù)中現(xiàn)有且不相關(guān)的功能。
對(duì)于SWE-bench中的每個(gè)樣本,智能體將獲得來(lái)自GitHub issue的原始文本,即問(wèn)題描述,并可以訪問(wèn)代碼庫(kù)。
據(jù)此,智能體必須編輯代碼庫(kù)中的文件以解決問(wèn)題。測(cè)試用例不會(huì)展示給智能體。
模型提出的修改編輯通過(guò)運(yùn)行FAIL_TO_PASS
和PASS_TO_PASS
測(cè)試進(jìn)行評(píng)估。
如果FAIL_TO_PASS
測(cè)試通過(guò),表明該模型解決了問(wèn)題。
如果PASS_TO_PASS
測(cè)試通過(guò),則表明該編輯沒(méi)有意外破壞代碼庫(kù)中不相關(guān)的部分。
只有當(dāng)這兩組測(cè)試全部通過(guò)后,該編輯才能徹底解決原始GitHub問(wèn)題。
這就是上面所說(shuō)的:不僅要修復(fù)bug,還不能引入新bug。
SWE-bench Verified:一個(gè)人工選出來(lái)的子集
SWE-bench Verified是SWE-bench基準(zhǔn)的一個(gè)人類校驗(yàn)子集,于2024年8月由OpenAI與SWE-bench作者合作發(fā)布。
OpenAI與93名精通Python的軟件開(kāi)發(fā)人員合作,手動(dòng)篩選SWE-bench樣本的質(zhì)量。
首先,給SWE-bench測(cè)試集的1699個(gè)隨機(jī)樣本「打分」。
四個(gè)分?jǐn)?shù):
0:?jiǎn)栴}描述清晰,對(duì)于成功解決所需的條件也很明確。
1:關(guān)于這個(gè)問(wèn)題還有一些空白需要填寫(xiě),但對(duì)于成功解決方案所需的內(nèi)容,存在一種合理的解讀方式。
2:該問(wèn)題描述含糊,存在歧義空間,尚不清楚一個(gè)成功的解決方案應(yīng)具備哪些特征。
3:在沒(méi)有更多信息的情況下,幾乎無(wú)法理解你需要做什么。
得分為2和3分的直接拋棄不要,只留0和1分的題目。
雖然這種方法會(huì)導(dǎo)致樣本移除的誤報(bào)率較高,但有助于提高對(duì)最終數(shù)據(jù)集樣本質(zhì)量的信心。
然后從0和1分的題目中再隨機(jī)抽取500道,這就是最終的SWE-bench Verified。
說(shuō)回分?jǐn)?shù),Claude考的是「全科」,OpenAI考的是「精選版」。
這成績(jī),怎么能直接比?數(shù)字背后的故事,更值得玩味。
在發(fā)布會(huì)圖表畫(huà)錯(cuò)的烏龍以外,這個(gè)被「掩蓋」的事實(shí)似乎并沒(méi)有引起太多人的注意。
甚至,我們可以陰謀論的猜測(cè)一下,OpenAI是不是故意而為之,用這個(gè)小小的烏龍,來(lái)掩蓋SWE-Bench的分?jǐn)?shù)?
畢竟,要想隱瞞一個(gè)真相,最好的做法不是否認(rèn)它,而是用一個(gè)更大的「真相」去轉(zhuǎn)移所有人的注意力。
參考資料:
https://x.com/SemiAnalysis_/status/1955028150217478177
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.