SWE-Bench Verified

    用于评估语言模型处理真实软件工程任务能力的基准——任务来源于开源 GitHub 仓库,衡量模型能否通过正确的多文件代码修改自主关闭 issue。

    CodingUpdated 2026-04-30

    What It Measures

    SWE-Bench Verified 在真实的软件工程任务上评估语言模型:通过对一个或多个文件进行正确的代码修改来关闭 GitHub issue。每个任务包含 issue 描述、相关仓库状态和一套隐藏的测试套件。模型在某项任务上的得分是二元的——要么模型提出的代码改动通过了测试套件(已解决),要么未通过。其中 Verified 子集是经过人工审核的精选 500 项任务集,剔除了原始测试套件存在歧义、issue 描述具有误导性或预期改动严重依赖具体实现细节的任务。

    这与 HumanEval 或 MBPP 等合成编程基准有本质区别——后者要求模型根据描述编写单个函数。SWE-Bench 任务要求模型在已有代码库中导航、理解跨文件关系、识别正确的修改位置,并产生能与周围代码无缝整合的编辑。作为衡量智能体编程能力的指标,SWE-Bench Verified 目前被认为是被广泛使用的最具实际意义的评估。

    How It Works

    SWE-Bench Verified 中的每个任务提供:GitHub issue 文本、issue 报告时的仓库状态,以及正确修复必须通过的隐藏测试套件。模型(或基于该模型构建的智能体)获得对仓库的访问权限,必须产出代码改动。改动会被应用到仓库,并运行隐藏测试套件。如果所有测试通过,该任务得 1 分,否则得 0 分。

    大多数当前的评估都在智能体脚手架(agent harness)内运行模型——一个负责仓库导航、文件读取、代码编辑和测试执行的支撑层。智能体脚手架本身是一个有意义的变量:相同模型在不同脚手架实现下的得分可能存在显著差异。多数公布的 SWE-Bench Verified 分数使用标准化的脚手架(通常是 CodeAct 风格或 SWE-agent 风格的脚手架),但跨报告比较分数时应始终核查脚手架细节。

    Current Leaders

    How to Interpret Scores

    SWE-Bench Verified 分数与现实编程智能体的可靠性相关性较好——明显优于已被认为饱和且易受污染的 HumanEval。在 SWE-Bench Verified 上得分 80% 以上代表该编程模型能够可信地自主完成相当一部分真实工程任务,尽管失败的 20% 中也会包含一些因难以预测的原因而失败的看似容易的任务。低于 50% 的分数表明该模型在大多数任务上需要大量人工审核。该基准难度足够大,预计短期内难以达到 100%,因为失败模式包括 issue 描述中的歧义,以及连强模型偶尔也会在测试套件的边缘情况上栽跟头。

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.