模型层 开放阅读

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 节结构 公司投研页 沿产业链找到受益公司 投资课 把概念转成可跟踪模型