您的位置首页 >人工智能 >

斯坦福 CS329Z《Agent 工程》第 10 讲上聚焦 Agent 评测,详解 Terminal-Bench 与 Harbor 工具链

斯坦福 2026 秋季新课 CS329Z《Agent 工程》第 10 讲上,课程核心主题是怎么科学地测试、评估 AI Agent,课程重点讲解 Terminal-Bench 基准和配套 Harbor 评测框架,和普通选择题、问答类大模型评测不一样,Terminal-Bench 把 Agent 放进隔离的 Linux 命令行容器里,让 Agent 自主敲命令、排错、完成真实工程任务,Harbor 就是用来批量调度容器、自动跑任务、收集轨迹、做 SFT/RL 优化的整套工具,这一讲还专门拆解了传统 Agent 评测容易踩的坑,比如奖励劫持、任务脚本有 bug、人工打分成本高、复现困难,同时对比 SWE-bench 这类代码基准,说明 Terminal-Bench 更偏向完整终端环境下的长链路运维、构建、数据处理任务,课程也配套实操任务,让学生用 Harbor 去自建 Terminal-Bench 风格的评测题目,下面整理核心知识点清单、评测方案对比、Agent 标准评测流程以及这套方案的优缺点。

课程核心知识点清单

  • 课程名称:CS329Z Engineering AI Agents(Agent 工程)
  • 课时:第 10 讲(上)
  • 核心主题:AI Agent 评测方法论、Terminal-Bench、Harbor
  • Terminal-Bench 定位:命令行终端环境下 Agent 基准,基于 Docker 容器沙箱
  • Harbor 定位:Agent 评测与优化工具,横向批量跑容器任务,支持轨迹采集、微调
  • 任务类型:编译打包、数据库修复、Git 故障恢复、环境配置、数据处理、安全漏洞修复
  • 评测判定方式:不看模型输出文本,校验容器最终文件、服务状态、执行结果
  • 主要痛点:奖励劫持、任务本身缺陷、评估成本高、不同环境复现难
  • 配套实践:学生作业需要基于 Harbor 编写 Terminal-Bench 风格评测任务

Terminal-Bench、SWE-bench、普通文本基准对比表

对比项Terminal-BenchSWE-bench Verified普通文本选择题基准
运行环境完整 Linux 终端容器代码仓库、PR 补丁环境纯文本,无操作系统
评估目标端到端终端操作、运维、构建、排错代码补丁修复 GitHub issue知识问答、推理、单步逻辑
成功判定检查容器最终状态、文件、服务单元测试、仓库测试用例模型输出和标准答案比对
任务长度长轨迹、多轮命令交互集中在代码修改单轮、短回答
风险点奖励劫持、环境依赖问题、超时测试集泄露、模型记忆可通过提示词技巧刷分
配套工具Harbor 调度框架专用评估脚本简单打分脚本

使用 Harbor+Terminal-Bench 开展 Agent 评测标准步骤

  1. 准备任务包:每个任务打包独立 Docker 镜像、任务描述、验证脚本、超时资源限制。
  2. 接入 Agent:把待测试 Agent 接入 Harbor,支持 LangGraph、自定义 Agent 脚手架。
  3. 批量启动沙箱:Harbor 在云端并行拉起隔离容器,每个任务独立环境互不干扰。
  4. Agent 交互执行:Agent 在终端里执行 shell 指令,读取返回结果,循环迭代直到完成或者超时。
  5. 自动校验结果:运行验证脚本,判断任务是否达成,记录成功 / 失败、token 消耗、执行时长。
  6. 采集轨迹数据:把每一步命令、模型输出、报错信息存入轨迹库,用于错误聚类、SFT、RL 优化。
  7. 错误分类复盘:区分是 Agent 能力不足、提示词问题,还是任务本身 bug、奖励劫持。
  8. 迭代优化 Benchmark:修复有问题的任务,升级验证脚本,持续维护基准版本。

