综合调研

代码与软件工程 Benchmark 全景报告(2026)

从函数级到仓库级,从文本到多模态——18 个主流及新兴 Benchmark 的系统梳理、横向对比与趋势判断

Benchmark 代码生成 SWE-bench KernelBench NL2Repo Coding Agent 评测

代码与软件工程 Benchmark 全景报告(2026)

从函数级到仓库级,从文本到多模态——LLM 代码能力评测的演进与前沿


一、为什么需要这份报告

2024–2026 年间,代码生成 Benchmark 经历了一次范式跃迁:从”给函数签名补全实现”到”给一句需求描述从零构建整个代码库”。HumanEval 上 95%+ 的分数已经失去区分度,行业急需更贴近真实工程的评测维度。

本报告系统梳理 18 个主流及新兴 Benchmark,按评测粒度分四层,逐一拆解设计理念、任务构成、评测指标,并给出横向对比和趋势判断。


二、Benchmark 全景图:四层分类

┌──────────────────────────────────────────────────────────┐
│  Layer 4: 端到端工程 (E2E Engineering)                     │
│  NL2Repo-Bench · Commit0 · WebApp1K · Terminal-Bench     │
├──────────────────────────────────────────────────────────┤
│  Layer 3: 仓库级修复与推理 (Repo-Level)                     │
│  SWE-bench Pro · SWE-bench Verified · Multi-SWE-bench    │
│  SWE-bench Multimodal                                    │
├──────────────────────────────────────────────────────────┤
│  Layer 2: 领域特化 (Domain-Specific)                       │
│  KernelBench · SciCode · MLE-bench · RE-Bench            │
│  FullStackBench                                          │
├──────────────────────────────────────────────────────────┤
│  Layer 1: 函数/片段级 (Function-Level)                     │
│  HumanEval/MBPP · EvalPlus · LiveCodeBench               │
│  BigCodeBench · Aider Polyglot · CRUXEval                │
└──────────────────────────────────────────────────────────┘

三、逐层详解

Layer 1: 函数/片段级——“基本功体检”

1. HumanEval / MBPP

维度HumanEvalMBPP
发布OpenAI, 2021Google, 2021
规模164 题974 题
语言PythonPython
指标pass@kpass@k
当前水位前沿模型 95%+前沿模型 90%+
现状⚠️ 已饱和,不再区分前沿模型⚠️ 已饱和

评价:作为代码生成评测的”Hello World”,二者已完成历史使命。1% 的分差属于噪音。仅适合做底线 sanity check。


2. EvalPlus (HumanEval+ / MBPP+)

维度详情
发布NUS / Illinois, 2023
核心改进将 HumanEval 测试用例扩展 80×,MBPP 同理
目标暴露”通过弱测试但逻辑错误”的代码
指标pass@1(严格模式)
价值同一模型在 HumanEval 和 HumanEval+ 上可差 10+ 个点

评价:如果还要用 HumanEval,至少应该用 EvalPlus 版本。揭示了大量”假通过”。


3. LiveCodeBench ⭐

维度详情
发布2024,持续更新
规模动态扩展(LeetCode + Codeforces + AtCoder 新题)
核心特性抗污染——所有题目发布于模型训练截止日期之后
指标pass@1
当前水位前沿模型在 Hard 题仅 40-60%
局限竞赛编程 ≠ 软件工程;不测多文件、不测 API 调用

评价:当前最可靠的函数级推理能力测试。持续更新机制解决了数据泄露这个老大难问题。


4. BigCodeBench

维度详情
发布BigCode Project, 2024 (ICLR’25)
核心特性HumanEval 级别的函数生成,但指令更复杂 + 调用多样化函数库
两个拆分Complete(自然语言→代码)+ Instruct(对话式指令→代码)
语言Python 为主
指标pass@1

评价:填补了 HumanEval 和真实工程之间的空白——不是纯算法题,而是需要理解第三方库 API。


5. Aider Polyglot Benchmark

维度详情
发布Paul Gauthier (Aider), 2024
规模133 题
核心特性多语言(Python/JS/TS/Go/Rust/C++/Java)的代码编辑能力
评测方式模型按指令修改已有代码文件
指标正确率(%)
当前水位Opus 4.6 ~85%, Sonnet 4.6 ~82%, GPT-5.3 ~80%
备注OpenAI 发布 o3 时选用的三大 Benchmark 之一

评价:最贴近”AI 编辑器”真实场景的函数级测试。测的不是从零生成,而是按指令改代码——更实际。


6. CRUXEval / CRUXEval-X

