智谱AI/CC-Bench-trajectories
数据集数据集查看器文件和版本Pull Requests讨论
下载使用量0

CC-Bench 轨迹概述

为评估 GLM-4.6 在真实场景中的智能体编码能力,我们以 Claude Code 作为智能体编码测试平台,开发了 CC-Bench-V1.1。在 CC-Bench-V1.0 的基础上,我们新增了 22 个更具挑战性的编码任务,并针对 Claude-Sonnet-4、GLM-4.5、Kimi-K2-0905 和 DeepSeek-V3.1-Terminus 进行了全面评估。该基准包含 74 个编码任务,涵盖前端开发、工具开发、数据分析、测试和算法实现等领域,所有模型的完整智能体轨迹均被记录。

测试数据集

我们的评估数据集包含 74 个编码任务,分为六大类别:

类别描述数量任务 ID
Frontend Development使用 HTML5、CSS3、JavaScript 开发轻量级前端游戏和工具171-7, 55, 56, 62-69
Application Development使用 React、Node.js、Next.js、TypeScript、Go、iOS 开发管理系统、聊天系统、工具、移动应用278-22, 53, 54, 57-61, 70-74
UI/UX Optimization界面样式设计、用户体验优化、布局改进1323-35
Build & Deployment项目构建、测试、部署相关问题解决436-39
Data Analysis数据处理、统计分析、可视化540-44
Machine Learning聚类、语音分析、图像处理、图像识别845-52

评估方法

  1. 环境设置
  • 隔离测试环境:每个任务在全新容器中运行,环境独立,并拉取相应代码分支,确保测试无干扰。
  • 模型配置:Claude Code 在任务目录中启动,配置各模型的 ⁠base_url 和 ⁠api_key。
  1. 多轮交互式测试流程
  • 初始提示:人工评估者输入预定义的任务提示,启动问题解决过程。
  • 迭代交互:基于中间输出,评估者与模型进行多轮对话,逐步调整输入以推动问题解决。
  • 公平性保证:每个任务由同一名评估者使用一致的交互策略在所有模型上进行测试。
  1. 评分与判定
  • 主要标准 - 任务完成度:根据预定义的完成标准进行量化评分,以确定 GLM-4.6/4.5 与竞争模型之间的胜负/平局结果。
  • 次要标准 - 效率与可靠性:当任务完成度表现持平时,工具调用成功率显著更高或令牌消耗效率更优的模型被判定为获胜方。
  • 最终评估:评估优先考虑功能正确性和任务完成度,而非效率指标,确保编码能力仍是主要评估焦点。

整体性能

IMAGE1

在直接对比中:

  • GLM-4.6 对比 Claude-Sonnet-4:胜率 48.6%,平局率 9.5%,败率 41.9%。
  • GLM-4.6 对比 GLM-4.5:胜率 50.0%,平局率 13.5%,败率 36.5%。
  • GLM-4.6 对比 Kimi-K2-0905:胜率 56.8%,平局率 28.3%,败率 14.9%。
  • GLM-4.6 对比 DeepSeek-V3.1-Terminus:胜率 64.9%,平局率 8.1%,败率 27.0%。

GLM-4.6 相较于 GLM-4.5 有所提升,与 Claude Sonnet 4 基本持平(胜率 48.6%),同时明显优于其他开源基准模型。GLM-4.6 在每次交互的 token 使用效率方面也表现出色,token 消耗量低于其他开源模型。具体而言,GLM-4.6 平均使用 651,525 个 token,与 GLM-4.5(762,817 个 token)相比减少了 14.6%,与 Kimi-K2-0905(821,759 个)相比减少了 20.7%,与 DeepSeek-V3.1-Terminus(947,454 个)相比减少了 31.2%,凸显了其在成本效益和资源利用方面的显著优势。

数据集使用方法

可使用 Hugging Face datasets 库加载此数据集:

from datasets import load_dataset

# Load the dataset
dataset = load_dataset("zai-org/CC-Bench-trajectories")

# Access the training data
train_data = dataset["train"]

# View dataset structure
print(train_data)
print(train_data.features)

# Access a specific trajectory
trajectory = train_data[0]["trajectory"]
model_name = train_data[0]["model_name"]
task_category = train_data[0]["task_category"]

数据集结构

该数据集包含以下字段:

  • id:每条记录的唯一标识符
  • task_id:编码任务的 ID(1-74)
  • trajectory:完整的 Claude Code 交互轨迹
  • model_name:AI 模型的名称(GLM-4.6、Claude-Sonnet-4、GLM-4.5、Kimi-K2-0905、DeepSeek-V3.1-Terminus)
  • task_category:任务的类别(application_development、build_deployment、data_analysis、frontend_development、machine_learning、ui_optimization)
  • user_messages:轨迹中的用户消息数量
  • assistant_messages:轨迹中的助手消息数量
  • total_input_tokens:消耗的总输入 tokens 数
  • total_output_tokens:生成的总输出 tokens 数
  • total_tokens:总 tokens 数(输入 + 输出)
  • tool_calls:发起的工具调用次数
  • tool_failures:失败的工具调用次数
  • failure_rate:工具调用失败率(百分比)