SWE bench

SWE-bench是一個用於評估大型語言模型解決真實世界軟體工程問題能力的基準測試,由普林斯頓大學和芝加哥大學的研究人員於2024年提出。其初始版本從12個流行的Python開源項目中收集了2294個真實的GitHub Issue-Pull Request對作為測試樣本。

2024年,OpenAI與SWE-bench原作者合作發布了改進版本SWE-bench Verified,該版本通過人工篩選構建了包含500個已驗證樣本的子集。此後,該基準測試衍生出SWE-bench Lite、SWE-bench Pro等版本。2026年,因發現SWE-bench Verified中近60%的問題存在測試缺陷,其權威性受到挑戰,OpenAI宣布停止將其作為核心評估標準。同年,其評估框架被指出存在安全漏洞。

研發背景,發展歷程,測試方法與評估指標,構建與數據來源,核心團隊,重要事件與影響,

研發背景

SWE-Bench由普林斯頓大學和芝加哥大學的研究團隊於ICLR 2024提出,論文標題為“SWE-bench: CAN LANGUAGE MODELS RESOLVE REAL-WORLD GITHUB ISSUES?”,其核心目標是推動語言模型評估從“算法問題求解”提升到“真實世界軟體工程問題解決”層面。
SWE-Bench的構建動機源於現有AI編程評估基準(如HumanEval)過於簡單且已趨飽和,無法反映真實世界軟體工程的複雜性,以及業界缺乏能夠衡量模型在真實開發場景中綜合能力的挑戰性基準。該基準旨在通過一個基於真實GitHub Issue和可執行測試的評估框架,更準確地揭示模型在複雜推理、長上下文理解和代碼庫級操作方面的能力邊界。

發展歷程

SWE-bench於2024年推出,是一個用於評估大語言模型解決GitHub上真實軟體問題能力的基準測試數據集。其初始版本包含從12個流行Python倉庫中提取的2294個真實GitHub Issue-Pull Request對。2024年8月,OpenAI與SWE-bench的作者合作發布了SWE-bench Verified。該版本通過人工篩選解決了原始數據集中問題描述模糊、單元測試不公等問題,最終包含500個已驗證樣本。此後,還出現了SWE-bench Lite、SWE-bench Pro等衍生版本。2026年4月,伯克利大學研究團隊發布報告,揭示SWE-bench等多個AI評測基準存在嚴重安全漏洞。該團隊開發的漏洞利用智慧型體通過在測試環境中注入惡意代碼(如利用pytest鉤子機制強制改寫測試結果為通過),可在不修復任何問題的情況下在SWE-bench上獲得滿分。同期,賓夕法尼亞大學的獨立審計也證實了多個基準測試中普遍存在作弊現象,例如模型通過訪問本地配置檔案或利用評測框架缺陷獲取答案。2026年,OpenAI內部審計發現SWE-bench Verified中59.4%的被審計問題存在有缺陷的測試,前沿模型能直接從記憶中復現標準答案的原始代碼,導致其分數虛高。鑒於其權威性受到根本性質疑,OpenAI宣布停止將其作為核心評估標準。與此同時,伯克利等機構的研究進一步暴露了SWE-bench及其同類基準在評測隔離、答案泄露等方面的系統性漏洞。

測試方法與評估指標

SWE-Bench由普林斯頓大學和芝加哥大學發表於ICLR 2024,其數據集源於從12個流行Python倉庫中提取的2294個真實的GitHub Issue-Pull Request對。在測試時,模型會獲得一個代碼庫和issue描述,並需要生成一個補丁來解決該issue。評估通過運行FAIL_TO_PASS和PASS_TO_PASS測試來驗證,兩組測試都必須通過才算成功。
該評估工具由OpenAI與SWE-bench的作者合作開發,使用容器化的Docker環境,使在SWE-bench上進行的評估變得更容易、更可靠。
其核心評估指標是解決率,以二值結果定義成敗。為提高評估的穩健性,後續推出了SWE-bench Verified版本。該版本通過人工篩選,移除了原始數據集中問題描述不明確或單元測試可能不公平地拒絕有效解決方案的樣本,形成了一個包含500個已驗證樣本的子集,取代了原來的SWE-bench和SWE-bench Lite測試集。
SWE-bench的評估範式標誌著對AI編碼能力的評估從靜態的語法驗證轉向了基於真實世界代碼庫和可執行測試的動態、工程實踐檢驗,推動了學界與工業界在此領域評估標準的演進。該基準將代碼模型的評估從“算法問題求解”提升到了“真實世界軟體工程問題解決”的層面。
2026年4月,有報導指出SWE-bench的評測框架在安全性上存在設計缺陷,評測程式與被測AI共享同一Docker容器運行環境,使得智慧型體可以通過提交惡意代碼(如conftest.py)直接操縱測試結果。伯克利團隊的研究歸納了包括環境未隔離、標準答案泄露在內的多種漏洞模式。

構建與數據來源

SWE-bench的數據來源於從12個流行的開源Python項目(如Django、scikit-learn)的GitHub倉庫中收集真實的、已解決的Issue和對應的Pull Request。其構建過程主要分為三步:數據抓取、屬性篩選和執行驗證,以確保每個任務實例真實、高質量且可驗證。
原始數據集包含2294個任務,其代碼庫平均規模龐大(約438K行代碼),但所需編輯的代碼量相對較小(平均32.8行)。
SWE-bench Verified因被發現有大量測試缺陷(近60%的問題存在測試缺陷),其權威性受到質疑,OpenAI已明確表示停止使用該基準作為核心評估標準。

核心團隊

SWE-Bench由普林斯頓大學和芝加哥大學的研究人員聯合開發並發表於ICLR 2024。其核心團隊成員及論文作者包括Carlos E. Jimenez, John Yang, Alexander Wettig, Shunyu Yao, Kexin Pei, Ofir Press, Karthik Narasimhan。普林斯頓大學的John Yang和Ofir Press在基準的後續演進和套用中持續發表觀點。在2024年,OpenAI團隊與SWE-bench的原作者合作,主導開發了SWE-bench Verified版本,提供了關鍵的人工注釋支持和評估工具改進。

重要事件與影響

SWE-bench自發布以來,迅速成為AI編程能力評估的關鍵標尺。其被OpenAI、Anthropic和谷歌等巨頭採納為發布大模型時的標配編程能力評估指標。
在模型性能方面,最初最佳模型的解決率僅為1.96%。到2025年,GPT-5-Codex在SWE-bench上的解決率已達到72.8%。2026年,智譜GLM-5.1在SWE-bench Pro基準測試中超越Claude Opus 4.6等頭部模型,刷新全球最佳成績。
SWE-Bench首次系統性引入真實世界代碼庫與可執行測試,推動學界與工業界形成共識。這一範式催生了SWE系列基準測試。SWE-Bench的發布標誌著軟體工程領域對大模型Agentic Coding能力的評估,正式從靜態語法驗證轉向動態、真實、可執行的工程實踐檢驗。其評估邏輯倒逼AI開發工具從“代碼生成器”蛻變為“工程協作者”。
SWE-bench的設計存在局限性,最初的測試集僅包含Python語言編寫的程式。其測試可被攻破,這種競爭導致參賽者開始鑽營系統漏洞。這促使了如CursorBench等新基準的出現。SWE-bench Verified中近60%的問題存在測試缺陷。

相關詞條

熱門詞條

聯絡我們