维度详情
发布Meta (FAIR), 2024; CRUXEval-X 扩展到多语言, ACL 2025
规模800 个 Python 函数(3-13 行)
两个任务Input Prediction(给输出猜输入)+ Output Prediction(给输入猜输出)
核心特性测代码理解而非生成——能否”人脑执行”代码
指标Exact Match

评价:独特的角度——不写代码,而是读代码。暴露了模型在代码执行推理上的缺陷。


Layer 2: 领域特化——“专项能力深度检验”

7. KernelBench ⭐⭐

维度详情
发布Stanford Scaling Intelligence, 2025 (ICML’25)
规模250 个 PyTorch ML 工作负载
任务给定 PyTorch 操作,生成等效的高性能 CUDA 内核
四个难度等级Level 1 (100 tasks): 单个原语操作
Level 2 (100 tasks): 操作组合
Level 3 (50 tasks): 完整模型层/模块
核心指标fast_p——生成内核正确且比 PyTorch Eager 快 p 倍的概率
当前水位最佳模型 < 20% 的内核能匹配 PyTorch 基线性能
开源✅ GitHub + 完整评测环境

为什么重要:

  • 这是第一个认真测试 LLM 高性能计算代码生成的 Benchmark
  • fast_p 指标同时考量正确性和效率,可调节阈值 p 来控制难度
  • 提供完整的编译器错误、运行时分析反馈,支持迭代优化
  • 模型在利用硬件架构信息(如 SM 数量、shared memory 大小)上几乎无改善

局限:仅覆盖 CUDA/PyTorch 生态,不涉及 Triton/MLIR 等新兴 DSL。


8. SciCode

维度详情
发布2024
特性来自 16 个科学领域的真实科研编程问题(非考试题)
核心挑战需要领域知识 + 数值计算 + 多步推理
指标功能正确性
当前水位模型在复杂科学计算上表现低迷

评价:弥补了”代码 Benchmark 都是 CS 题”的偏见。物理模拟、化学计算、生物信息学对 LLM 是全新挑战。


9. MLE-bench

维度详情
发布OpenAI, 2024
规模75 个离线 Kaggle 竞赛
任务端到端机器学习工程——数据处理、特征工程、模型训练、提交
指标Kaggle 竞赛排名百分位
当前水位Agent 能在部分竞赛中达到前 50%

评价:最接近”ML 工程师日常”的 Benchmark。但 Kaggle 竞赛本身有套路化问题。


10. RE-Bench

维度详情
发布METR (前 ARC Evals), 2024
核心目标评估 Agent 进行 AI R&D(研究与开发)的能力
特性长时间跨度任务(数小时级)+ 与人类专家直接对比
指标任务完成度 + 与人类 baseline 对比
差异比 MLE-bench 更聚焦于研究性任务而非工程性任务

评价:AI 安全领域最关注的 Benchmark 之一——直接回答”AI Agent 能否自主做 AI 研究”。


11. FullStackBench

维度详情
发布字节跳动 / M-A-P, 2024
核心特性全栈编程 + 多语言评测(不限于 Python)
覆盖前端、后端、数据库、DevOps 等全栈场景
语言16+ 语言
指标pass@1

评价:弥补了大部分 Benchmark 只测 Python 的短板。全栈视角更贴近真实开发。


Layer 3: 仓库级修复与推理——“软件工程实战”

12. SWE-bench 家族

这是当前影响力最大的 Benchmark 家族,已分化为多个变体:

变体规模语言核心特性当前最高分问题
Verified500 任务Python人工验证子集~81%⚠️ 严重数据污染;顶部饱和
Pro ⭐1,865 任务多语言Scale AI 运营;抗污染;更难~46% (标准) / ~57% (自定义)脚手架差异大
Multimodal617 任务JavaScript视觉 UI 相关 bug 修复待稳定需截图/前端渲染能力
Multi-SWE1,632 任务7 种语言多语言真实 issue 修复待稳定字节跳动 Seed 主导

关键转折:OpenAI 于 2026 年 2 月正式宣布 SWE-bench Verified 退役,承认数据污染问题。行业重心转向 SWE-bench Pro。

SWE-bench Pro 为什么更好:

  • 使用 GPL + 专有代码,训练时难以泄露
  • 平均每个任务修改 107 行 × 4.1 个文件(Verified 只改 1-2 个文件)
  • SEAL 平台标准化脚手架(250 轮限制),公平对比

Layer 4: 端到端工程——“从零到一”

13. NL2Repo-Bench ⭐⭐

