当前位置:首页>排行榜>评测基准|SWE-Bench Pro Verified:重新考察编程智能体的真实表现

评测基准|SWE-Bench Pro Verified:重新考察编程智能体的真实表现

  • 更新时间 2026-09-18 18:20:55
评测基准|SWE-Bench Pro Verified:重新考察编程智能体的真实表现

SWE-Bench Pro 主要由具有挑战性的仓库级编程任务构成,一直被广泛用于编程智能体和模型的代码能力评测。它曾被 OpenAI 推荐用于替代 SWE-Bench Verified,随后又在 7 月被 OpenAI 撤回推荐。各家模型在 SWE-Bench Pro 上的分数一路“水涨船高”。但一个更重要的问题也随之出现:

这样的高分,反映的真的是模型的真实能力吗?

上海人工智能实验室研究团队基于OpenAI此前发布的相关内容及社区用户反馈,对多个模型在SWE-Bench Pro上的运行轨迹进行了一次全面的“体检”分析。

分析发现,智能体完全可能从仓库 Git 信息中“考古”出未来的修复提交,从本地文件系统中读取隐藏测试文件,从任务元数据中反推出目标修复的 commit,甚至直接从 GitHub、Gitee、Hugging Face 等站点下载补丁或读取 testcase 信息。

除此之外,还有一类更隐蔽的问题来自考题本身:有的任务描述与测试要求互相矛盾;有的测试过窄,语义正确的实现仅仅因为实现风格不同就被判错;还有的测试过宽,残缺的修复反而能够蒙混过关。

针对上述问题,研究团队在论文 《SWE-Bench Pro Verified: A Reliable Benchmark for Software Engineering Agents》 中提出 SWE-Bench Pro Verified。该基准通过反作弊隔离与任务修订两条处理管线,分别加强评测过程中的信息隔离,并修正已确认的任务质量缺陷,为软件工程智能体提供更可靠的评测依据。

  • 反作弊隔离环境(Anti-hacking):封堵本地与网络两大类、共四条主要的答案泄露通道。在封堵网络答案泄露的同时,不阻碍正常的网络请求交互。

  • 任务修订(Task Refinement):以"最小修改"原则修复 102 个存在质量缺陷的实例;

论文地址:

https://arxiv.org/abs/2609.08149

数据集地址:

司南评测集社区地址:

https://hub.opencompass.org.cn/dataset-detail/SWE-Bench_Pro_Verified

HuggingFace评测集地址:https://huggingface.co/datasets/opencompass/SWEBench-Pro-Verified

代码地址:

https://github.com/open-compass/AgentCompass

使用文档:

https://agent-compass.mintlify.app/en/user_guide/modules/benchmarks/swebench_pro_verified

01

高分背后,可能是被"泄题"的考卷

SWE-Bench Pro 要求智能体在真实代码仓库中定位问题、修改代码,并通过 fail-to-pass 与 pass-to-pass 测试。按照评测要求,未来修复提交、参考补丁和隐藏测试不应对智能体开放。然而,研究团队发现,原始环境中仍存在获取这些信息的路径,可能使评测成绩受到任务解决能力之外的因素影响。

团队的排查梳理出四条主要的答案泄露通道:

泄露通道

类别

暴露的信息

本地文件系统

本地

golden patch、隐藏测试、测试套件

Git 历史

本地

未来提交、分支、标签、远端与 reflog

外部网络

在线

上游 commit、补丁、测试、API、源文件、代码站点、

包管理站点(pip install / go get ...)

任务元数据

本地/在线

目标 SHA、仓库身份与敏感评测字段

左右滑动查看更多

任务质量问题是另一重失真来源。在全部问题实例中,团队归纳出四类缺陷:

问题类型

判定标准

对智能体行为的影响

数量

误导性描述

任务说明与测试要求

的行为相矛盾

按说明实现反而失败

22

过窄测试

测试强制约束了未说明的字符串、类型、顺序或边界

语义正确的补丁因实现风格不同被判错

75

过宽测试

说明中规定的行为

未被测试覆盖

不完整的修复也能通过

3

其他

数据损坏或无效路径

