你的 AI Agent 真的会做题吗?Harbor评测框架
副标题 :Harbor 开源 Agent 评测框架实测------帮你公平、可重复地考你的 AI,并给出能横向对比的成绩单
标签:#Harbor #Agent开发 #AI评测 #LLM #TerminalBench
你调了一周 prompt,觉得 agent「变强了」,换一组任务却被打回原形;你本地跑通了,一上 CI 就挂,却分不清是 agent 还是环境问题;你想对比 Claude Code 和自研 agent「谁更强」,却拿不出一份能复现的成绩单。
如果你中过上面任何一条,那这篇就是写给你看的。
但先泼盆冷水:多跑几个任务、看它「感觉」能过,并不叫评测。 你真正缺的不是一个更强的模型,而是一个公平、可重复、能把全程录下来的考场------这正是 Harbor 想做的事。
Harbor 是啥
一句话定义 :Harbor 是个开源框架,专门帮你「公平、可重复地考你的 AI Agent」------它把运行环境、题目、判卷脚本、全程录像都管起来,最后给你一份能横向对比的 pass / fail 成绩单。
它不是另一个大模型,也不是一键帮你把 agent 调好的魔法盒。它干的事很聚焦:搭一个标准考场,让被试的 agent 和你的题目在上面公平地跑,并把每一场考的完整过程录下来。
🔑 一句话记住它:Harbor 是考场,不是考官。 出题和判卷都是你带进来的,它只负责跑 + 录 + 记账。这句话是全篇的钥匙,记住它后面都不绕。
它具体给你三样东西:
- 可复现的成绩单:用同一套题反复考,换任务也不怕「打回原形」;
- 隔离沙箱:agent 和环境解耦,本地能过、CI 挂?挂了就是 agent 真退步,不背锅也不甩锅;
- 标准化录像:每一步行为存成可分析、可喂 RL 的轨迹。
🔗 地址(GitHub) :github.com/harbor-fram...
一次评测是怎么跑起来的
不用等下一篇拆源码,先用一张图把骨架立住------你带料、它跑场、脚本判卷、全程录像:

