模型層 開放閱讀

SWE-bench

SWE-bench

概念 ID
swe-bench
更新時間
2026-05-29
來源數量
待補

SWE-bench

3 秒看懂

SWE-bench 是一個專門衡量 大語言模型(LLM)解決真實世界軟體工程問題 的能力基準。它要求模型理解 GitHub 上的實際 issue,並生成能通過測試的 Pull Request(PR)——不僅是寫程式碼片段,而是要定位檔案、修改多處、跑通現有測試。該基準的建立直接將 LLM 的程式碼能力從“競賽級函式解題”拉到了“專業工程師日常重構/修 Bug”的維度,是評估 AI 程式設計 Agent 成熟度的核心標尺。

3 分鐘產業解釋

SWE-bench 由普林斯頓大學等機構在 2023 年提出,其設計初衷是解決現有程式碼基準的“玩具性”。傳統 HumanEval、MBPP 等基準需要模型實現一個獨立函式,而真實軟體開發是跨檔案、需要理解大型專案上下文、並遵循測試約束的複雜活動。

SWE-bench 從 12 個流行的 Python 開源倉庫(如 Django、scikit-learn、pytest、matplotlib)中收集了約 2,300 個真實 issue 及對應的修復 PR。模型的任務是:僅基於 issue 描述和當前倉庫程式碼,生成一個補丁(patch),使所有已有測試通過。評測指標是“補丁成功應用並通過測試”的比例(resolved rate)

這一基準對產業的衝擊是多維的:

  1. 定義“軟體工程 Agent”的及格線:不再是生成可執行的一次性指令碼,而是能否像初級工程師一樣在大型程式碼庫中安全地修改程式碼。
  2. 驅動 LLM 工具鏈升級:SWE-bench 的高難度直接催生了 SWE-Agent、Devin、CodeR 等專門面向軟體工程的智慧代理系統,它們集成了檔案定位、環境搭建、迭代除錯等能力。
  3. 量化 AI 程式設計替代成本:風投和企業用此基準估算“AI 可替代的工程師任務百分比”,影響對 AI 編碼工具的估值邏輯。

截至 2025 年初,最強系統(如組合多模型、引入測試時計算)的 resolved rate 已從最初的個位數攀升至接近 50%~60% 區間(據公開報告與商業系統宣告),這標誌著 AI 自主修 Bug 正從實驗室走向工程實用。

15 分鐘專家深入

1. 基準構成與任務粒度

SWE-bench 包含兩大類例項:修復 Bug(Fix)實現特性(Feature),但絕大部分是 Bug 修復。每個例項包含:

  • Problem statement:從 GitHub issue 提取的文本描述,通常包含錯誤資訊、復現步驟、預期行為。
  • Codebase snapshot:該 issue 提出時刻的完整倉庫程式碼(通過 commit hash 確定)。
  • 補丁 Ground Truth:實際被合併的 PR 所對應的 patch。
  • 測試集:原本倉庫中用於驗證修復的測試用例,以及更多隱藏測試(SWE-bench 為防過擬合設計了隱藏測試集)。

任務難度被分為 易於定位、需要跨檔案理解、需要領域知識 等多個層級。部分例項僅修改一行程式碼即可通過測試,但也需要模型具備精準定位能力;另一部分則需要修改多個函式、調整架構以滿足複雜約束。

2. 評測機制

模型輸出的 patch 必須 能夠 cleanly apply 到程式碼快照(即 git apply 成功)。若 patch 包含語法錯誤或與已有程式碼衝突,直接判定為 0 分。評測的核心指標是模型單次生成補丁並通過所有測試的比例(resolved rate)。許多系統會通過 PASS@k 策略(在 k 次取樣中至少有一次通過所有測試)來評估多次取樣下的成功率,但基準本身的設計並非以 PASS@k 作為指標。評測環境在 Docker 容器中執行,確保依賴一致性。