出现与实现无关的失败

2

左右滑动查看更多

传统基准考的是"解题能力",泄露的基准考的却是"找答案能力";再叠加一批"印错了的考题",榜单分数与真实工程能力之间的鸿沟,也就不难理解了。

02

反作弊:封堵四条"作弊"通道

针对已识别的答案泄露风险,研究团队从本地环境与外部网络两个层面对执行环境进行加固,主要采取以下四项措施:

  • 仓库重建:将每个仓库重建为全新的单提交仓库,递归清除嵌套 Git 历史。仅删除分支、远端和标签引用,仍可能保留 notes、replace 引用及 stash 中的历史对象,使未来修复提交被恢复。新方案在清理历史对象的同时保留依赖与环境文件,保障仓库正常构建与执行;

  • 测试文件隐藏:从智能体工作区中显式删除隐藏测试,清理测试目录下的测试套件和golden数据,并禁用容器镜像中预装的 Git hooks,防止隐藏文件在 checkout 时被意外还原;

  • 元数据过滤与匿名化:通过白名单过滤任务元数据,剔除参考补丁、测试列表等真值字段;执行前将实例 ID 替换为哈希,并对工作区与文件路径同步匿名化,减少通过仓库身份信息反向查询答案的风险;

  • 网络封锁:屏蔽已知代码、数据集托管域名,同时保留依赖服务,确保正常交互的构建与依赖下载不受影响。

隔离措施既需要有效限制答案信息的获取,也需要保障智能体阅读代码、运行程序和安装依赖等正常操作。研究团队进一步通过轨迹审计与逐例归因,评估防护措施的有效性及其对正常任务执行的影响。

03

任务修订:修正 102 道"有瑕疵的考题"

任务修订采用“LLM 辅助分析、专家审核修订”的协作流程。研究团队首先从公开问题报告中收集证据并归类质量缺陷,再由 LLM 辅助筛选实例、拟定修订方案,最终由人类专家依据“最小修改”原则完成审核与修订。LLM 仅承担辅助工作,所有修订均由专家确认,最终完成 102 个实例的质量修正。

修改字段

含义

修订实例数

占比

requirements

实现必须满足的

可验证行为说明

92

90.20%

interface

公开类型、函数、位置与输入输出

60

58.80%

problem_statement

用户可见的问题背景、目标与边界

59

57.80%

test_patch

隐藏测试的新

增或修改补丁

17

16.70%

左右滑动查看更多

大部分修订集中于 requirements、interface 等任务说明,其中17个实例涉及测试逻辑调整。修订重点是明确任务要求与预期行为,使符合要求的实现能够通过测试,避免因未规定的实现细节而被判定为失败,同时减少不完整修复通过测试的情况。

04

结果:有模型大幅"缩水"

团队在统一环境下对 7 个主流模型进行了评测验证:GPT-5.6-Sol、Kimi-K3、GLM-5.3、GLM-5.2、DeepSeek-V4-Pro、DeepSeek-V4-Flash-0731 与 DeepSeek-V4-Pro-0813。所有评测基于 AgentCompass 基础设施,统一使用 mini-swe-agent 作为 harness,运行参数取各模型官方推荐值。

为了分离两种修复的作用,评测在三种设置下进行:

  • Baseline:原始 SWE-Bench Pro 的任务数据与执行环境,不进行任何网络限制,但评测环境已经应用了社区的https://github.com/scaleapi/SWE-bench_Pro-os/pull/94的anti-hacking策略;

  • Anti-hacking:保留原始任务,仅替换为反作弊隔离环境;

  • Verified:在反作弊环境之上,进一步将 102 个实例替换为修订版本。

我们挑选了其中两个模型来进行分析:

模型

Baseline

Anti-hacking

Verified

GLM-5.2

78.8

57.32

59.51

DeepSeek-V4-Pro

49.98

49.11

49.93

