Benchmark · agentic

SWE-bench

9 条结果 7 个模型

SWE-bench 测试 AI 系统能否修复真实的软件缺陷:它从 GitHub 上流行的开源 Python 仓库中选取 2,294 个真实 issue,要求模型生成修改代码的 patch。核心指标是 issue 的解决百分比。

了解更多
示例
一个典型条目会把某个 Python 项目上真实提交的缺陷报告或功能请求(比如 Django 或 scikit-learn 的一个 issue)连同该仓库的代码一起交给模型,要求它生成一个能解决该问题的 patch。
评分方式
得分是 2,294 个 issue 中被解决的百分比:只有当模型的 patch 应用后能让该仓库自带的测试套件通过时,这个 issue 才算被解决。
验证方式
验证完全自动:生成的 patch 会被应用到仓库并运行项目真实的测试;只有当目标的失败测试转为通过、且原本通过的测试仍然通过时,任务才被判定为解决,不涉及人工评判或精确匹配。
为何重要
它衡量的是在真实代码上端到端的软件工程能力,而非玩具式练习,因此被视为衡量编程智能体进展的重要风向标;在头条数字上,它已在很大程度上被经人工核验的子集 SWE-bench Verified 取代。
示例解析
任务
仓库 psf/requests。有用户报告,将请求头设置为 None(以移除会话的默认请求头)没有效果:值为 None 的键仍保留在合并后的请求头中,而没有被删除。给定处于问题提交处的仓库和这个 issue,请生成一个 patch,使 requests.sessions.merge_setting 删除值为 None 的键。
解答
--- a/requests/sessions.py
+++ b/requests/sessions.py
@@ -412,6 +412,11 @@ def merge_setting(request_setting, session_setting, dict_class=OrderedDict):
     merged_setting = dict_class(to_key_val_list(session_setting))
     merged_setting.update(to_key_val_list(request_setting))
 
+    # Remove keys that are set to None. Extract the keys first to avoid
+    # mutating the dictionary while iterating over it.
+    none_keys = [k for (k, v) in merged_setting.items() if v is None]
+    for key in none_keys:
+        del merged_setting[key]
+
     return merged_setting
解析
在合并会话字典和请求字典之后,任何映射到 None 的键都来自请求级别的显式覆盖,意在删除某个默认值,因此修复会收集这些键并删除它们(先构建列表,以避免在迭代时修改字典)。SWE-bench 通过应用 patch 并运行该实例的 FAIL_TO_PASS 和 PASS_TO_PASS 测试来评分——只有全部通过才算解决。
0 21.5 43 64.5 86 2023-10-10 2024-11-01 2025-11-25 Claude 2 · 2.0 · 2023-10-10 Claude 3.7 Sonnet · 70.3 · 2025-02-24 Claude Sonnet 4 · 72.7 · 2025-05-22 Claude Sonnet 4 · 72.7 · 2025-05-22 Claude Opus 4 · 72.5 · 2025-05-22 Claude Opus 4 · 72.5 · 2025-05-22 Grok 4 Code · 75 · 2025-07-10 Qwen3-Coder-480B-A35B-Instruct · 55.4 · 2025-10-17 Claude Opus 4.5 · 80.9 · 2025-11-25
Claude 2 Claude 3.7 Sonnet Claude Sonnet 4 Claude Opus 4 Grok 4 Code Qwen3-Coder-480B-A35B-Instruct Claude Opus 4.5
时间线
日期 模型 得分 来源
2025-11-25 Claude Opus 4.5 80.9% Anthropic发布Claude Opus 4.5,具备最先进的编码和计算机使用能力
2025-10-17 Qwen3-Coder-480B-A35B-Instruct 55.4% 阿里巴巴发布 Qwen3-Coder-480B-A35B-Instruct,开源编程模型性能媲美闭源模型
2025-07-10 Grok 4 Code 75.0% xAI发布Grok 4,配备重型多智能体层级和实时网络数据
2025-05-22 Claude Sonnet 4 72.7% Anthropic发布Claude Opus 4和Sonnet 4,配备ASL-3安全措施
2025-05-22 Claude Opus 4 72.5% Anthropic发布Claude Opus 4和Sonnet 4,配备ASL-3安全措施
2025-05-22 Claude Opus 4 72.5% Anthropic 推出支持扩展思考与工具使用的 Claude Opus 4 和 Sonnet 4
2025-05-22 Claude Sonnet 4 72.7% Anthropic 推出支持扩展思考与工具使用的 Claude Opus 4 和 Sonnet 4
2025-02-24 Claude 3.7 Sonnet 70.3% Anthropic 发布 Claude 3.7 Sonnet,支持动态推理控制
2023-10-10 Claude 2 1.96% SWE-bench 推出框架以在真实 GitHub 问题上评估语言模型