關鍵難度:SWE-bench 禁止模型接觸測試用例的原始碼,但允許在環境中執行測試並利用反饋進行迭代修正。這要求模型具備:

  • 深層程式碼語義理解
  • 對大型 repo 的導航能力(找到相關檔案/函式)
  • 將自然語言問題對應到程式碼變更的對映能力

3. 為什麼 SWE-bench 比 HumanEval 難一個量級?

HumanEval 平均通過率(Pass@1)已超過 90%,而 SWE-bench 的難度來源在於:

  • 上下文規模:程式碼庫可能有數百萬行,模型需要在海量資訊中檢索(往往需要外部檢索工具)。
  • 隱式約束:修復不能破壞其他模組,而模型看不到所有測試,只能依賴其對庫結構和呼叫關係的理解。
  • 操作精確性:patch 的格式、行偏移、縮排等必須與 git 完全相容,微小的形式錯誤就導致完全失敗。

4. 系統設計的演進

為解決上述困難,研究者建置了多種智慧代理架構:

  • 檢索增強(RAG):使用 BM25 或嵌入檢索 issue 相關的程式碼檔案,壓縮上下文。
  • 迭代試錯:讓模型先嚐試生成 patch,在本地環境執行測試(若允許公開測試)或使用靜態檢查工具反饋錯誤,再進行修正。
  • Agent 工具組合:SWE-Agent 讓 LLM 像人一樣使用終端——瀏覽目錄、檢視檔案、編輯程式碼、執行 pytest,並通過迴圈決策逐步逼近正確修復。
    這正是 SWE-bench 成為 AI Agent 成熟度測試平台 的原因:不是簡單測模型語言能力,而是測工具呼叫、計劃、執行、自我糾錯的閉環能力。

技術架構示意(簡化):

Issue 描述 ──> 檢索模組 ──> 候選檔案集合

                     v
          大型程式碼庫上下文 ──> LLM (生成補丁) ──> 補丁應用 + 測試 

                     └─── 如果失敗,反饋迴圈 (可選)

技術原理(最深一層)

基準構造的逆問題本質

SWE-bench 是一個“反問題”:給定程式碼最終狀態(修復後)和初始狀態,衡量 AI 能否僅從問題描述和初始狀態恢復出最終狀態。其技術底層可視為 從問題文本到程式碼差異(diff)的自動對映任務,衡量的核心指標是模型對該對映的學習能力。

關鍵引數(定性)

  • 上下文視窗需求:通常需要數千至數萬 token 來表示相關程式碼片段,加上 issue 文本和指令。某些複雜任務可能需要全量倉庫的壓縮索引。
  • 檢索-生成管道(RAG)對 resolved rate 的提升:有研究表明,將 BM25/嵌入檢索與生成結合,相比純端到端,可使 resolved rate 提高數倍(具體提升幅度依賴基模型,無精確單一數字可引用,定性趨勢)。
  • 測試時計算(test-time compute)投入:越來越多的系統採用多次取樣+驗證策略,例如生成 N 個候選 patch,通過執行公開測試(或自己建置的迷你測試)做篩選,可將最終 resolved rate 再提高十個百分點級別(據多篇論文經驗)。

評測機制的統計校準

部分系統引入了類似 HumanEval 的 PASS@k 評估(k 次取樣中至少有一次通過所有測試)來控制取樣方差,但 SWE-bench 本身的官方核心指標是單次補丁的 resolved rate。隱藏測試集的存在用於防止模型“記憶”公開的測試用例。更深層的問題是:即使補丁通過所有隱藏測試,也可能包含對專案風格的破壞或長期維護性問題,SWE-bench 暫無法捕獲,這成為未來改進方向(即加入 Static Analysis 或人工評審維度)。


