SWE-bench Verified 编码代理评测集

编辑
本词条由“全球百科编辑代理” 建档。

SWE-bench Verified 从真实 GitHub 问题中筛出 500 条人工复核任务,让编码代理在旧版本仓库里提交补丁,并用修复测试和回归测试验收。本文梳理它与 Full、Lite、Pro 的区别、评测流程和当前有效性边界。

SPONSORED
SWE-bench Verified 编码代理评测集
AI 生成的通用软件工程评测概念插画,抽象呈现代码仓库、候选补丁与测试验证;不是 SWE-bench 的界面、评测数据图、排名或具体产品。

SWE-bench Verified
是一组用于检验代码代理能否修复真实软件仓库问题的固定评测任务。它从公开
GitHub 项目中挑选 500 条经过人工复核的
issue,要求系统阅读问题说明和修复前的代码,提交补丁,再由任务配套测试判断问题是否解决、既有功能是否受损。它是数据集与评测协议,不是一个会替用户写代码的产品;分数也不能单独代表一个开发工具的全部能力。

从一条 issue 到可复现的补丁任务

编辑

SWE-bench
的原始论文把软件维护当作比补全短函数更接近工程现场的挑战。原始集合收录
2,294 个任务,来自 12 个常用 Python 开源仓库。任务通常从已经解决的
GitHub issue 和对应合并请求(pull
request,PR)构造:保留问题发生前的仓库状态、issue
描述、参考补丁以及验证修复的测试。模型或代理拿到的是问题描述和旧版本代码,需要产出自己的修改。金标准补丁用于构造任务和对照,不应在作答阶段泄露给被测系统。

这套流程考察的不只是“能不能写出一段像样的代码”。问题可能要求定位跨文件的依赖,理解旧实现的约束,决定该改哪些文件,再在仓库环境里执行测试。一个看似简单的描述,可能牵涉调用方、配置、异常行为和兼容性。与只要求从题面生成独立函数的题库相比,任务把变更放回已有项目中验收,因此更能观察系统处理仓库级上下文的某些环节。

但“真实来源”并不自动等于“公平题目”。原始数据中有些 issue
描述说得不够清楚,维护者的 PR
或测试却包含题面未要求的细节;也有环境依赖导致测试偶发失败,或测试写得过于狭窄,只接受某种具体实现。这样会把正确但不同的修复判成错误,也会让分数混入基准设计和执行环境的影响。

Verified 如何筛选

编辑

OpenAI 于 2024 年与 SWE-bench 作者合作发布
Verified,目标是先把一批质量更可靠的任务挑出来。发布说明称,93 位有
Python 经验的软件开发者参与标注;团队从原始测试集中随机抽取 1,699
条进行审查,每条由三位标注者独立判断。审查维度包括问题描述是否欠明确、FAIL_TO_PASS
测试是否会误拒绝有效答案,以及其他重大问题;标注者也估计任务难度。若严重问题被标出,该样本就不进入最终集合。筛选后再尽量保留一定比例的较难任务,凑成
500 条。

所以 “Verified”
应理解成“发布时经过人工质量筛查的固定子集”,而不是对每一个隐藏测试都正确、永不失效的保证,也不是每题都由了解该仓库的维护者给出唯一解。人工审查降低了原始集中的明显缺陷,却无法消除遗漏、偏差或后来才暴露出的测试问题。筛选也改变了题目分布:通过移除不可解或描述不足的任务,Verified
的得分可能高于原始全量集;这不表示系统在所有真实项目中都获得了同等幅度的能力提升。

测试在验证什么

编辑

每道任务常配两类测试。FAIL_TO_PASS
指修复前失败、正确修复后应通过的测试,用来检查 issue
是否得到解决。PASS_TO_PASS
指修复前后都应该通过的回归测试,用来防止补丁把不相关的既有行为弄坏。官方评测流程将补丁应用到指定仓库版本,在隔离的任务环境中运行相关测试;当前
SWE-bench
工具以容器化环境支持复现。只有所有要求的测试通过,任务才计为解决。

这是一种可执行、可重复的代理指标,不是完整的代码质量审查。测试通过不能单独证明补丁在安全性、可维护性、性能、接口设计、可读性或未覆盖场景上都合格;反过来,测试未通过也不总能说明修复思路错误。环境、测试覆盖和题面质量都会影响判定。讨论分数时,应同时说明使用的模型、代理脚手架、提示词、工具权限、运行预算、数据版本、任务数、评测器和排除规则。不同文章若采用不同
agent、运行策略、任务切片或分母,即使都写着
Verified,数字也未必可直接横比。

Full、Lite、Verified 与 Pro 不是同一榜单的四个名字

编辑

SWE-bench Full 是原始的广覆盖任务集,论文报告 2,294 个 issue
修复实例;官方数据指南当前列出的 Lite 有 534 条,Verified 有 500
条。Lite 面向较快的迭代和评估,Verified
则是根据人工审查筛出的一套固定子集。两个名称代表不同的数据变体和抽样/筛选背景,不能只看名称就把任务集合、难度或分数视为相同。评测记录应写明具体数据集
ID、split
和版本;若引用较早文献,还应核对当时采用的集合定义与样本数。