维度详情
发布字节跳动 Seed, 2025.12
输入一个自然语言需求文档 + 空工作区
输出完整可安装的 Python 库(多模块、有依赖、有测试)
评测真实 pytest 测试套件的通过率
当前水位最强模型平均测试通过率 < 40%
任务来源具有模块化架构和 pytest 测试的真实 Python 库

典型失败模式(论文详细分析):

  1. 过早终止——Agent 在完成少数文件后就停止
  2. 全局连贯性缺失——各模块接口不匹配
  3. 跨文件依赖脆弱——import 链断裂
  4. 规划不足——在数百个交互步骤中迷失方向

为什么重要: 这是目前最接近”给需求文档,交付可运行软件”的评测。揭示了长程推理是 Coding Agent 的核心瓶颈。


14. Commit0

维度详情
发布2024.12
规模54 个核心 Python 库
任务从 commit 0 开始,实现整个库(通过单元测试验证)
核心理念”Can you create a library from scratch?”
差异于 NL2Repo提供了目标库的完整测试套件作为规范

评价:与 NL2Repo-Bench 互补——后者给需求文档,Commit0 给测试套件。都指向同一个能力:从零构建。


15. WebApp1K

维度详情
发布ONEKQ Lab, 2024
规模1,000 个挑战,覆盖 20 个应用领域
任务TDD 驱动的 Web 应用开发
特性测试用例同时作为任务提示和验证手段
覆盖领域博客、电商、社交网络、管理后台等

评价:唯一专注于 Web 应用全栈开发的 Benchmark,且规模可观。


16. Terminal-Bench

维度详情
发布2025,已迭代到 2.0
核心任务在真实终端环境中完成复杂开发任务
覆盖文件编辑、git 操作、测试运行、多步调试、环境配置
执行方式Docker 容器中的真实 Linux 终端
当前水位GPT-5.3 Codex / Gemini 3.1 Pro ~77%, Claude Code ~72%

评价:把”用终端干活”独立出来测试,非常实际。大量真实开发工作发生在终端里。


四、横向对比矩阵

Benchmark粒度语言规模抗污染动态更新测效率测理解长程推理前沿模型水位
HumanEval/MBPP函数Python164/974❌❌❌❌❌95%+ ⚠️饱和
EvalPlus函数Python164/974 (80× test)❌❌❌❌❌~85%
LiveCodeBench函数Python+动态✅✅❌❌❌40-60% (Hard)
BigCodeBench函数Python1,140⚠️❌❌❌❌~70%
Aider Polyglot函数/编辑多语言133⚠️❌❌❌❌~85%
CRUXEval片段Python800❌❌❌✅❌~70%
KernelBench模块CUDA250✅❌✅❌❌<20%
SciCode模块Python多领域✅❌❌✅⚠️低
MLE-bench项目Python75⚠️❌❌❌✅中
RE-Bench项目Python少量✅❌❌❌✅与人类差距大
FullStackBench模块16+ 语言大⚠️❌❌❌❌~65%
SWE-bench Verified仓库Python500❌❌❌❌⚠️~81% ⚠️污染
SWE-bench Pro仓库多语言1,865✅❌❌❌✅~46%
SWE-bench Multimodal仓库JavaScript617✅❌❌❌✅低
Multi-SWE-bench仓库7 语言1,632✅❌❌❌✅待定
NL2Repo-Bench完整仓库Python多✅❌❌❌✅✅<40%
Commit0完整仓库Python54✅❌❌❌✅✅低
WebApp1K完整应用Web 全栈1,000⚠️❌❌❌✅中
Terminal-Bench终端操作多动态✅✅❌❌✅~77%

五、关键趋势

趋势 1: 从”正确性”到”正确性 × 效率”

KernelBench 的 fast_p 指标开了先河:光能跑通不够,还得跑得快。这将扩展到更多领域——生成的代码不仅要正确,还要考虑时间复杂度、内存占用、并发安全。预计会出现更多 EvalPerf 类指标。

趋势 2: 从”补丁”到”从零构建”

SWE-bench 系列测的是”给已有仓库打补丁”,NL2Repo-Bench 和 Commit0 测的是”从零开始建造”。后者才是 Coding Agent 的终极形态——接收需求,交付软件。目前模型在这个维度上还远远不够(< 40%),这是未来 2-3 年的主战场。

趋势 3: 从”Python Only”到”多语言+多模态”

演进代表
Python OnlyHumanEval, MBPP, SWE-bench
多语言Multi-SWE-bench (7 语言), Aider Polyglot, FullStackBench (16+ 语言)
多模态SWE-bench Multimodal (视觉 bug), 未来: 语音指令→代码

