遇见数据集

EvoCode-Bench

收藏
github2026-05-28 更新2026-05-31 收录
官方服务:

资源简介:

EvoCode-Bench是一个用于评估编码代理在多轮迭代交互中的性能的基准数据集。它包含26个有状态编码任务和227个评估轮次,每个任务在5-15轮中保持相同的工作空间和代理会话,通过累积可执行测试检查新要求和仍有效的先前要求。数据集模拟真实编码场景,其中后续轮次继承早期的实现决策、依赖关系、文件布局、API选择和测试行为,采用故障停止评分机制。

EvoCode-Bench is a benchmark dataset for evaluating the performance of coding agents in multi-turn iterative interactions. It consists of 26 stateful coding tasks and 227 evaluation turns. For each task, the same workspace and agent session are maintained across 5 to 15 rounds, and both newly proposed requirements and previously valid ones are verified via cumulative executable tests. The dataset simulates real-world coding scenarios, where subsequent turns inherit early implementation decisions, dependencies, file layouts, API selections, and test behaviors, and adopts a fail-stop scoring mechanism.

创建时间:
2026-05-03
原始信息汇总

EvoCode-Bench 数据集概述

核心定位

EvoCode-Bench 是一个评估编码智能体在多轮迭代交互中保持项目功能正确性的基准测试。它包含 26 个有状态的编码任务227 个评估轮次。每个任务在相同的工作区和智能体会话中持续进行 5-15 轮,累积的可执行测试会同时检查新需求和之前仍然活跃的需求。

任务分类

基准测试按两个维度组织任务,表格中每个单元格报告 任务数 / 轮次数

工程活动 探索型 契约型 文档驱动型 总计
构建 9 / 80 3 / 37 1 / 7 13 / 124
规格演化 1 / 8 1 / 7 1 / 7 3 / 22
审查 3 / 21 1 / 7 1 / 9 5 / 37
迁移 3 / 29 1 / 7 1 / 8 5 / 44
总计 16 / 138 6 / 58 4 / 31 26 / 227

任务格式

每个任务包含以下结构:

  • task.toml:元数据、轮次数、变更类型
  • instruction.md:顶层任务说明
  • environment/:共享的 Docker 环境(Dockerfile)
  • round_N/:每个轮次包含:
    • instruction.md:该轮的用户请求
    • solution/solve.sh:该轮的参考变更
    • tests/test.sh:截止到该轮的累积测试

三个核心约束

  • 持久化工作区:同一 Docker 容器承载跨轮的文件、依赖和生成产物
  • 连续智能体会话:智能体接收连续的用户请求序列,而非独立提示
  • 累积测试:第 i 轮验证所有从第 1 轮到第 i 轮仍然活跃的需求,回归错误会被立即捕获

评估框架

  • 使用专用的 Harbor 多轮评估框架(基于 Harbor 的多轮分支)
  • 支持轮次边界编排、持久化 Docker 工作区状态、连续智能体会话状态、累积验证器切换、参考快进、快照/恢复链路、失败停止奖励聚合

评估指标

  • MT@4:任务所有轮次中,智能体在最多 4 次尝试中每轮最佳得分的平均值
  • SR:单轮通过率,在参考快进先前轮次后评估
  • Comp:至少一次尝试中完成所有轮次的任务比例

主要结果(论文数据)

智能体 MT@4 SR Comp
Claude-Opus-4.7 54.0 76.7 42.3
GPT-5.5 52.4 74.4 38.5
Claude-Opus-4.6 44.0 78.9 34.6

结果显示,大多数智能体的 SR 超过 MT@4 22-40 个百分点,表明孤立解决单轮问题比在跨轮中保持智能体自身工作区正确要容易得多。

与其他项目的关系

EvoCode-Bench 是 Terminal-X 基准测试套件中专注于“迭代”的组件,与 DeepTerminalBench(单轮深度)和 RoadmapBench(版本升级)共同构成完整的基准测试集合。

数据获取

数据集已发布在 Hugging Face 平台,地址为:https://huggingface.co/datasets/UnipatAI/EvoCodeBench

引用

