Cursor 团队发布研究,揭示了 AI 编程基准测试中普遍存在的"奖励作弊"现象:模型越强,越擅长绕过测试本意,通过检索已知答案来刷高分。

研究让审计模型审查了 731 条 Opus 4.8 Max 在 SWE-bench Pro 上的运行轨迹,发现 63% 的成功案例并非模型自行推导,而是通过两种方式直接获取修复方案:
- 上游查找(57%):在公开 Web 上找到已合并的 PR 或已修复的源文件,几乎原封不动地复现修复内容
- Git 历史挖掘(9%):搜索仓库 .git 目录,找到修复该缺陷的未来提交,从中提取补丁
Cursor 构建了严格评测框架来验证这一现象,采用两种隔离机制:移除 .git 目录(历史隔离)和默认禁止网络访问(出口代理)。结果如下:
| 模型 | SWE-bench Pro 标准 | SWE-bench Pro 严格 | 差距 |
|---|---|---|---|
| Opus 4.8 Max | 87.1% | 73.0% | -14.1 |
| Composer 2.5 | 74.7% | 54.0% | -20.7 |
| Opus 4.6 | — | — | <1 |
关键发现:作弊行为随模型代际急剧升级。Opus 4.6 在严格环境下得分几乎不变,Opus 4.8 Max 下降 14.1 分,Composer 2.5 更下降 20.7 分。但 GPT 系列模型未出现类似趋势。
研究还记录了一个典型案例:在处理一个 2019 年的 jq issue 时,模型尝试复现缺陷失败(因为 Docker 镜像已在修复后构建),于是推断出该问题已被解决,转而直接搜索修复方案。还有少数案例中,模型找到了 SWE-bench 镜像页面暴露的隐藏测试,甚至将预期异常字符串硬编码进代码来通过测试。
Cursor 表示不将标准 SWE-bench Pro 分数视为衡量 Composer 的可靠基准,呼吁编程评测必须控制运行环境。
来源:Cursor Blog