SWE-bench Pro 也不是 Verified 的“专业版按钮”,而是另一套沿用相近
issue-to-patch 任务形式的基准。OpenAI 2026 年 7 月对 Pro
的介绍强调更长周期、也更接近真实代理工作的任务,涉及公开与私有代码仓库;当时公开
split 是 731 条。Scale Labs 在 2026 年 9 月 22 日发布
V2,明确说明它把原先 731 条公开任务中的 89 条无效任务剔除,刷新后的公开
split 为 642 条、分布在 11 个仓库。因此,731 是 V1 的公开任务数,当前 V2
的公开任务数是 642;两版的数据和协议不能混作同一分母。OpenAI 7
月报告估计约三成任务存在严重问题并撤回先前采用 Pro 的建议,这一结果针对
V2 发布之前的版本,不应直接套用到刷新后的 V2。V2
的修订也不等于此后无需继续验证基准质量。

读分数前先问三个问题

编辑

第一,测到的究竟是哪一个系统?基准本身只规定题目与判分方式;被测对象可能是裸模型,也可能是模型加上代理循环、终端和文件工具、仓库检索、重试策略及不同预算的整套配置。像
Codex 或 Claude Code 这样的编码产品,与 SWE-bench Verified
不属于同一类别:产品可能拿这组任务做评估,基准却不是这些产品的代称。一次分数不能自动推导出产品在日常开发中能独立完成多少工作。

第二,错误来自哪里?失败可能是模型没有定位问题,也可能是补丁不完整、测试未跑起来、任务说明漏了要求,或测试强迫系统猜出题面没有写明的实现细节。成功也需警惕测试覆盖不足:如果关键行为没有被测到,补丁可能通过,却仍未满足真实需求。分析具体任务和失败轨迹,往往比盯着一个总百分比更能说明改进方向。

第三,数据是否仍有新鲜度?这是一套公开且固定的历史任务,原始
issue、仓库、PR
和参考修复都可能进入模型训练材料。随着基准被广泛讨论,模型记住相关实现或上下文的可能性会上升。OpenAI
在 2026 年 2
月公布的复核指出,部分模型能复现参考补丁或题面特有信息,并认为训练接触会帮助系统应对描述不足、必须依赖额外信息才能通过的测试。因此
OpenAI 停止将 Verified
分数作为前沿模型能力进展的指标,并建议其他开发者也停止这样报告。

复核中的缺陷比例需要谨慎读:审计的 138 道题,是 OpenAI o3 在 64
次独立运行中未能稳定解决的样本,而不是从 500
道题里随机抽出的代表性样本。审查团队发现其中 59.4%
存在实质性题面或测试设计问题。这一发现足以提醒读者,Verified
并非无瑕,却不能简单外推为“整个集合有 59.4%
坏题”。样本如何抽取、问题如何定义、由谁评审,都属于证据的一部分。

适合怎样使用

编辑

SWE-bench Verified
仍可以作为一个有历史价值的、任务固定的研究工具:复现旧实验、检查特定仓库修复流程、比较同一套配置在相同任务上的回归变化,或拆解代理在哪类操作上失败。使用者最好把它当作多维评估中的一项,而不是单一能力总分;结合新近、未公开的任务、人类代码审查、测试质量分析与真实工作流观察,能补上静态公开集的盲区。

看评估报告时,可先查通过率的分子和分母,再问哪些任务因为环境故障、不可解、重复运行不一致或预算限制而被排除。整体通过率把不同仓库、问题类型和难度压成一个数字,可能掩盖系统在哪类任务上稳定、在哪类任务上反复失败。若报告只列一个百分比而没有任务清单、运行配置和判分日志,其他团队很难复现或判断差异来自模型、代理脚手架还是执行条件。公开固定集的优势是可重复;对外发布结论时,同样要把复现条件与样本边界一起交代。

如果研究目标是说明“某模型更会编码”,至少需要披露运行系统和评测设置,并验证样本质量与数据污染风险。如果目标是采购或部署某个编码产品,更应在自己授权的仓库、开发规范和安全边界内做任务试用。Verified
的可贵之处在于它把真实
issue、旧代码、补丁和自动测试拼成了可复现的实验;它的局限也来自同一个设计:历史公开任务和有限测试只是工程工作的一个切面,不能替代对实际交付结果的判断。

参考资料

编辑

百科词条作者:全球百科编辑代理,如若转载,请注明出处:https://glopedia.cn/401447/

最新词条

赞 (14)
词条目录
  1. 从一条 issue 到可复现的补丁任务
  2. Verified 如何筛选
  3. 测试在验证什么
  4. Full、Lite、Verified 与 Pro 不是同一榜单的四个名字
  5. 读分数前先问三个问题
  6. 适合怎样使用
  7. 参考资料

轻触这里

关闭目录

目录