Harness 不是一个服务大众的产品。通俗来说,Harness 是将工程学的思维,落地成范式束缚于Agent上,让Agent能够更规范、更稳定的工作。
今年 AI 圈是非常躁动的,除了全民养龙虾,Harness 也在技术圈掀起了不小的波澜。
与open claw不同的是,Harness 不是一个服务大众的产品。通俗来说,Harness 是将工程学的思维,落地成范式束缚于Agent上,让Agent能够更规范、更稳定的工作。
想象一下在广袤的草原上,一群骏马飞快的驰骋着,它们就是 AI,有时候难免会跑偏。此时一位猛男,拿着马具跳到马背上,三下五除二就让骏马一直沿着正确的道路飞奔!
这个马具就是 Harness!👉 套马的汉子,你威武雄壮~
> 关于Harness更具体的定义可以参考以下文献: OpenAI Harness 深度长文、Harness Engineering即控制论
今天笔者的核心:详细拆解 Harness 工程的设计和落地
同时,也会把这套实践开源,让每个开发者都能快速用上 Harness,解决“万事开头难”的哲学难题
开源项目地址:github.com/WxqKb/cow-h…
你的 [Star] 将是我的核动力✨
Software Process Improvement(SPI)
前面我们讲到,Harness 简单理解就是让AI 大模型能严格按照软件工程的体系,执行方案分析设计、代码开发、测试验证等流程,从而高效完整的完成工作。
这次 Harness 的搭建,使用软件工程中一个比较标准的体系: 《软件过程改进闭环》
立项决策 → 需求规划 → 评审规范 → 实施验证 →复盘改进
在整个工程中,我们把复杂的需求拆解为以下环节,从而契合CMMI 与 敏捷Scrum 的迭代研发标准框架:
Decisions → Plans → Reviews → Specs → Verifications → Retros
软件工程标准专业名词
所属体系
decisions
基线决策 / 变更决议 / 技术决策
CMMI、敏捷
plans
迭代规划 / 项目计划 / 里程碑计划
敏捷Scrum、软件工程
specs
需求规格说明(SRS) / 技术规范 / 基线规范
软件工程、CMMI
reviews
同行评审 / 阶段评审 / 质量门禁评审
CMMI、ISO软件工程
verifications
验证 Verification (V)
CMMI
retros
过程复盘 / 迭代回顾 / 流程改进回顾
Scrum、SPI
Harness 的搭建,需要把这些软件流程落成约束范式,把每一个环节都拆细,比如:
csharp
core层是核心的约束
routing 路由表会判定用户的任务属于 SPI 的哪个流程,进而决定使用什么工具和流程
runBooks 执行手册会说明哪些环节使用什么技能
artifacts 会约束过程产物的规范,并且沉淀成项目级别的知识库;
verification 会规定验证和准入标准
init 层,支持一句话,让 AI 在你的项目中部署 Harness,将工具适配层、入口文件等投射到你的项目根目录中。
entrypoints,AI 执行指令时是会先找到项目目录下的入口文件。
- adapters:AI 编码工具的适配层,需要指定主流工具严格进入入口文件,进入 Harness 约束
#### 3. 一些粗浅的设计理念
你完全可以根据自己的实现,去修改 Harness 约束**约束的设计思维,必然与时俱进**项目拷贝
把cow-harness 项目 fork/ download 下来,通过 git submodule 引导你的项目中(或者直接把cow-harness 文件夹放在项目中)
阅读 README,执行 init,这一步 AI 会:
不要手工阅读和执行每一步,请务必相信 AI 比我们做的好。直接把下面这段话发给 AI:
bash
3. 开始执行任务
重启 AI 终端,开启你的 cow-harness 之旅
## 五、自我 QA 环节
接入之后,是不是所有任务都必然会走到 harness 约束中?
答:理论上是的,但是我们会判断这个任务的量级,小任务会直接放行
harness 的约束能否达到 100%?
答:否!harness 也是软约束,你甚至可以理解成是 prompt 超集,在实践中我们正常的提问都可以命中,同时我们在产物中明确说明了推理过程中使用了那些技能
这个项目的目的是?
答:核心只有一个:帮助部分同学解决 Harness “万事开头难”的问题。这是个非常简单的基础建设,你开始之后可以轻松随意植入自己想法,去约束 AI,加入新的技能包
如何加自己的技能包?
答:能用开源的尽量用开源的,社区的 Star 和实践踩坑,能让你少走很多弯路。内部自定义的 Skills,请用 skills-create 这个官方技能包去创建
如果用了 Harness 还是不理想怎么办?
答:如果有更好的,那么换了cow-harness。这终归是一个软约束,模型能力的提升能让我们当下的约束被取代。然而往下探究,当 prompt 约束不够了,就需要干涉到更底层,比如 Agent 内部的编排逻辑,比如构建你公司项目的知识库,等等
在实践过程中,笔者会不断优化cow-harness的建设,核心目标是更向一人公司靠拢:
Harness 之后,也许我们会再往知识图谱、RAG 向量化、垂类模型训练、Agent 编排逻辑和执行拓扑等方向去学习,分享。
本文转载自:AI Harness 企业级落地实践(一)