首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >深度解读Agent Harness的六层架构模型

深度解读Agent Harness的六层架构模型

作者头像
匙亮旭
发布2026-06-17 20:58:26
发布2026-06-17 20:58:26
130
举报

最近,Agent Harness Engineering这个词突然就火了起来,其实,只要是做过生产级智能体,这种工程化思维肯定一直都在潜移默化中设计并使用,只是一直没有权威的机构或人提出来Harness这个词而已。

关于Harness这个词的翻译,有人称之为外骨骼,也有人称之为马具,也有人称之为驾驭,大家的叫法都不同,并且现阶段也没有一个统一的标准,因为Harness只是一种智能体的实现方式、或者说实现的思想、实现的架构模式又或是设计模式。所以,对于Harness Engineering这个词,我们这里,用市面上比较认可的一种叫法,称之为驾驭工程吧。

Harness这个概念的出现,唤起了大家一个共同的问题:为什么大家用的是同一个GPT或Claude大模型,别人做出来的Agent活就干的好,运行的就稳定,而我的智能体却那么拉垮。。。其实,我感觉,这问题听起来,有点扯,就像大家都用一样的工具,肯定有人用的好,有人用的差,使用者对于工具的理解和使用技巧的差异就是根因。

那Harness我用一句话进行总结的话:Harness = Agent - Model,模型决定Agent的智商上限,Harness决定Agent的交付下限。

下面,从我的角度,将一个成熟的Agent Harness拆成六层架构。(现在业界应该没有统一的标准)

第一层:上下文管理层

核心问题:如何让模型在有限的窗口里,看到此刻应该看到的东西。

现在,虽然大模型支持的上下文各厂商都卷到200K甚至1M token了,但我们依然不能把所有context都一起扔给大模型,原因有三个:

1、长上下文衰减:模型在中间段的注意力会明显下降,这就是大家所说的Lost in the middle效应。

2、成本爆炸:这个不用多说了,每次调用都带着几十万token,你可以想想多少钱。

3、噪声干扰:无关信息太多,模型会抓不住重点。

解决方案:

1、动态组装上下文:每一轮对话前,根据当前任务动态检索相关文件、历史决策、工具输出。

2、上下文压缩:当上下文接近上限时自动摘要早期对话,释放空间。

3、分层加载:核心指令常驻,工作记忆按需加载,长期记忆按查询拉取。

4、结构化切片:把大文件切成语义块,用embedding或关键词检索按需注入。

第二层:工具与执行层

核心问题:如何让模型能精准地调用工具。

模型输出的本质是文本,要使文本可以动起来,必须依赖工具调用,所以这一层决定了Agent的物理能力边界。

工程实践:

1、工具描述的精确性:工具名、参数schema、描述文案,每一个字都会影响模型的调用准确率。

2、执行沙箱:代码执行、Shell命令、浏览器等操作都需要隔离环境。

3、工具执行结果的结构化反馈:执行成功/失败、错误信息、输出摘要,都要以模型能理解的方式回传。

4、MCP协议:正在已成为业界默认的标准协议。

第三层:编排与规划层

核心问题:面对一个复杂目标,如何把任务拆解成模型能一步步执行的动作序列。

这一层是Agent从【单轮问答】升级为【多步任务执行】的关键,可以解决复杂任务。

工程实践:

1、ReAct循环:Reason(思考)→ Act(行动)→ Observe(观察)→ 再思考,这是最经典的单Agent循环。

2、Plan-and-Execute:先生成完整计划,再逐步执行,中途可重规划,Claude Code的Plan Mode就是这个思路。

3、多Agent协作:主Agent负责统筹,子Agent负责专项任务,例如一个负责搜索、一个负责写代码、一个负责审查。

4、任务图(Task Graph)调度:把任务拆成DAG,有并行、有依赖,像CI/CD流水线一样执行。

第四层:状态与记忆层

核心问题:如何让Agent记得自己是谁、做过什么、还要做什么。

这是Agent和Chatbot最本质的区别之一,就是Agent有状态。通常可以将状态层根据时间维度可以分成三类:

1、工作记忆(Working Memory):记录当前任务的状态、当前执行到哪一步、中间变量等。

2、会话记忆(Session Memory):本次会话的完整历史、用户偏好、已做的决策等。

3、噪声干扰:无关信息太多,模型会抓不住重点。

在具体工程实践上:

1、向量记忆库:用embedding存储历史经验,检索相似场景。

2、结构化记忆文件:例如CLAUDE.md、AGENTS.md这种,把稳定知识固化成文件,每次会话自动加载。

3、状态快照与恢复:长任务中断后能断点续传。

4、设计TODO系统:规划TODO任务清单,把计划物化成可追踪的状态。

第五层:评估与观测层

核心问题:如何知道Agent到底在干什么,干得好不好。

这一层往往都不受重视,但是却特别重要,因为你需要知道Agent卡在哪一步了,哪个工具调用失败了,为什么选了这条错误的路径,上线之后,换了新模型,效果是提升了还是下降了。

工程实践:

1、全链路Tracing:每一次模型调用、工具调用、上下文变化都要可追溯。

2、结构化日志:打印带有trace_id、span、token消耗、延迟、成本的结构化事件。

3、自动化Eval:用测试集定期回归,监控准确率、完成率、幻觉率的变化。

4、LLM-as-a-Judge:用更强的模型去评估Agent输出的质量,实现规模化自动评估。

5、在线A/B测试:不同prompt、不同模型、不同工具组合的真实对比。

第六层:安全、约束与失败恢复层

核心问题:当Agent做错事、卡死、或被诱导时,谁来踩刹车。

这一层是Harness的安全带和气囊,越是能力强、权限大的Agent,这一层就越不能省。

工程实践:

1、权限控制:哪些命令可以自动执行,哪些必须人工确认。

2、资源约束:最大token数、最大轮数、最大工具调用次数、最大执行时长,防止Agent陷入无限循环。

3、输入输出审查:Prompt注入防御、敏感信息脱敏、输出内容合规。

4、失败重试与降级:工具调用失败时的重试策略、降级策略、兜底策略。

5、断点恢复:长任务被打断后,能不能从上一个checkpoint继续,而不是从头开始。

6、人机协同(Human-in-the-Loop):关键决策节点强制人工介入。

-------

为什么同样的模型,同样的业务,但做出来的Agent差异那么大,本质上是:模型平等,但Harness不平等。

虽然模型在快速迭代,能力在不停的刷新,但Harness是可以积累的工程资产,无论上下文管理、工具集成、状态持久化、观测体系、安全约束上的投入,都会在下一代模型上持续受益。

(正文完)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-04-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 极客e家 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档