Agent测试框架Harbor指南

VIPAgent测试框架Harbor指南
Harbor是一个AI Agent单元测试框架,用于自动化测试AI代理在容器环境中的任务执行能力。它支持18+种AI代理,通过沙箱隔离和自动验证机制评估任务完成情况。任务必须具有可编程验证的输出结果,适合代码、数据、系统等可量化任务,不适合创意写作等主观任务。Harbor采用CLI操作方式,核心架构包含Job管理、Trial执行和验证器三个层级,执行流程包括环境启动、Agent执行和结果验证。任务目录包含指令文件、配置文件、Docker环境定义和测试脚本等必需组件,通过测试脚本自动判断任务完成质量。
开通可读全文 ·1.3k 人阅读
最低0.47元/天 解锁文章

Harbor 框架指南

一、Harbor 是什么?

Harbor 是一个 AI Agent 单元测试框架。

通俗理解

想象你要测试一个 AI 编程助手的能力:

传统方式:
你给 AI 出题 → AI 写代码 → 你人工检查代码对不对

Harbor 方式:
你定义任务 → Harbor 自动启动容器 → AI 在容器里执行 → 自动测试验证 → 输出分数

Harbor 就像是给 AI Agent 用的 JUnit/pytest,只不过:

  • 传统测试:测试代码函数
  • Harbor 测试:测试 AI Agent 的行为结果

前提条件:什么任务适合用 Harbor?

核心要求:任务必须有可编程验证的输出结果。

✅ 适合 Harbor 的任务:
├── 代码任务:修复 bug、实现功能、代码重构
├── 数据任务:数据处理、格式转换、数据分析
├── 系统任务:配置服务器、部署应用、编写脚本
├── 安全任务:修复漏洞、渗透测试
└── 科学计算:模型训练、数据分析、仿真模拟

❌ 不适合 Harbor 的任务:
├── 创意写作:写文章、写诗、写故事
├── 主观评价:设计评审、代码风格偏好
├── 开放问答:提供建议、头脑风暴
└── 模糊目标:"优化代码"、"改进体验"(没有明确标准)

为什么? Harbor 的验证机制是执行测试脚本并检查输出文件。如果任务的"正确答案"是主观的或无法编程判断,就无法编写 test.sh。

核心特点

特点 说明
沙箱隔离 每个 Task 在独立 Docker 容器中运行
自动验证 通过测试脚本自动判断任务是否完成
多 Agent 支持 支持 Claude Code、OpenHands、GPT 等 18+ Agent
参考解答 Oracle 直接执行参考脚本,验证任务可解性

快速开始:

# 安装
uv tool install harbor

# 创建任务
harbor tasks init my-task

# 验证任务
harbor run --path ./my-task --agent oracle

二、核心架构与运行原理

架构图

┌─────────────────────────────────────────────────────────────┐
│                        Harbor 架构                          │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌─────────────┐                                            │
│  │  CLI 命令   │  harbor run --path ./task --agent claude  │
│  └──────┬──────┘                                            │
│         │                                                   │
│         ▼                                                   │
│  ┌─────────────┐                                            │
│  │    Job      │  管理多个 Trial,汇总结果                   │
│  └──────┬──────┘                                            │
│         │                                                   │
│         ▼                                                   │
│  ┌─────────────┐                                            │
│  │   Trial     │  单次评估:环境启动 → Agent执行 → 验证打分  │
│  └──┬──┬──┬───┘                                            │
│     │  │  │                                                 │
│     ▼  ▼  ▼                                                 │
│  ┌────┐┌────┐┌────┐                                        │
│  │环境││Agent││验证│                                        │
│  │    ││    ││器  │                                        │
│  └────┘└────┘└────┘                                        │
│                                                             │
└─────────────────────────────────────────────────────────────┘

执行流程