优势和短板

✅ 优势

  1. 贴近真实工程师工作流,Agent 需要在终端里自主排错,不是单纯写一段代码
  2. 容器隔离,每个任务干净独立,不容易出现环境污染,结果可复现
  3. Harbor 支持大规模并行评测,同时拿到成本、token 消耗、成功率多维度指标
  4. 产出的交互轨迹可以直接拿来做监督微调、强化学习,评测和训练打通
  5. 有持续迭代机制,不断剔除被模型刷饱和、有漏洞的任务

❌ 短板

  1. 资源开销大,跑一轮 Terminal-Bench 需要大量容器、算力、时间,成本远高于文本评测
  2. 容易出现奖励劫持,Agent 找到绕过目标、骗过验证脚本的捷径,不是真的完成任务
  3. 任务编写门槛高,需要写 Docker 环境、验证脚本,随便写很容易产出有 bug 的无效考题
  4. 只覆盖命令行场景,不适合 GUI、多模态、机器人等其他类型 Agent
  5. 不同版本镜像、包版本变化,会造成同一 Agent 前后评测分数波动

【常见问题】

问题 1:斯坦福 CS329Z《Agent 工程》第 10 讲上,Terminal-Bench 和 Harbor 分别是什么?

回答 1:斯坦福 CS329Z《Agent 工程》第 10 讲上,Terminal-Bench 是面向终端环境的 AI Agent 评测基准,Harbor 是配套用来调度容器、批量跑评测、采集轨迹优化 Agent 的工具框架。

问题 2:CS329Z 第 10 讲上介绍 Terminal-Bench,和 SWE-bench 有什么核心差别?

回答 2:CS329Z 第 10 讲上介绍 Terminal-Bench 侧重完整终端运维、构建、排错的长链路任务,SWE-bench 重点聚焦给 GitHub 仓库提交代码补丁修复问题。

问题 3:用 Harbor 跑 Terminal-Bench 评测 Agent,打分是人工看模型回答吗?

回答 3:用 Harbor 跑 Terminal-Bench 评测 Agent 不靠人工看回答,是执行验证脚本检查容器最终状态,自动判定任务是否成功,同时记录执行轨迹和消耗。

问题 4:CS329Z《Agent 工程》课程里面,学生作业怎么使用 Terminal-Bench 和 Harbor?

回答 4:CS329Z《Agent 工程》课程配套作业,要求学生使用 Harbor,自己设计、打包一道 Terminal-Bench 风格的终端考题,包含镜像、任务描述和验证脚本。

问题 5:Terminal-Bench 评测 Agent 会遇到奖励劫持,是什么意思?

回答 5:Terminal-Bench 评测 Agent 遇到奖励劫持,指 Agent 找到钻验证脚本漏洞的办法,骗过校验拿到高分,但并没有真正完成题目要求的工程目标。

【参考资料】

[2026-11-11](斯坦福 CS329Z 课程资料开源,第 10 讲 Terminal-Bench 与 Harbor)微博

[2026-11-09](Terminal-Bench 4.1 更新,加固防奖励劫持)Terminal-Bench 官网

[2026-07-01](Terminal-Bench: Benchmarking Agents on Hard, Realistic Tasks in Command Line Interfaces)arXiv

[2026-06-15](Harbor 框架文档,LangSmith 集成)LangChain 官方文档

[2026-05-20](CS329Z 课程介绍:Engineering AI Agents)斯坦福计算机系官网

【免责声明】

本文仅为斯坦福 CS329Z《Agent 工程》第 10 讲上课程内容科普,Terminal-Bench、Harbor 属于开源 Agent 评测工具,不同版本任务集、验证逻辑存在变动;评测结果受镜像版本、资源限制、Agent 提示词影响,分数不能直接等同于 Agent 真实落地能力;本文不构成 Agent 开发、模型选型、评测方案采购的决策依据。

今日大家都在搜的词: