Model / Agent / Harness 三者关系

行业核心公式:Agent = Model + Harness

各自定义

Model(模型,大脑)

就是裸大模型(GPT、Claude、Qwen、DeepSeek)。

  • 只做一件事:输入文本,输出文本推理结果。
  • 本身没有循环、不能调用工具、没有记忆、不会主动做事
  • 它可以“表达想要调用工具”的意图,但不会真正执行工具,只是输出一段工具调用格式文本。

类比:一颗高性能CPU,只有计算能力,没有IO、没有操作系统。

Harness(驾驭层/运行时外壳,马具+操作系统)

模型之外整套运行时基础设施,是把裸模型变成Agent的中间层。

Harness主要负责:

  1. Agent循环:模型推理 → 执行工具 → 把观察结果回传给模型,多轮往复;
  2. 工具执行:解析模型输出的工具调用,真实去调用API/文件/沙箱,把结果返回;
  3. 上下文管理:消息裁剪、记忆、持久会话状态;
  4. 安全护栏:权限控制、重试、熔断、终止条件、审计日志;
  5. 编排子任务、异常恢复、决定任务什么时候结束。

类比:操作系统。CPU(Model)再强,没有操作系统,无法读写磁盘、调用外设。

Agent(智能体,完整干活实体)

Agent是最终对外表现出来、可以自主完成多步任务的完整实例。

  • Agent不是模型,也不是框架库;Agent = 推理大脑(Model) + 运行管控外壳(Harness)
  • 用户下达目标,Agent可以自己规划步骤、调用工具、循环迭代直到完成任务。

数据流关系(执行流程)

用户需求
    ↓
【Harness】组装上下文、系统提示词,发给 Model
    ↓
【Model】做推理,输出:下一步规划 + 需要调用哪个工具
    ↓
【Harness】接收模型输出,解析,**真正执行工具**(访问外部环境)
    ↓
工具执行结果 → 塞回上下文 → Harness再次送入Model
    ↺ 循环往复,直到Harness判断任务完成,终止循环,返回结果给用户

关键点:Model只负责思考;所有“动作、循环、执行、终止”全部由Harness完成

通俗比喻

  • Model = 聪明的厨师(大脑,会想菜谱)
  • Harness = 后厨整套管理制度+设备+流程(灶台、切菜、审核、止损、排班)
  • Agent = 可以完整出餐的整个后厨团队

厨师再聪明,没有后厨流程设备,他只能口头报菜谱,做不出菜;只有两者合在一起,才是可以交付菜品的Agent。

容易混淆的区分点

  1. Model决定Agent能力上限;Harness决定Agent稳定下限
    换更强模型,如果Harness很差,Agent依然会幻觉、死循环、乱调用工具、提前虚假完成任务。

  2. Scaffolding(脚手架) vs Harness

  • Scaffolding:模型能看见的东西:系统prompt、工具描述、输出格式定义;
  • Harness:运行时执行逻辑:循环、工具真实执行、上下文截断、熔断;

简化说法日常合并进Harness,严格完整公式:Agent = Model + Scaffolding + Harness

  1. Harness≠LangChain/LangGraph框架
    框架库是帮你写Harness的工具库;Harness是你最终搭建出来的运行管控系统。

一句话速记

Model负责想,Harness负责做,两者组合得到Agent。裸模型不能当Agent。


Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