一个类比帮你记住它:Harbor 就像驾照考试中心。考生(你的 Agent)是你带来的,考题和判卷规则(题目自带脚本)也是你带来的;考试中心只负责把场地搭好、几百个考场并行开考、把每个人全程录像,最后给一张 pass / fail 成绩单。它不替你开车,也不替你判这道题对不对,它只是让「考」这件事变得公平、可复现。
记住三句话就够用了:
- ① 编排与隔离是 Harbor 的;
- ② 考生和卷子是你带的;
- ③ 判卷=执行你的脚本,记录=全程录像。
每个零件具体怎么写、轨迹长什么样,留到下一篇。
应用场景:你会在哪些时候需要它
光说「它是考场」有点虚。下面这 5 个场景,几乎每个做过 agent 的团队迟早都会撞上------对照看看你中了几条:
- 横向比武:「Claude Code 和我的自研 agent 谁更强?」用同一套题、同一套判卷把两个都考一遍,直接出能摆一起比的成绩单(pass rate、成本、耗时全有),选型不拍脑袋。
- 发版守门:把 benchmark 接进 CI,每次改完 prompt 或代码自动跑一批,pass rate 掉了就报警。环境被沙箱固定,挂了就是 agent 真退步。
- 换模型 / prompt 前的量化:「升到 4.1 值不值这个价?」「新 prompt 真更好吗?」先在同一组题各跑一遍,用数据说话,而不是发完版才发现「好像变差了」。
- 批量生产 RL 训练数据:做 RL 微调需要先有大量「agent 在真实任务上怎么行动」的记录,Harbor 并行跑成百上千任务、全程录像,直接喂给你的训练管线。
- 论文 / 竞品 claim 复现:别人写「我们的 agent 在 X 上 80%」,你拉一份自己的成绩单验证,不盲信。
一句话:只要你需要「可重复地证明一个 agent 行不行、谁比谁行」,Harbor 就对口。 它不替你写 agent,也不替你训练,只让「考」变科学。
竞品对比:它和别的工具有什么不同
评测工具一大把,Harbor 凭什么是值得你学的那个?一句话:它是少数把「可移植轨迹 + 自带可复现沙箱 + 你自己的判卷脚本当裁判」做成默认组合的框架。
| 维度 | Harbor | Inspect AI(UK AISI) | LangSmith / Langfuse | DeepEval / RAGAS | Terminal-Bench(原生) |
|---|---|---|---|---|---|
| 定位 | Agent 评测 + 优化 harness | 通用 LLM / Agent 评测框架 | 生产可观测 / 追踪 | LLM 单测 / RAG 指标 | 基准数据集 |
| 判卷方式 | 你写的判卷脚本(默认 pass/fail) | 默认模型当评委(也可文本/精确匹配) | 人工 / 断言 / 模型评分 | 断言 + 模型评分 | 判卷脚本 |
| 轨迹格式 | 标准化、可跨工具分析 | .eval 日志 | trace span | 测试报告 | 自带轨迹 |
| 沙箱 | Docker / Modal / Daytona / E2B(隔离、并行) | Docker / K8s / Modal / Proxmox | 无(看你的运行时) | 无 | Docker |
| 锁 Agent? | 否(任意 agent 都能接) | 否 | 否 | 否 | 是(内置) |
| RL 数据 | 一等公民(直接产出) | 非主线 | 否 | 否 | 否 |
| 典型用户 | Terminal-Bench 官方 harness | Anthropic / OpenAI / DeepMind 安全评测 | 工程团队生产监控 | 应用开发者 | 学术 / 竞赛 |
Harbor 真正和别人拉开差距的,就这四点:
- 轨迹可移植:它把「录像」做成了标准格式,你的轨迹能被 Opik、LangSmith、你自己的 RL 管线直接消费,不被框架绑架。别的工具要么锁自己的日志格式,要么只给个分数。
- 判卷脚本当裁判(可执行判定优先):Harbor 默认相信「能跑的判定脚本」,而不是默认让大模型当评委------你要的是「真过没过」,不是「模型觉得你过没过」。
- 接任意 agent,不锁生态:Claude Code、OpenHands、Aider、Codex、自研,都能接进来考,Harbor 不要求你用它的 agent 写法。
- 本就是 Terminal-Bench 2.0 的官方 harness:跑 SWE-Bench、Aider Polyglot 这些主流 benchmark,适配器现成,零摩擦。
怎么选:
- 要横向对比多个 agent、要可复现、要批量产 RL 轨迹 → Harbor 很对味;
- 要安全 / 能力基准、想用现成 200+ 评测、要模型当评委 → Inspect 更成熟;
- 要监控线上 agent 为什么出错 → LangSmith / Langfuse;
- 要给 RAG / 应用写单测 → DeepEval / RAGAS。
这张表是「定位对比」不是「排行榜」。Harbor 不取代 Inspect,两者常搭配用(比如 Harbor 跑 + LangSmith 做可观测)。
两个常见误解
① 把它当成「考官」 ------这是所有人都会犯的错:它是评测工具,所以它来给 Agent 打分。真相就是开头那句话:它是考场,考生和卷子都是你带的,它只搭台、跑、录。Terminal-Bench 每个任务容器里都塞着一段验证脚本,Agent 折腾完 Harbor 执行那段脚本:返回 0 算过,非 0 算挂。Harbor 做的「评分」,本质是忠实的执行器 + 记账员,不是它懂这道题对不对。
② 把它当成「RL 框架」 ------文档里写了「optimizing」「Generate rollouts for RL」,但别被带偏:它是极好的 RL 数据生产端,但本身不是 RL 框架。它替你把 agent 在大量任务上的运行记录「生成出来」(rollouts),但不替你训练:PPO / GRPO 那种训练循环是下游你自己的管线,过程奖励也得你自己造。抽掉 RL,Harbor 照样是个完美的考试中心。
它的边界(诚实地说不适合什么)
- 它不给「为什么过 / 为什么挂」的解释:pass / fail 是稀疏信号,二次分析得靠你回放录下来的轨迹,Harbor 只给录像不给影评。
- 环境一致性得你自己定规范:沙箱选 Docker 还是 Modal、并行度怎么配、跨机器复现,是你要负责的;Harbor 管「跑」,不管「跑的环境长一样」。
❌ 不适合的场景:只想本地跑一次玩具实验、想一个工具从评测到训练全包。
最小上手:三步看清全貌
bash
# 1) 安装(隔离环境,不污染全局)
uv tool install harbor
# 2) 看命令表面,确认当前版本的真实入口
harbor --help
harbor run --help # 当前官方主入口是 harbor run -d <数据集> -a <agent> -m <模型> -n <并发>;版本漂移快,以本机 --help 为准
# 3) 看一条轨迹怎么被记录(先理解数据形态,再谈跑批)
harbor view --help
⚠️ CLI 版本漂移提醒 :Harbor 演进很快,网上旧博文常混用
--config写法。任何命令先harbor run --help看一眼你装的那版真实参数,别照抄别人的。我本机实跑harbor --help,核心动词里没有judge/score,只有run / analyze / view / adapter / dataset / job------一个号称「评测框架」的东西命令行里却没有「评分」二字,恰恰印证了它只录像 + 记账。
跑通这三步,你就有了判断 Harbor「是不是你需要的考场」的全部依据。
总结:你带走的 3 句话
- Harbor 是考场,不是考官。 出题和判卷都是你带的,它只负责跑 + 录 + 记账。
- 它的价值在真实执行信号和全程录像,不是分数。 分数稀疏,轨迹才是 RL 和复盘的金矿。
- 它是评测框架,顺带是 RL 数据端,但不是 RL 框架。 抽掉 RL,它照样是个完美的考试中心。
🗺️ 本专栏路线图(建议收藏慢慢看):
- Ep1 开篇(本文):Harbor 是啥、解决什么、应用场景、竞品对比、一次评测怎么跑;
- Ep2 核心词汇表:Agent、Adapter、Dataset、Trial、轨迹格式、Registry,谁是牢哥谁是小弟;
- Ep3 跑通第一个 benchmark :以 Terminal-Bench 为例,真刀真枪
harbor run一场; - Ep4 自定义题目 + 判卷脚本:把「你的题、你的判卷」接进考场;
- Ep5 轨迹分析 + RL 数据生产:从录像里挖金矿,喂给你的训练管线。
下篇(Ep2)预告:《先搞懂这 6 个词,再看 Harbor》------一张图理清核心词汇,免得你看文档时每个字都认识、连起来不懂。
实测环境:macOS / uv 0.12.x / harbor 2026-08 当前版;文中 CLI 输出均为作者本机实跑,版本漂移请以你本地 harbor --help 为准。
如果这篇帮你把「Harbor 到底是个啥」想清楚了,点赞 + 收藏不迷路 🌟,有问题直接评论区见,想看下一篇也留言告诉我,催更我写得更快。