┌──────────────────────────────────────────────────────────────┐
│                    完整执行流程                               │
├──────────────────────────────────────────────────────────────┤
│                                                              │
│  1. 加载 Task                                                │
│     ├── task.toml    → 解析配置(超时、资源、环境变量)        │
│     ├── instruction.md → 读取指令内容                         │
│     └── environment/ → 读取 Dockerfile                        │
│                                                              │
│  2. 启动环境 (Docker)                                        │
│     └── docker build + docker up                              │
│                                                              │
│  3. 安装 Agent                                               │
│     └── Agent 安装需要的工具(如 claude-code CLI)            │
│                                                              │
│  4. 执行 Agent                                               │
│     └── instruction.md → 传给 Agent 作为任务指令              │
│                                                              │
│  5. 验证结果 (Verifier)                                      │
│     ├── tests/test.sh → 上传到容器 /tests/                   │
│     └── 执行测试 → 输出到 /logs/verifier/reward.txt          │
│                                                              │
│  6. 清理环境                                                 │
│     └── docker down --volumes                                │
│                                                              │
└──────────────────────────────────────────────────────────────┘

VIP Harbor Framework Harbor Framework 是开源智能体(Agent)与大语言模型(LLM)评估、调优框架,主要面向代码智能体、容器化仿真场景,支持批量并行实验、基准测试、强化学习轨迹数据生成。 开通可读全文·498 阅读·5 点赞·6 收藏 阅读全文

相关推荐

一文读懂Harbor以及部署实践攻略

❤️ 摘要:Harbor 是一个企业级的云原生容器镜像仓库,由 VMware 主导开发并贡献给 Cloud Native Computing Foundation (CNCF)。它通过为 Docker 镜像提供安全、高效的管理能力,帮助企业简化容器应用程序的交付流程。相比于传统的 Docker Registry,Harbor 提供了更多的企业级特性,如容器镜像仓库之间的镜像复制、用户管理、访问控制、漏洞扫描和镜像签名等功能。

StevenZeng学堂 2万+

Harbor框架:容器化AI代理评估与优化实践指南

在AI代理与模型评估领域,容器化技术正成为确保测试环境一致性与安全性的关键技术。通过Docker容器封装执行环境,评估框架能够实现极致的环境隔离与可复现性,有效解决传统本地测试中因系统状态差异导致的结果不一致问题。这一技术原理不仅保障了评估过程的安全性,防止危险代码影响宿主机,还大幅提升了评估任务的可移植性与部署效率。其技术价值在于为AI代理的功能性验证提供了标准化、自动化的解决方案,特别适用于需要批量测试不同模型、提示词组合的基准测试场景。在实际应用中,此类框架通过预置任务、数据集与验证器的三位一体评估体

weixin_31569671的博客 727

pi-mono:面向生产环境的AI Agent操作系统与可装配智能体工厂

AI Agent并非简单调用大模型的函数,而是一种具备状态管理、工具编排、可观测性与可审计性的业务流程智能体。其核心原理在于将智能解耦为LLM计算资源、标准化工具契约与分层记忆架构,从而支撑高可靠、可回滚、跨角色协同的工程化落地。技术价值体现在54k+原子能力的类型安全组合、声明式工作流编排及全链路可观测性设计,广泛应用于金融风控、医疗分诊、工业预测性维护等强流程场景。本文深入解析pi-mono这一Agent操作系统如何以Process Intelligence为内核,实现从Demo到生产级AI智能体工厂的

weixin_34021089的博客 339

《华为项目管理之道》第1章笔记

performance indicator,KPI)纳入个人绩效承诺书,贯彻结果导向的理念,以向员工。客户需求是华为发展的原动力,为客户服务是华为存在的唯一理由。目经理‘用兵’,依靠市场机制‘调兵’”,打破了人员在功能部门的板结,实现了听得。为管理者选拔的必要条件,项目经理成为人人向往的岗位。《华为项目管理之道》,是新出的华为官方的项目管理书,整个书不错。伴随着项目型组织的建立,华为逐步形成了完备的项目管理流程和制度,从而将业务运。为此,通过改革,重新明确了项目经理承担的经营责任,并开始以项。

jackyrongvip的专栏 2127

机器学习模型系列:随机森林的原理和示例介绍

让我们总结一下与其他监督式机器学习模型相比,随机森林的优缺点。优点在许多真实数据集上已知能提供高度准确的模型。通过结合多个决策树的预测,可以捕捉数据集中的复杂交互和模式。通过自动选择相关特征,可以有效处理高维数据集。与单个决策树相比,不容易过拟合。自助采样和每个节点的随机特征选择有助于减少过拟合并改善泛化能力。可以处理包括数值和分类特征在内的异构数据类型。可以处理缺失值而不需要填充。提供特征重要性的度量。集成中的树可以并行训练,因为每个决策树可以独立构建。模型的泛化误差具有理论上的界限。

