本文要点
- SWE-Bench Pro 从 OpenAI 推荐榜单切换为被撤下,公开分片 731 任务中约 30% 被认定失效
- OpenAI 公开要求资深开发者结合强模型构建新一代编码评测,而不是继续沿用静态 benchmark
- 审计方法本身由数据点分析流水线与 5 名资深工程师双轨执行,AI 审计首次成为大厂内部质量门
阅读辅助
先看数字、证据和来源,再读正文。
OpenAI 对 SWE-Bench Pro 公开分片 731 个任务做了双轨审计,结论是约 30% 任务失效。
2024-01-16 · SWE-bench 被 ICLR 2024 接收为 oral 论文,建立从 GitHub issue 评测模型修 bug 的范式
过去 24 小时里,OpenAI 在官方博客发布一篇标题为「Separating signal from noise in coding evaluations」的审计复盘,对自家在 2025 年下半年力推的 SWE-Bench Pro 公开分片做了完整审计,并明确撤回对该基准的采纳建议。这是继 2026-02 停用 SWE-bench Verified 之后,OpenAI 半年内第二次在编码评测领域做切割;放在一起看,事件指向的不是单点失误,而是行业当前评测基线的整体脆弱性。
结论一句话:当 1/3 的题目在 prompt、测试、实现三者的语义一致性上自相矛盾时,榜单 pass@1 数字就不再是能力背书,必须重新看每个题目的实际解法与失败原因。
确定事实方面,核心数字已经过 OpenAI 官方博客与官方 X 公告两次互证:在 731 个公开分片任务上,数据点分析流水线自动标记 200/731(27.4%) 为有缺陷;5 名资深软件工程师独立人工复核后进一步识别出 249/731(34.1%) 问题任务;OpenAI 综合两者给出约 30% 任务失效的整体估计。在同分片上,前沿模型的 pass@1 在 8 个月内从 23.3% 提升到 80.3%——这一 50 个百分点的提升目前与失效任务并存,拆解尚未公开。审计方法由 AI 自动流水线与人工复核双轨执行,撤回推荐是 OpenAI 自身决定,Scale AI 截至发稿未公开回应。
不确定部分主要集中在原始材料层面。OpenAI 博客页面因 Cloudflare 反爬未被本轮调研直接抓取,文中四类问题的失效任务样例、249/731 的人工判定标准、5 名工程师的资历背景均来自 OpenAI 一手公告与 X 转述。Scale AI 论文 v2(arXiv 2509.16941,22 位作者)只给出公开分片 731 / 商业 276 / 保留 858 的拆分与平均改动行数,并未公开任务级设计准则;商业分片与保留分片是否同样存在 ~30% 失效,目前完全无法验证。下文各节中遇到这类边界时,会在段内直接标注「博客未抓 / Scale 未公开 / 待验证」。
读者影响方面,受影响最大的是三类人。模型评测负责人最直接:~30% 失效意味着过去 8 个月的榜单叙事需要重写,至少要给出「去掉失效任务后」的真实曲线。编码 agent 厂商次之:基于 SWE-Bench Pro 排名的市场材料需要立刻降级,把内部私有 benchmark 或企业级工作流成功率推到更显眼的位置。研究者第三:AI 自动审计本身被 OpenAI 第一次当作大厂内部质量门,这是评测治理方法学的一次结构升级,而不是单点结论。
为什么走双轨:审计方法学本身的选择
OpenAI 没有用传统的人工小样本抽检,也没有让模型 agent 单独跑全量数据集,而是把 AI 自动流水线 与 资深工程师人工复核 平行执行。两轨并不互为备份,而是分别覆盖不同失败信号,合在一起构成对 731 个任务的两次独立判定。
第一轨是数据点分析流水线。它对每个任务同时取 prompt、隐藏测试、候选解三份材料做差分执行,自动筛出两类可疑样本:一是「测试通过但解法明显不合常理」,二是「测试失败但解法符合 prompt 描述」。第一类意味着题面在奖励错误行为,第二类意味着题面在惩罚正确行为,两类都说明 prompt 与测试之间的语义耦合出了问题。这条流水线对每条任务都跑一次,因此可以在 731 这个样本量上稳定地给出 200/731 的自动标记。
第二轨是 5 名资深软件工程师的独立人工标注。评审维度不是「这道题难不难」,而是「prompt、测试和实现细节之间的耦合是否自洽」:题目是否可解、prompt 是否说明全部必要前提、测试是否引入了未声明的约束、prompt 是否把模型推向与测试期望相反的方向。这条轨道的输出是 249/731。
两条轨道的差集本身就是审计的核心证据。200 与 249 的差额是 49 个任务:AI 流水线没有标为缺陷、人工评审却判定有问题。这意味着如果 OpenAI 只走单轨 AI 审计,就会低估约 6.7 个百分点的真实失效比例;反过来如果只走人工评审,时间成本与一致性都不可控。双轨不是为了提高召回率,而是为了让「AI 与人类在哪一类问题上不一致」成为一个可分析的输入。这一点在本次审计的复盘价值里比 ~30% 数字本身更重要:它把「评测审计」从「抽检+判断」变成「流水线+对照」,是评测治理工具的结构性升级,而不是某次报告的写作选择。
值得说明的是,自动流水线的内部实现 OpenAI 没有披露阈值与特征工程细节;5 名工程师的招募标准、领域分布、是否覆盖全部 41 个项目也未公开。这两点都是目前审计方法学的主要黑箱,也是后面要重点跟踪的「接下来看什么」。
四类失效模式:题面耦合而不是题目难度的失败
OpenAI 把失效任务归为四类。每一类的失效原因都落在 prompt、测试、覆盖度这三者之间的耦合上,而不是任务本身的难度。下面逐类说明失效机理与基线对照,其中 X% 比例与样例描述均受博客未抓这一事实约束,具体数字待原博客公开后核对。
第一类:测试过于严格。测试要求 prompt 里没有说明的特定实现细节,例如规定函数必须使用某种中间数据结构,或者强制要求走某条特定的代码路径。这类任务的失效不在模型能力上,而在题面信息量上:模型只要选择「合理但不同」的解法就会被扣分。在 SWE-Bench Pro 公开分片里,平均改动 107.4 行、跨 4.1 个文件的复杂任务尤其容易出现这种约束,因为复杂度越高,越难在 prompt 里把全部隐含约束写全。审计后 OpenAI 提示,这类任务需要重写 prompt 或放宽测试到「实现无关」。
第二类:prompt 描述不足。题目把本应在 prompt 里写明的接口契约、边界条件、错误处理预期隐藏在测试里。这类任务在单看 prompt 时看上去可解,但实际执行时,模型需要靠读测试反推约束。读测试本身并不违规,问题在于这种反推路径很容易让不同模型走不同方向,pass@1 数字里相当一部分反映的是「反推方向是否碰巧对了」,而不是「代码能力是否真的进步」。这种问题在 SWE-Bench Pro 里比 SWE-bench Verified 更突出,因为 Pro 任务来源更杂、领域差异更大。
第三类:测试覆盖率低。允许一个不完整的修复通过测试。典型表现是任务只检查主路径,对错误处理、边界条件、回归路径不设断言。模型只要提交「能跑通主流程」的最小修复就能拿分,审计后 OpenAI 的判断是这种题目实际上不区分「真正修好」与「应付通过」。在 731 任务公开分片上,前沿模型 pass@1 从 23.3% 提升到 80.3%,其中有多大比例是「应付通过」带来的虚高,目前无法拆解。
第四类:误导性 prompt。把模型推向与测试期望相反的方向。这类失效最隐蔽,因为单看 prompt 内部是自洽的、单看测试内部也是自洽的,但二者方向相反。模型在多数情况下按 prompt 描述来解,因此会稳定地拿不到分。OpenAI 把这一类单独列出,意味着审计团队对「题面是否自洽」做了非平凡的检查,而不是仅仅做了题面对照标准的检查。
| 失效类别 | 触发位置 | 失败信号 | 与 SWE-bench Verified 的差异 |
|---|---|---|---|
| 测试过严 | 隐藏测试 | 测试通过但解法不合常理 | Pro 任务更复杂,更易出现隐藏约束 |
| prompt 不足 | prompt 文本 | 测试失败但解法符合 prompt | Pro 来源更杂,prompt 完备性更难保证 |
| 覆盖率低 | 测试断言 | 不完整修复可通过 | 两者都有,Pro 改动行数多更易遗漏 |
| 误导方向 | prompt vs 测试 | 内部自洽但方向相反 | Pro 长周期任务里更明显 |
四类的共同点不在「难度」,而在「题面三要素之间的语义耦合被破坏」。这是审计的真正抽象:评测失败并不总是意味着模型能力不够,很多时候是题面设计在自相矛盾。这一抽象与 OpenAI 在 2026-02 停用 SWE-bench Verified 时给出的理由(数据污染、测试设计不可靠、榜单饱和、任务过于简单)形成对照:Verified 的问题集中在「题目被见过」「题目太简单」「榜单不再区分」,Pro 的问题集中在「题面三要素耦合破裂」。两类问题在历史脉络上一脉相承,但根因不同,需要不同的修复手段。
公开榜单失稳之后:模型厂商、agent 厂商、研究者各自的动作
~30% 失效任务的审计结果让 SWE-Bench Pro 从「OpenAI 推荐榜单」切换到「被撤下榜单」。三个受众群体接下来要做的不是观望,而是立刻做动作。
模型厂商与评测负责人需要立刻评估两件事。第一,把 SWE-Bench Pro 排名从对外材料里撤下,停止把 23.3% → 80.3% 的曲线作为能力背书继续使用。第二,对 731 公开分片里的失效任务做敏感性分析,重跑「去掉 30% 失效任务后的子集」的真实曲线。如果去掉噪声后真实进展只有 10 个百分点而非 50 个,对外叙事就要相应改写。这项工作不复杂,但需要获得 OpenAI 是否公开失效任务 ID(见「接下来看什么」),否则只能用 Scale AI 自报数据做近似。需要注意的是,80.3% 这个数字对应的具体模型与时间口径 OpenAI 没有披露,复算只能拿到「去掉疑似失效任务后」的近似下界。
编码 agent 厂商需要在产品文档里区分两类信号。基于 SWE-Bench Pro 公开排名的市场背书短期仍可使用,但需要标注审计状态;基于内部私有 benchmark 或企业级真实工作流的成功率,应该被推到更显眼的位置。这一调整在产品侧的代价是销售材料要重写、对外口径要重新对齐,但在采购方开始追问「你的 80.3% 是怎么算的」之前完成会更主动。审计结果提醒,单看榜单排名变化不足以判断真实能力——需要看到任务级失败原因、看到私有工作流基准、看到人在回路的对照实验。
研究者应该把「AI 审计 benchmark」本身作为新课题。OpenAI 已经示范了双轨流程(AI 流水线标记 200/731 + 5 名工程师复核 249/731),但论文尚未公开。Scale AI 是否会跟进、是否会有独立第三方复现、审计方法是否会被标准化,这些都是值得跟踪的方向。审计方法本身比 ~30% 结论更值得作为研究问题——因为后者是单次结论,前者可以反复被用在新基准发布前的质量门里。
更广义的影响是评测基线话语权的转移。编码评测是过去两年 AI 行业最重要的话语权基础设施:模型厂商发布新模型时几乎都会附上 SWE-bench 榜单作为能力背书,企业买方据此判断模型是否值得接入 CI/CD、code review 或 issue 自动化流程,研究者据此判断 agent 工作流是否出现能力跃迁。一旦评测基线失稳,从产品发布到投资决策的整条传导链都需要重新校准。抗污染设计并不能替代题面质量:Scale AI 在设计 SWE-Bench Pro 时把主要精力放在数据来源隔离(GPL 项目 + 私有购买代码)上,但忽略了 prompt 描述、隐藏测试、测试覆盖率之间的耦合关系。一篇评测要可信,至少要在数据来源、题面表述、测试覆盖、执行一致性四个维度同时过关。
审计方法本身比 30% 数字更值得讨论。双轨审计(AI 自动标记 + 资深工程师人工复核)的价值在于把「AI 与人类在哪一类问题上不一致」变成可分析的输入。200 件与 249 件的差额,本身就是这次审计最有信息量的产物。如果未来新基准发布前都走类似的双轨流程,编码评测行业的准入门槛会从「数据来源是否独立」升级到「题面是否经过自动加人工双轨审计」——这是 OpenAI 在这次复盘里悄悄完成的评测治理升级,也是这一轮基线失稳可能留下的最长期资产。
23.3% → 80.3% 的曲线需要被改写,但不是被否定。拆解这一曲线目前缺两组关键数据:一是 OpenAI 是否公开失效任务 ID,让外部可以做敏感性分析;二是 Scale AI 商业分片与保留分片是否纳入审计。前者决定外部能否复现 30% 比例,后者决定整个 SWE-Bench Pro 是否需要重做。在这两组数据公开之前,最克制的对外口径是「榜单上确有显著进展,但其中混入的题面失败信号需要被剥离」——既不否认模型进步,也不沿用过时的能力叙事。
抗污染设计与题面质量是两条不同的战线。Scale AI 在 SWE-Bench Pro 上把 80% 精力放在数据来源隔离(GPL 项目 + 私有代码 + 跨 4.1 文件)上,题面设计留给贡献者自治。OpenAI 的审计说明,抗污染只能保证题目没被见过,无法保证题目本身能测出能力。下一轮基准设计的优先级应当反过来:题面三要素(prompt、测试、覆盖率)的语义一致性必须先于抗污染被设计进流程。
短期最现实的动作是「双轨审计变成新基准的标配质量门」。OpenAI 自己在这次复盘里给出了三条件:资深工程师主导题面、任务来自真实开发场景、强模型可用于规模化质检但必须经过人工复核。这三条件如果被行业采纳,编码评测的竞争维度会从「谁的题库大」转向「谁的题面设计更扎实、谁的审计流程更可复用」。这是这次事件里最值得被复用的副产品。
接下来看什么
- OpenAI 是否公开被标记为缺陷的任务 ID、5 名工程师的招募标准与领域分布、自动流水线的特征工程细节,让外部可以做敏感性分析与审计复现
- Scale AI 是否承认审计结果,是否公开商业分片(276 任务)与保留分片(858 任务)的设计差异,是否对公开分片做修订
- 各家模型厂商是否在 8 月发布的模型卡里撤下 SWE-Bench Pro 公开排名,转向私有评测或新一轮基线
- 行业是否联合推出新一代编码评测,由资深开发者主导构建、强模型做规模化质检、AI 与人工双轨审计
- AI 自动审计本身是否从单次研究变成基准发布的标配质量门;该方法学是否被独立第三方复现并标准化
附:双轨审计的具体执行逻辑与新基准三条件
双轨审计的执行流程。第一轨的 AI 流水线对每个任务同时取 prompt、隐藏测试、候选解三份材料做差分执行,识别两类可疑信号后输出 200/731 的自动标记。第二轨的 5 名资深工程师独立评审每个任务的 prompt、测试、覆盖率、方向一致性,输出 249/731 的人工标注。两轨的交集与差集均被保留:交集是高置信失效任务,差集是审计方法本身的输入(49 个 AI 未标但人工标了的任务尤其值得被分析)。这种结构让「审计方法学」成为一个可对照、可复用的对象,而不是「一组专家开了一次会」。
OpenAI 提议的新基准三条件。第一,由资深软件工程师主导题面设计与评审。这一条直接对应本次审计发现的核心问题:当题面来自不够资深的贡献者时,prompt、测试和实现细节之间的耦合最容易脱节。第二,任务要来自真实开发场景,而不是人工合成的最小复现。SWE-Bench Pro 的设计初衷是把任务时长拉到数小时到数天级别,但执行层面仍然偏合成。下一轮基准需要真正接入企业内部代码库、issue 跟踪系统与 code review 流程。第三,强模型可用于规模化质检,但质检结果必须经过人工复核。OpenAI 自身这次的双轨审计(AI 流水线标记 200/731、人类评审识别 249/731)就是这一思路的样本,差异本身就是审计的输入。