趋势 4: 抗污染成为硬约束

策略代表
持续出新题LiveCodeBench
使用 GPL/专有代码SWE-bench Pro
训练截止日期后的代码Terminal-Bench 2.0
Mutation TestingSaving SWE-Bench (对测试用例做变异)

OpenAI 正式承认 SWE-bench Verified 数据泄露并推动退役,标志着行业达成共识:不抗污染的 Benchmark 就是失效的 Benchmark。

趋势 5: Agent 架构成为隐变量

同一个模型在不同脚手架下分数差距巨大(SWE-bench Pro: 标准脚手架 46% vs 自定义脚手架 57%)。Benchmark 需要标准化”Agent 基建”,否则测的是脚手架工程而非模型能力。SEAL 平台和 Sigmabench 正在朝这个方向努力。


六、推荐评测组合

根据不同目的,推荐以下组合:

场景 A:选模型(基座模型选型)

Aider Polyglot + LiveCodeBench + BigCodeBench

理由:测原始代码能力,不依赖 Agent 框架。

场景 B:评 Coding Agent(端到端能力)

SWE-bench Pro + Terminal-Bench + NL2Repo-Bench

理由:覆盖修复→终端操作→从零构建三个维度。

场景 C:评 GPU/HPC 代码生成

KernelBench + 自建领域 Benchmark

理由:KernelBench 是唯一成熟的 GPU 内核评测。

场景 D:评科研编程能力

SciCode + RE-Bench + MLE-bench

理由:覆盖科学计算、AI R&D、ML 工程三个方向。


七、展望:下一代 Benchmark 应该长什么样

7.1 短期(6-12 个月内大概率出现)

  1. KernelBench → 更多硬件后端:扩展到 Triton、MLIR、Metal/WebGPU,覆盖不只是 NVIDIA 生态。
  2. NL2Repo → 多语言版本:目前只测 Python,Java/Go/Rust 的仓库级生成评测是空白。
  3. SWE-bench Pro → 更大规模 + 更多语言:1,865 题仍然不够,且需要覆盖更多的软件领域(嵌入式、移动端)。
  4. 实时动态 Benchmark 平台化:LiveCodeBench 的模式会扩展到仓库级——持续从新的 GitHub Issue 中提取任务。

7.2 中期(1-2 年内值得押注)

  1. 协作式 Benchmark:测试多个 Agent 协同完成一个项目(PR Review Agent + Coding Agent + Testing Agent)。目前所有 Benchmark 都假设一个 Agent 干所有事。
  2. 增量式开发 Benchmark:不是”一次性生成”,而是测试 Agent 在持续迭代中维护和演进代码库的能力——更接近真实软件开发周期。
  3. 成本效率 Benchmark:同一个任务,不同模型/Agent 的 Token 消耗和延迟差多少?SWE-bench Pro 上花 100 美元和 1 美元解同一道题,体验差距在哪?
  4. 安全性 Benchmark:生成的代码有多少安全漏洞?目前没有 Benchmark 系统性测试这个维度。

7.3 长期(需要根本性创新的方向)

  1. Cross-Repo Benchmark:跨多个仓库协调修改(改了底层库,上层依赖也要同步调整)。这是真实大型工程的日常,但目前没有任何 Benchmark 触及。
  2. Human-in-the-Loop Benchmark:Agent 能否有效与人类协作?什么时候该问人、什么时候该自己干、如何处理模糊需求?这比纯自动化更接近现实。
  3. 自我进化 Benchmark:Agent 能否从自己的历史错误中学习,在同系列任务上越做越好?目前所有 Benchmark 都是无状态的。

八、结论

代码 Benchmark 正经历从”考试”到”实战”的转型。三个核心判断:

  1. 函数级已死:HumanEval/MBPP 失去意义,LiveCodeBench 是唯一值得跟踪的函数级评测。
  2. 仓库级是主战场:SWE-bench Pro + NL2Repo-Bench 定义了 2026 年的能力边界。前沿模型在修复任务上 ~46%、在从零构建上 < 40%,还有很大空间。
  3. 效率维度刚起步:KernelBench 打开了一个全新维度——不止正确,还要快。这个方向会向更多领域扩散。

对从事大模型预训练/中训练的研究者来说,这些 Benchmark 指向一个清晰的数据信号:模型在长程规划、跨文件一致性、性能优化三个维度上的训练数据严重不足。未来的训练数据工程需要有针对性地补齐这些能力。