project
OctoCodingBench - MiniMax开源的Coding Agent评测集
OctoCodingBench是MiniMax开源的针对Coding Agent的指令遵循能力的评测集。OctoCodingBench通过模拟真实软件开发场景,从系统约束、用户指令、项目规范、技能...
OctoCodingBench是什么
OctoCodingBench是MiniMax开源的针对Coding Agent的指令遵循能力的评测集。OctoCodingBench通过模拟真实软件开发场景,从系统约束、用户指令、项目规范、技能调用、历史记忆等多个维度评估Agent是否能严格遵循规则完成任务。与传统仅关注结果的评测不同,OctoCodingBench更注重过程合规性,通过Check-level准确率(CSR)和Instance-level成功率(ISR)两个指标,细致衡量Agent在复杂约束下的表现。评测集包含72个实例,覆盖多种开发场景,推动Coding Agent从“能写代码”向“能规范协作”进化。
OctoCodingBench的主要功能
-
多维度指令遵循评估:从系统约束(如语言风格、工具使用)、用户指令(多轮交互)、项目规范(如代码风格、测试流程)、技能调用、历史记忆等多个维度,全面评估 Agent 是否能严格遵循规则完成任务。
-
分离任务完成与规则遵循:通过 Check-level 准确率(CSR)和 Instance-level 成功率(ISR)两个指标,分别衡量 Agent 在单项约束和全部约束下的表现,揭示 Agent 的过程合规性。
-
真实开发场景模拟:提供 72 个经过精心设计的实例,每个实例包含自然语言用户查询、系统提示、项目文档、技能文档等,模拟真实的软件开发任务环境。
-
冲突检测与解决能力测试:设计包含冲突指令的场景,评估 Agent 在面对矛盾指令时的优先级判断和冲突解决能力。
-
支持多种开发框架:提供多种开发框架(如 Claude Code、Kilo、Droid)的配置和 Docker 环境,确保评测在真实生产环境中进行。
-
二元清单评分:每个评估项都是客观可判定的(通过/失败),确保评测结果的透明性和可重复性。
OctoCodingBench的技术原理
-
多源指令体系:OctoCodingBench 将指令来源分为 7 个类别,包括系统提示、系统提醒、用户查询、项目文档(如 CLAUDE.md、AGENTS.md)、技能文档、历史记忆和工具调用规范。每个类别都有不同的权威级别和约束内容。
-
结构化评估清单:每个评测实例都附带一个详细的结构化评估清单(Checklist),包含多个二元可判定的评估项(Check-item)。评估项覆盖从语言风格到代码实现的各个方面。
-
Docker 环境模拟:为确保评测的环境一致性,OctoCodingBench 提供 34 种不同的 Docker 镜像,每个镜像都模拟了一个真实的开发环境。开发环境包含项目代码、依赖库、测试工具等,确保 Agent 在与实际开发环境一致的条件下运行。
-
LLM-as-Judge 评分机制:用大型语言模型(LLM)作为评分工具,对 Agent 的行为轨迹进行逐项评估。LLM 根据预定义的评估清单,判断 Agent 是否满足每个约束条件,给出通过或失败的判定。
-
数据收集与轨迹分析:在评测过程中,系统会收集 Agent 的完整交互轨迹,包括系统提示、用户查询、Agent 的响应、工具调用等。轨迹数据被用于后续的评分分析。
-
统计与分析:通过计算 CSR 和 ISR 两个指标,对 Agent 的整体表现进行量化分析。CSR 衡量 Agent 在单项约束上的准确率,ISR 衡量 Agent 在所有约束同时满足时的成功率。
OctoCodingBench的项目地址
- HuggingFace模型库:https://huggingface.co/datasets/MiniMaxAI/OctoCodingBench
OctoCodingBench的应用场景
-
Agent 开发与训练:通过标准化评测,优化 Coding Agent 的训练过程,确保在遵循指令和过程合规方面表现出色,不仅仅是生成正确代码。
-
软件工程与开发:评估 Coding Agent 是否遵循项目规范(如代码风格、测试流程),提升代码质量并保障团队协作效率。
-
学术研究与评测:提供标准化基准,比较不同 Coding Agent 模型在指令遵循和过程合规方面的表现,为研究方向提供数据支持。
-
教育与培训:帮助开发者和学生理解 Coding Agent 的行为模式,学习如何设计有效指令,提升其在实际开发中的应用能力。