SWE-bench 的得分在不到两年的时间里从 1.96% 飙升至 72.7%,这一增长被新闻头条描述为 AI 编程能力的 37 倍飞跃。头条新闻虽然引人注目,但这些数字比较的是两次不同的考试,而非软件工程能力的单一、持续的提升。
原始数据
2023 年,原始的 SWE-bench 在 2,294 个真实的 GitHub issue 上评估 AI 智能体。这些任务杂乱无章:描述模糊、测试损坏,许多问题甚至连人类都难以解决。到 2025 年,同一个基准测试名称出现了 72.7% 的得分,但测试范围已缩小至仅包含 500 个任务的“已验证”(Verified)子集,这些任务都经过了人类对清晰度和可解性的审核。
测试是如何变化的
从完整目录向 Verified 集的转变是第一个、也是最明显的改变。原始集合试图反映开源贡献中混乱的现实——即那些不完整、文档记录不全,或者在没有额外上下文的情况下根本无法解决的问题。相比之下,Verified 版本刻意过滤掉了这些混乱。它呈现了一个更干净、更易处理的问题集,高分在其中是现实可达的。
由于两个版本衡量的是问题空间的不同部分,直接进行百分比比较具有误导性。1.96% 的数字反映了在原始、未经筛选的工作上的表现;而 72.7% 的数字反映了在精选样本上的表现,后者的成功概率要高得多。
有针对性的工程化
第二个更微妙的变化发生在开发者对待基准测试的方式上。在 2023 年,没有人专门为了在 SWE-bench 中取得高分而构建智能体;该测试当时只是世界编程挑战的一个随机样本。到 2025 年,团队将该基准测试变成了一个计分板。他们构建了脚手架、提示策略,并针对在 Verified 集上获得高分这一明确目标对模型进行了微调。
当工程师设计一个系统来通过特定测试时,得分反映的是该系统与该测试的契合程度,而不是其能力的广泛程度。一旦基准测试被“修复”并变成一个目标,它就不再是现实世界工作的代表性样本了。
这一飞跃的真实含义
头条新闻所描述的进步是真实的,因为当前的编程智能体在 Verified 任务上的表现确实比在原始集合上要好得多。这种进步对于依赖相同精选基准测试的竞赛、研究论文和产品演示来说非常重要。
然而,这一飞跃并不证明 AI 智能体现在能够处理日常软件开发的混乱情况。原始的 2,294 个 issue 集合仍然存在,且在该版本上的得分依然很低。
需要提出的问题
每当你看到基准测试结果出现巨大波动时,请记住这三项检查:
- 报告的是哪个版本? Original、Lite 还是 Verified?相同的名称可能会掩盖截然不同的任务池。
- 过滤掉了什么? 移除噪声大或不可能完成的任务会提高任何系统的上限;但它同时也移除了在生产环境中真正重要的挑战。
- 系统是否是专门为通过这项特定测试而构建的? 如果开发者针对该基准测试调整了模型或流水线,那么得分衡量的是优化程度,而非原始能力。
展望未来
在此类保障措施成为标准之前,衡量 AI 编程助手实用性的最佳指标,仍然是它在开发者每天面临的混乱、真实的现实问题上的表现。
核心观点: 在经过修复、具有针对性的基准测试中获得更高分数,并不自动证明 AI 智能体已准备好应对现实世界代码的混乱;真正的考验仍然是工程师每天需要应对的那些未经筛选的问题。
