AI时代的缰绳:揭秘Harness如何驾驭大模型
1、Harness是什么
最近,harness这个概念在AI界的热度很高,他到底是一种新的理念还是某种范式呢?今天我们一起来聊一聊,从这个单词的本身意思来看,可以有“马具、控制并利用”的含义,针对其动词含义:通常指的是控制某种强大的力量,例如自然力量、人的技能等,来为自己服务。
在AI领域,尤其是Agent领域,Harness指的是一整套用于“驾驭”大模型,使其能够稳定、安全、有效的完成实际任务的基础设施、工具以及工程实践。
可以用一个公式来表示:Agent = LLM + Harness
LLM:就像一个智力超群的领袖,拥有强大的推理、生成以及理解能力,但他的局限就是他是静态的、被动地;
Harness:就好比连接马和车厢的缰绳、挽具、控制系统。他为模型提供了结构、方向、约束和工具,让模型的无限潜力转换为有目的、可执行的行为。
我们之前还有一个公式:Agent = LLM + Memory + Tools + Planning + Action
怎么样,经过对比是不是可以简单理解为Harness = Memory + Tools + Planning + Action
2、Harness包含什么部分
一个典型的Harness系统通常包含以下核心模块,

它的本质是对AI的管理:
- 目标设定与流程设计:明确告知AI要做什么以及做的规范和边界;
- 工具接入:为AI接触现实提供手和脚,例如搜索网络、执行代码;
- 记忆与上下文管理:根据长短期记忆帮助AI记住关键信息;
- 权限与安全:划定AI的禁区,确保执行高风险操作必须经过人工授权;
- 评估与反馈:检验AI的执行结果,并且不断优化规则。
3、Prompt的相关
我们都知道Prompt分为系统提示词以及用户提示词,针对用户提示词就是用户与AI交互的直接输入,是一段临时的、对话式指令,并且指令只在当前对话中有效,任务完成后指令也就结束。
比如:“帮我总结一下这篇文章的主旨思想”
4、Skill的相关
skill是将复杂的、需要重复执行的固定任务,封装为一个标准化的、可复用的模块。就好比一本写好的标准化作业程序,里面详细规定了完成某种任务的步骤、规范和工具。特点就是持久化、可复用、模块化;
比如:skill:中文分词(封装jieba调用+参数校验+结果清洗)
5、三者关系
先通过一个表格大致体会一下:
| 维度 | Prompt | Skill | Harness |
|---|---|---|---|
| 核心目标 | 单次交互的指令。任务描述、约束条件、Few-shot示例等 | 封装好的复用能力。包含文件、脚本、工具以及执行逻辑 | 系统级的运行与治理架构。记忆管理、工具使用、反馈循环、安全界限等 |
| 作用范围 | 单轮对话 | 单任务、可跨轮 | 全生命周期、系统级 |
| 解决问题 | 模型理解偏差 | 重复写prompt、工具调用混乱 | 幻觉、不可复现、违规 |
| 产出内容 | 一段提示文本 | 封装好的能力函数 | 完整的系统架构、流程、规则 |
这三者不是替代关系,而是互相包含与支撑的关系。接下来通过一个模拟场景来了解:
让AI帮你写代码并部署
(1)Harness环境层
- 首先,给AI分配一个独立的Git Worktree,防止弄乱主代码仓库;
- 它会挂载memory,了解之前的编码爱好等;
- 设定安全护栏,规定AI禁止执行 rm -rf等危险指令;
- harness复杂搭建平台,确保AI在安全、可控的环境运行。
(2)Prompt触发层
- 用户输入:“帮我在这个模块里加一个用户登录的内容”;
- 他告诉大模型当前的具体目标。
(3)Skill能力层
- AI分析prompt后发现这是属于后端开发任务;
- 自动加载关于后端开发的skill,这个skill里规定了必须先写测试用例,再写代码,最后运行并检查;
- skill提供了执行任务的具体步骤和工具调用权限。
(4)Harness再次介入
- AI写完代码之后,harness自动运行测试;
- 如果测试失败,harness捕获错误日志,将其作为上下文反馈给LLM,让其修正;
- 任务完成后,harness提交代码并给用户反馈。

一句话理解:Harness是骨架,Skill是肌肉,Prompt是神经信号。只有在骨架稳定、肌肉有力、信号清晰的条件下,AI智能体才能真正成为生产力。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)