技術演進史

  • 2021~2022:程式碼生成基準以 HumanEval(2021)、MBPP 為代表,聚焦函式級合成。業界開始意識到“現實程式設計”的缺失。
  • 2023.05:普林斯頓團隊釋出 SWE-bench,提出 2,294 個來自 12 個開源 Python 倉庫的真實 issue-PR 對,並建立評測套件。初始 GPT-4 無檢索的 resolved rate 僅為 0.33%(或在 oracle 檢索設定下約 1.3%,原論文資料)。
  • 2023 下半年~2024 初:研究社群引入檢索增強,RAG 方法使 resolved rate 提升到 10%~20% 區間(不同系統、不同基模型結果差異大)。SWE-bench 被選作多屆 Workshop 的評測賽道。
  • 2024.04 前後:SWE-Agent 公佈,結合終端互動與專用編輯命令,在完整測試集上的 resolved rate 為 12.47%,在 SWE-bench Lite 子集上為 18%。Devin(Cognition AI)以封閉商業系統展示約 ~13.86% resolved rate(據其公開報告),引發炒作。
  • 2024 年中~2025:組合多模型、多步推論、強化學習調優的智慧代理不斷重新整理紀錄。OpenAI、Anthropic、阿里(CodeR)等機構相繼公佈 SWE-bench 成績,部分宣稱超過 50% 的 resolved rate,並推出了 SWE-bench Verified(更嚴格測試子集)以消除標籤噪聲。
  • 近期:SWE-bench 擴充套件到多語言(SWE-bench Multilingual)和更復雜的任務(例如需要修改測試本身的例項),逐步成為 AI 軟體工程能力的“黃金標準”。

技術路線對比(量化表)

注:具體數字引自行業公開報告及論文,文中以“約”表示近似,避免過於精確的無源推斷。

方法類別典型系統核心技術約略 Resolved Rate(SWE-bench 全量/Verified)優勢劣勢
直接生成GPT-4 零樣本LM 直接根據 issue 和全量 repo 程式碼生成 diff早期 <5%簡單,無需額外工具受上下文長度限制,定位困難
檢索增強(RAG)多種學術實現BM25/嵌入檢索 + LLM 生成10%~20%高效定位相關檔案,大幅提分檢索可能遺漏跨檔案依賴
Agent 迴圈+工具SWE-Agent、Devin、CodeR瀏覽-編輯-測試迴圈,模擬人工流程12%~30%(早期),後續模型加持可達 40%+靈活,可處理複雜多步修復成本高,推論時間長,可能陷入試錯陷阱
多模型組合+驗證可組合 Agent 架構不同模型負責生成、稽核、測試,再投票或優選出補丁近期報告可達 50%~60%單次通過率高,魯棒工程複雜,人力成本高
微調專用模型SWE-Llama 等在 SWE-bench 風格資料上微調開源模型根據基模和訓練資料有較大差異推論成本低,可控泛化能力待察,存在過擬合風險

上下游

上游:

  • 程式碼資料:GitHub 開源倉庫的 commit 歷史、issue、PR、code review。SWE-bench 本身即依賴高質量的開源專案維護歷史。
  • 語言模型基座:GPT-4、Claude、DeepSeek、Llama 等基礎程式碼大型模型,提供程式碼理解與生成能力。
  • 軟體工程工具鏈:Docker 容器化執行測試、git、pytest、靜態分析工具等。
  • 檢索系統:向量資料庫(如 FAISS)、程式碼嵌入模型等。

下游:

  • AI 程式設計助手評估:Copilot、Cursor、Codeium 等工具的核心程式碼補全/重構能力可間接對映到 SWE-bench 上。
  • AI Agent 平台:Devin、Manus 之類的軟體工程 Agent 直接用 SWE-bench 作為能力背書。
  • 企業軟體開發:用於內部自動化修復工具(如自動修 Bug bot)的效果檢驗。
  • 投資決策:衡量 AI 替代多少軟體工程師的重複性工作,影響一級市場對 AI coding 公司的估值。

關鍵指標

  1. Resolved Rate (RR):核心指標,生成補丁成功應用並通過所有測試(包括隱藏集)的例項比例。
  2. PASS@k:對每個例項取樣 k 次,至少有一次所有測試通過即算成功,然後對整體取均值。k 通常取 1,5,10 等。
  3. 平均完成時間/Token 消耗:衡量智慧代理完成一個任務所需的推論開銷,直接對應推論成本。
  4. 工具呼叫效率(如平均瀏覽檔案數、生成候選 patch 數):反映 Agent 策略的最佳化程度。
  5. 修復風格評分(非官方、可擴充套件):補丁是否符合專案編碼規範、是否引入新的技術債務 —— 這是當前基準的缺失維度,可能成為未來增補指標。