数智笔记 1万+

MySQL等保三级合规实践:如何安全配置root账户的本地与受信主机登录策略

本文详细介绍了MySQL在等保三级合规框架下如何安全配置root账户的本地与受信主机登录策略。通过分析root账户的特殊保护需求,提供三种安全加固方案,包括限制访问范围、限定登录IP和完全禁止远程登录,并指导创建安全的远程管理账户。文章还涵盖了密码策略强化、日志审计配置和网络层防护等关键合规要求,帮助用户实现MySQL的等保三级全面合规。

weixin_42522964的博客 259

2021英伟达暑期实习面经(芯片设计)

2021英伟达暑期实习面经(芯片设计前端/DFT) 准备了将近一个月,终于赶在三月的最后一天拿到了offer,暑期实习算是上岸了,后面还有阿里/华为等一些国内公司的面试,但既然拿到了nv的offer,后面的先就当积累面试经验吧~ 网上关于nv的实习or秋招面经很少,硬件岗的更少(约等于没有好吧)。之前准备面试的时候,在网上找了半天,好像就只在牛客网上见过一篇关于nv硬件岗的面经,幸好当时认真看了哈哈。所以既然幸运上岸了,想趁自己还记得,record一下,希望可以帮到有缘人呀~ 好了,废话不多说,开始正题。

Hadleysjtu的博客 1万+

WinServer 2012 R2 搭建 AD 单域多站点 及 DNS各站点的子网掩码排序调整

WinServer 2012 R2 搭建 AD 单域多站点 及 DNS各站点的子网掩码排序调整

一直被模仿,从未被超越 5533

Java对接(BSC)币安链 | BNB与BEP20的开发实践(三)水龙头 WEB3

这一节我们讲一个币安测试链如何获取到BNB、USDT等BEP20数字货币(水龙头)来让我们前期测试开发。如图:我们将创建的地址填入相应输入框,来获取到测试BNB以及其他BEP20数字币。发币可能需要交易等待,请耐心等待即可,交易完成后,币会到达您的地址内。上一节我们用代码来实现BNB转账、BEP20转账、链上交易监控。2.MetaMask(小狐狸)浏览器插件 🪜。使用EDGE浏览器可以在浏览器直接打开。使用Chrome浏览器,请使用🪜打开。基本工作就绪后,即可进行开发测试。3. 测试区块链浏览器 🪜。

大猩猩的专栏 2790

2026华为OD面试题029:勇攀数字高峰

在给定的数字地形图里寻找登山路径,数字代表当前位置的海拔高度。要求从最低海拔出发,不断攀登,最终到达最高山峰。地图保证最低海拔和最高山峰都只有一个。 登山规则: - 路径上的海拔必须严格递增 - 只能向上下左右 4 个方向移动 - 路径必须从最低海拔开始,到最高海拔结束 - 每个地点只能走一次 - 每一步的攀登高度差必须大于 0,且不超过指定值 `K` 输出满足条件的登山路径的数量。

琅嬛福地 110

基于深度学习的生活垃圾检测与分类系统:YOLOv5、YOLOv6、YOLOv7与YOLOv8实现

本项目的目标是开发一个基于YOLO系列模型的生活垃圾检测与分类系统。数据集准备与标注:收集并标注生活垃圾图像数据集。模型训练:使用YOLOv5、YOLOv6、YOLOv7、YOLOv8等深度学习模型训练垃圾分类系统。UI界面设计:设计一个简洁的用户界面,支持图像或视频的上传与垃圾分类结果展示。实时垃圾检测与分类:通过摄像头进行实时垃圾检测和分类。结果展示与保存:展示检测结果,支持用户保存分类后的图像或视频。

YOLO 705

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

上一篇: GitHub AI Agent 开源生态概览
下一篇: 如何利用 AI CLI 工具开发一个 AI Agent 项目
一叶萩Charles
博客等级 码龄9年 268粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一叶萩Charles

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值