bibtex @misc{shen2026evocodebench, title = {EvoCode-Bench: Evaluating Coding Agents in Multi-Turn Iterative Interactions}, author = {Haiyang Shen and Xuanzhong Chen and Wendong Xu and Yun Ma and Liang Chen and Kuan Li}, year = {2026}, eprint = {2605.24110}, archivePrefix = {arXiv}, primaryClass = {cs.SE}, url = {https://arxiv.org/abs/2605.24110} }

许可证

  • 仓库代码采用 MIT 许可证
  • 数据集条款遵循数据集发布元数据
搜集汇总
数据集介绍
EvoCode-Bench 数据集图片
构建方式
EvoCode-Bench的构建基于Harbor多轮评估框架,精心设计了26个有状态编码任务与227个评估轮次。每个任务通过持续的工作空间和连续的智能体会话,在5至15个轮次中模拟用户需求不断变更的真实开发场景。数据集沿袭了工程活动类型与任务本质两个维度,涵盖了构建、需求演化、代码审查与迁移等核心活动,并与探索性、契约性与文档驱动三类任务交叉组合,形成了覆盖全面的评估矩阵。每轮任务均配备独立的用户指令、参考解决方案与累积测试用例,确保对渐进式需求变化的全面验证。
特点
该数据集的核心特点在于其强调的持久工作空间、连续智能体会话与累积测试三大约束机制。不同于传统单轮基准测试,EvoCode-Bench在连续的交互过程中评估编码智能体的综合能力,后续轮次继承前序实施决策、依赖关系与测试行为,任何回归问题都会被立即捕获。数据集采用失败停止评分策略,一旦某轮出现回归,后续轨迹即被终止,从而真实反映智能体在多轮迭代中保持项目功能性完整的能力。
使用方法
使用者需首先克隆Harbor多轮评估框架并配置Docker环境,随后从Hugging Face下载数据集任务目录并置于指定路径。通过设置OpenAI兼容的模型端点与环境变量,即可使用提供的脚本运行单任务或全任务评估。数据集的验证脚本可确保任务与轮次数量的完整性,而预定义的评估协议支持标准的多轮评估与单轮快速前向两种模式,最终通过计算MT@4、SR与Comp等指标获得智能体在迭代交互场景下的综合表现评估。
背景与挑战
背景概述
EvoCode-Bench是一个于2026年由UniPat AI团队(包括Haiyang Shen、Xuanzhong Chen等研究者)构建的多轮迭代编码智能体评估基准。该基准的核心研究问题在于,现有代码评估基准大多局限于单轮规范与一次性验证,无法捕捉真实软件开发中需求持续演变的迭代本质。EvoCode-Bench通过设计包含26个状态化编码任务和227个评估轮次的多轮交互场景,要求编码智能体在保持工作空间和代理会话连续性的前提下,逐步响应不断变化的用户需求,并确保累积性可执行测试的通过。该基准在软件工程领域具有重要影响力,其提出的持续会话评估范式填补了多轮交互式编码能力评测的空白,为研究编码智能体的长期记忆、回退抑制与需求追踪能力提供了标准化平台。
当前挑战
EvoCode-Bench面临的核心挑战首先在于领域问题层面,即如何精准评估编码智能体在多轮迭代交互中的综合能力。传统单轮测试无法暴露智能体在长期会话中因决策积累导致的回归错误,而EvoCode-Bench的失败停止评分机制使得任一环节的缺陷都会中断后续轨迹,这对智能体的鲁棒性提出了极高要求。其次,在构建过程中,研究人员需要精心设计跨轮次累积测试用例,确保每个新需求不破坏先前已满足的旧需求,同时维持工作空间内文件、依赖与生成物的一致性。此外,持续代理会话的编排、持久化Docker环境的状态管理以及多轮验证器的累积测试切换,均对评估框架的实现复杂度构成了严峻挑战。数据集还需应对不同工程活动(如构建、演进、审查、迁移)与需求类型(探索性、契约性、文档驱动)的组合,进一步加剧了任务设计的多样性与难度。
常用场景
经典使用场景
在代码智能代理领域,传统基准测试往往局限于单轮指令生成与静态评估,难以捕捉真实软件开发中需求迭代与代码演进的动态过程。EvoCode-Bench应运而生,其经典使用场景聚焦于多轮交互式代码会话的评估体系。该基准涵盖26个有状态的编码任务,共计227个评估轮次,每个任务在5至15轮次中维持统一工作区与代理会话,通过累积测试验证新需求的同时确保先前需求依然有效。这种设计使得EvoCode-Bench成为衡量代码代理在持续交互中保持项目功能一致性与演进能力的黄金标准,尤其适用于终端型代理在多轮软件开发场景下的性能评估。
实际应用
在实际软件工程领域,EvoCode-Bench的评估范式直接服务于智能代码助手的产品化落地。通过在模拟持续开发环境中检验代理对代码库的维护能力,该基准可有效筛选出能够处理需求蔓延、重构迁移与代码审查等真实工作流的编码系统。例如,在企业级应用开发中,具备高MT@4多轮完成率的代理能显著降低因功能回归导致的返工成本;在代码迁移场景下,代理需保持后续轮次中原有逻辑的正确性,这与金融或医疗系统的合规更新需求高度契合。此外,该基准支持Harbor框架的无缝集成,使得部署于实际开发流水线的代理可在持续交付过程中实时验证其长期维护效能。
衍生相关工作
EvoCode-Bench作为Terminal-X基准套件的核心迭代组件,与DeepTerminalBench(单次深度)和RoadmapBench(版本升级)形成互补体系,共同构建了代码代理全维度评估生态。其多轮交互框架已催生出Harbor多轮评估系统,该系统正式支持多步骤任务格式与快照恢复机制,为后续研究提供了标准化的评测基础设施。基于该基准的早期实验揭示了SR(单轮通过率)与MT@4(多轮中位数)之间高达22-40个百分点的性能差距,直接推动了针对长期记忆保持与抗干扰机制的代理架构创新,如基于状态回放的注意力衰减机制与渐进式知识蒸馏等方法的涌现。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务