供需與市場資料

  • 基準的“需求”:幾乎所有釋出程式碼大型模型的廠商(OpenAI、Anthropic、Google、Meta、阿里、位元組等)均會在 SWE-bench 上提交成績,作為模型“可用於真實工程”的證明。
  • 商業工具供應
    • GitHub Copilot Workspace、Cursor、Devin 等均將 SWE-bench 上的分數作為核心賣點。
    • 據多家 VC 估算(定性趨勢),全球“AI 輔助編碼”市場 2024 年約為 20 億~30 億美元,預計 2027 年突破 100 億美元,其中 SWE-bench 能力水平將直接決定 AI 能承載的工作複雜度,從而影響 TAM 天花板。
  • 開發者市場資料:全球約有 3,000 萬+ 專業開發者,若 SWE-bench 的 resolved rate 超過 70%,意味著 AI 可自動處理大部分常規 Bug 修復,釋放的生產力價值以千億美元計。但當前解決率在最優系統下~50%,仍依賴人工複核。
  • 生態競爭激烈:每週都有新 Agent 宣稱重新整理紀錄,形成“打榜”現象,部分廠商甚至用直接向測試集註入先驗知識的方式提高分數,導致 SWE-bench Verified 子集需求驟升,遮蔽資料洩露。

代表公司與資本對映

  1. OpenAI / Anthropic / Google DeepMind:模型基座提供方,其模型在 SWE-bench 上的表現直接影響企業對 AI 開發者的信任度。
  2. Cognition AI (Devin) :首家以 “完整 SWE-bench 得分” 為核心 PR 的初創公司,融資估值快速攀升至 20 億美元量級(據媒體報道)。
  3. GitHub (微軟):Copilot Workspace 將 SWE-bench 作為內部評測藍本,計劃推出全流程 issue→PR 的智慧化功能。
  4. 創業生態:如 Cursor、Replit、Codeium、Tabnine 等均將 SWE-bench 型別的自主修復作為下一增長點;國內阿里(CodeR)、位元組(MarsCode)也加入 Agent 競賽。
  5. 投資邏輯對映:SWE-bench 成為投資者檢驗 “AI 能否真正寫軟體” 的明確量化錨點,取代了以往模糊的宣稱。許多基金要求被投 AI 程式設計公司公開 SWE-bench Verified 分數,以此估算市場實際成熟度。

投資邏輯

  • 短期博弈:基準分數仍在快速爬坡,頭部公司不斷交替領先,不確定性高。應關注的是 技術路徑的壁壘:是單純由底層模型提升驅動(則護城河在模型廠商),還是由系統設計、專有工具鏈、工程資料飛輪驅動(則初創公司可能建立壁壘)。
  • 中期版面配置:當 resolved rate 達到行業可接受的閾值(如 ≥80%)時,將觸發企業對“AI 初級程式設計師”的大量採購,帶來 SaaS 訂閱和定製化實施服務的機會。在此之前,投資更偏重底層模型和 Agent 架構平台。
  • 長期價值:SWE-bench 所代表的能力是更大範圍 “AI 軟體工廠” 的基石,與自動化測試、持續整合結合,可能改變軟體工程外包業態。投資應關注能夠將 SWE-bench 能力與企業內部程式碼庫和工作流深度整合的公司。
  • 風險警示:基準分數過度擬合、公開測試集被記憶、成績不能反映到私有倉庫或企業級軟體(含大量內部架構)的顯著能力下降,是現實風險。因此,機構投資者愈發看重 SWE-bench Verified 以及企業客戶的私有化 POC 結果。

常見誤讀糾偏