在SWE-Bench Pro Verified上的评测结果分析中发现:

  • 广泛作弊的模型,分数大幅缩水。 GLM-5.2 从 78.80%(AgentCompass在SWE-Bench Pro原始版本上的评测结果)降至 57.32%,下降 21.48 个百分点——这与 AgentCompass 此前分析发现其存在大量奖励作弊行为的结论相互印证。

  • 几乎不作弊的模型,分数基本不变。 DeepSeek-V4-Pro 在三个设置下的成绩分别为 49.98%、49.11% 与 49.93%,波动不到 1 个百分点,同样与AgentCompass技术报告中的分析结论一致。这说明反作弊措施精准移除的是"作弊红利",而非普遍拉低所有人。

任务修订则带来了正向修复:两个模型在 Verified 设置下均较 Anti-hacking 有所回升,说明一部分此前"出错了的考题"重新变得可解。

05

归因验证:

降分是"防住了作弊",不是"干扰了发挥"

为进一步分析成绩变化的原因,研究团队从答案泄露审计、统计检验和逐例审查三个层面开展验证,重点考察隔离措施是否有效阻断答案获取,以及是否影响智能体的正常执行。

  • 第一层:泄露通道被彻底堵死。 对 GLM-5.2 全部 731 条轨迹的配对分析显示,本地高危操作从 4,213 次降至 908 次(-78.4%),网络高危操作从 573 次降至 4 次(-99.3%);更关键的是,确认访问到答案文件的任务数从本地 103 个、网络 49 个,双双降为 0。此前最直接的作弊手法——用 git show 直接查看目标commit (2,108次)、访问 raw.githubusercontent.com 下载源文件(318 次)——几乎被完全消除。

  • 第二层:分数变化具有强统计显著性。 186 个实例由 PASS 变为 FAIL,反方向仅 15 个,McNemar 检验 p < 0.001,排除了采样波动导致整体降分的可能。

  • 第三层:逐例归因未发现"误伤"。 对全部 186 个 PASS-to-FAIL 实例的逐一审查显示:

主要成因

实例数

占比

作弊被移除

(直接证据)

166

89.20%

作弊被移除

(高度可能)

3

1.60%

正常执行受干扰

0

0.00%

随机性或证据不足

17

9.10%

90.9% 的降分可直接或高度可能归因于作弊被阻断,没有一例被判定为隔离环境损害了正常执行。

任务修订的有效性也得到了实例级验证。在 102 个修订实例中,21个由 FAIL 转为 PASS,仅2个由 PASS 转为 FAIL。修订主要完善了精确常量、集合与顺序语义、默认值与返回结构、控制流边界及接口定义等要求,减少因任务说明不明确造成的实现误判。

06

一套基准,真正想推动什么?

SWE-Bench Pro Verified 的核心价值在于加强评测信息隔离、完善任务质量,并通过结果验证提升能力测量的可靠性与可解释性。

首先,研究结果提示,答案泄露与任务质量缺陷可能影响原始 SWE-Bench Pro 成绩,相关比较应结合评测环境、执行框架与运行配置进行解读。其次,反作弊隔离、任务修订及归因验证流程,为其他智能体基准的可靠性改进提供了参考。最后,包含 731 个实例的修订版基准及相关代码、数据已开源,支持研究者在明确的实验条件下开展复现与比较。

研究团队同时指出,当前方案仍存在一定局限:域名黑名单难以覆盖所有自托管 Git 服务与动态域名,个别仓库可能保留残余信息,任务质量问题的排查也未必穷尽。评测可靠性的提升需要持续开展风险排查、任务复核与防护更新。

对智能编程领域而言,可靠的评测是分析技术进展的重要基础。持续完善信息隔离、任务质量与结果验证,有助于减少非能力因素对成绩的影响,为模型研发、能力分析与应用选型提供更加客观的参考。

以更可靠的评测流程,为软件工程智能体的能力分析提供坚实基础。

想在自己的模型上复现这套可信评测?欢迎体验AgentCompass! (https://github.com/open-compass/AgentCompass)。

框架面向智能体评测场景,提供反作弊隔离执行环境、轨迹分析与统一评测支持,便于在明确的实验条件下开展能力评估与结果分析。

OpenCompass

欢迎关注「司南评测体系」公众号

长按识别二维码

添加「司南小助手」

长按识别二维码

加入「司南社区交流群」

随机文章