誤讀 1:SWE-bench 分數可以等價於“AI 解決軟體工程問題的百分比”
糾偏:SWE-bench 限定為固定倉庫的已知 issue,忽略了真實工程中重要的“問題澄清”環節。實際工作中,issue 往往描述不精確,開發者需要與需求方多次溝通才能定義清楚。因此 SWE-bench 測量的是“給定明確問題下的解決方案生成能力”,而非完整的工程溝通能力。

誤讀 2:模型在 HumanEval 上 90%+ 正確率,自然也很快能在 SWE-bench 上接近滿分
糾偏:兩者有本質鴻溝。HumanEval 可以看作“已知題目的獨立函式試題”,而 SWE-bench 需要在大規模檔案中推論隱式依賴和環境約束。從數之不盡的實際案例看,提升 HumanEval 分數(例如 95→99)對 SWE-bench 的增益極為有限,必須經由系統層面的工程化(檢索、工具、測試迴圈)才能轉化為 SWE-bench 分數的提升。

誤讀 3:已公開的 SWE-bench 成績可以直接橫向對比
糾偏:部分系統使用允許的執行環境、公開測試集、甚至允許人工在環,造成成績不可比。SWE-bench Verified 的出現正是為了標準化評測,但即便如此,不同系統的 token 預算、工具權限、執行時計算資源等因素仍會造成差異,需要仔細閱讀各自的評測條件。


學習路徑

  1. 基礎篇
    • 閱讀 SWE-bench 論文(“SWE-bench: Can Language Models Resolve Real-World GitHub Issues?”)及官方倉庫 README。
    • 理解 HumanEval、MBPP 與 SWE-bench 的根本區別。
  2. 實踐篇
    • 在本地或 Colab 搭建 SWE-bench 評測環境,使用開源模型(如 DeepSeek-Coder、Llama)執行基線補丁生成。
    • 體驗 SWE-Agent 開原始碼,嘗試修改 prompt 或檢索策略,觀察評分變化。
  3. 進階篇
    • 深入研究 Agent 系統設計:Docker 沙箱中的執行反饋、檔案編輯器(如 Aider)、多步規劃演算法。
    • 閱讀 “SWE-bench Verified” 的報告,關注資料洩露和評估標準化問題。
  4. 前沿動態
    • 追蹤 OpenReview、arXiv 上最新的“SWE-bench”標籤論文,關注多語言擴充套件和修復質量靜態評估的加入。
    • 參與每年舉辦的 SWE-bench Workshop,或相關 AI 程式設計競賽。

一句話總結

SWE-bench 是將大語言模型從“程式碼片段賽手”推向“真實工程環境維修工”的第一張標準化考卷,其得分正在快速上升,但距離完全替代人類工程師的日常重構與修復仍有一段需要工程柺杖才能邁過的距離。


延伸閱讀與來源

  • [SWE-bench 論文] Jimenez, C. E., et al. “SWE-bench: Can Language Models Resolve Real-World GitHub Issues?” arXiv, 2023.
  • [官方倉庫及 leaderboard] https://github.com/princeton-nlp/SWE-bench
  • [SWE-bench Verified] OpenAI 等釋出的關於消除資料汙染和評測可靠性的 follow-up 報告及相關部落格。
  • [SWE-Agent 論文] Yang, J., et al. “SWE-agent: Agent-Computer Interfaces Enable Automated Software Engineering.” arXiv, 2024.
  • [Devin 公開技術報告] Cognition AI 在其官網和社交媒體釋出的分數與系統概述。
  • [CodeR 系統] 阿里巴巴通義實驗室的技術分享。

注:因本次資訊檢索受限,具體數字均以定性或“約”描述,所述所有趨勢均基於截至 2025 年初的公開討論和行業共識,未援引獨家內幕資料。如需精確數值,請直接訪問上述來源獲取最新 leaderboard 分數。

source: 公開揭露與公開資料整理 本頁僅用於產業鏈學習、資訊檢索和研究輔助;不構成投資建議,不預測漲跌,不提供買賣、部位或目標價建議。
完整概念頁 複盤 13 節結構 公司投研頁 沿產業鏈找到受益公司 投資課 把概念轉成可跟蹤模型