· 王思腾 · AI Agent · 11 分钟阅读

AI Agent 架构原理(三):工程落地——记忆、规划、评估与护栏

Demo 能跑和生产可用之间隔着一整套工程体系。本篇聊聊 Agent 落地绕不开的几个环节:上下文与记忆管理、规划与反思、工具接口(ACI)设计、可观测性与追踪、离线/在线评估,以及安全护栏与人机协作。

Demo 能跑和生产可用之间隔着一整套工程体系。本篇聊聊 Agent 落地绕不开的几个环节:上下文与记忆管理、规划与反思、工具接口(ACI)设计、可观测性与追踪、离线/在线评估,以及安全护栏与人机协作。

本系列第三篇。前两篇讲了 Agent 的原理(ReAct 循环)和架构模式(工作流 / 自主 Agent / 多智能体)。这一篇谈最难的部分:如何把一个“能跑的 demo”做成稳定、可信、可维护的生产系统。

大模型能力在快速进步,但真正决定 Agent 成败的,往往是外围工程:上下文怎么管、错误怎么发现、质量怎么度量、风险怎么兜底。以下是落地时绕不开的六块拼图。

一、上下文与记忆管理

LLM 的上下文窗口有限且有成本,而任务可能跨越很多步骤和会话。记忆通常分三层:

层级内容实现方式
短期记忆当前任务的对话、工具调用与结果直接放在上下文窗口里
工作记忆/草稿中间结论、待办清单外部“记事本”(scratchpad)或状态文件
长期记忆跨会话的用户偏好、历史事实向量库 / KV / 数据库,按需检索注入

关键工程实践:

  • 上下文压缩(compaction):对话变长后,用一次 LLM 调用把早期历史摘要成简短状态,替换掉冗长原文,避免上下文爆炸。
  • 按需检索:长期记忆不要全塞进 prompt,而是根据当前任务检索最相关的几条注入(本质是面向记忆的 RAG)。
  • 结构化状态:把“已完成 / 待办 / 关键事实”显式写成结构化状态(如任务清单),比让模型在长文本里自己找更可靠。
  • 引用而非搬运:大段外部内容存外部,上下文里只放引用和摘要,需要时再取。

二、规划与反思

纯 ReAct“走一步看一步”在长任务上容易迷路或反复。工程上常用两种增强:

  • 先规划后执行(Plan-and-Execute):先让模型产出一份任务计划(子任务清单),再逐项执行;执行中可根据反馈动态修订计划。这比每步都重新决策更有全局观。
  • 反思(Reflection):在关键节点让模型(或另一个评估者)回顾“刚才做的对不对、有没有更优路径”。典型如:
    • 代码 Agent 跑测试,测试失败就把报错喂回去让它自己修;
    • 一个调用负责执行,另一个调用负责批判(对应第二篇的“评估者-优化者”模式)。

规划与反思的本质,是给 ReAct 循环加上“全局目标”和“自我纠错”两个反馈回路,显著降低多步任务里的错误复合累积。

三、工具与 ACI:把接口设计好

Anthropic 的经验很反直觉:他们打磨工具花的时间比打磨主提示词还多。 工具是 Agent 与世界交互的接口(Agent–Computer Interface),其质量直接决定可靠性。

好工具的设计原则:

  • 像给初级工程师写文档:名称直白、语义清晰,参数描述包含用途、格式要求、示例和边界;多个相似工具尤其要写清区别。
  • 选择对模型友好的格式:让模型写起来不容易出错。例如要求绝对路径而非相对路径(避免模型切换目录后出错);避免让它在 JSON 里转义大段代码、或手工数行号写 diff。
  • 给模型“思考预算”:在要求它输出结构化结果前,留出足够 token 先推理,别把它逼进死角。
  • 防呆(Poka-yoke):通过参数设计让错误难以发生。
  • 返回可验证的地面真相:工具应返回真实、结构化的结果(API 响应、执行输出、报错信息),让模型据此纠错。
  • 大规模实测迭代:用大量样例跑,观察模型在哪些工具上犯错,再针对性改进描述和参数。

工具生态上,优先复用标准化协议(如 MCP),避免重复造轮子。

四、可观测性与追踪

Agent 是多步、多工具、带循环的非确定性系统,“出了问题为什么错”极难靠肉眼复现。因此可观测性是生产前提:

  • 全链路追踪(tracing):记录每一步的思考、工具名、入参、返回、耗时、token,形成一棵可展开的执行树(类似 LangSmith / OpenTelemetry 风格)。
  • 结构化日志:每次工具调用、状态流转、模型决策都落日志,便于回放和投诉/事故复盘。
  • 关键指标监控:任务成功率、平均步数、工具调用失败率、重试次数、延迟、成本(token),并设告警。
  • 重放能力:给定输入和轨迹,能复现 Agent 当时的决策路径。

没有追踪的 Agent 就像没有日志的线上服务——你只能“感觉它不太对”,却无法定位。

五、评估(Evaluation)

LLM 系统无法靠传统断言覆盖所有输出,必须建立专门的评估体系:

  • 离线评测集:沉淀一批有代表性的任务 + 期望结果(或判定标准),每次改提示词/换模型/改工具后回归跑一遍。
  • 可程序化验证的优先用程序:代码 Agent 用单元测试是否通过判定;结构化输出用 schema 校验;有标准答案的用规则比对。
  • LLM-as-judge:对开放式输出,用另一个模型按明确标准打分(注意评估模型自身的偏差,必要时人工校准)。
  • 在线指标:真实任务成功率、用户采纳率、人工接管率、重试/放弃率。
  • 分层评估:分别评估单工具调用是否正确、单步推理是否合理、端到端任务是否完成。

核心心法是:把“改了之后到底变好没有”变成可度量的事。Anthropic 反复强调——先做最简单的方案,用评估驱动迭代,只在数据证明有效时才增加复杂度。

六、护栏与人机协作

自主性越高,越需要边界。生产 Agent 通常分层设防:

  • 输入/输出护栏:独立的并行调用做内容安全与合规审查(第二篇“并行”模式),拦截越界请求与不当输出。
  • 权限最小化:工具按风险分级——只读操作可自动执行;写操作、删数据、付款、发消息等高风险动作必须人工确认。
  • 沙箱隔离:代码执行、文件操作放在受限沙箱里,网络/资源配额受控。
  • 停止条件与预算:设置最大步数、最大耗时、最大花费,防止死循环和成本失控。
  • 人在环中(Human-in-the-loop):在关键检查点暂停请求确认,遇到不确定或阻塞时升级给人工。
  • 幂等与可回滚:工具动作尽量幂等,重要操作可撤销。
  • 失败兜底:模型/工具超时时优雅降级(回退到简单规则、转人工),而不是整体崩溃。

七、一个生产 Agent 的参考架构

生产 Agent 参考架构:接入层、编排层、能力层、记忆层,以及贯穿全链路的治理层侧栏

八、系列总结

三篇下来,AI Agent 的全貌可以浓缩成几句话:

  1. 原理:Agent = LLM + 工具 + 记忆 + 反馈闭环,自主行为的内核是 ReAct 推理-行动循环;
  2. 架构:按任务确定性选择复杂度——工作流(链/路由/并行/编排/评估)→ 自主 Agent → 多智能体,简单优先;
  3. 落地:靠上下文/记忆管理、规划反思、精心设计的工具接口、全链路可观测、系统化评估和分层护栏,把 demo 变成可靠产品。

最后回到 Anthropic 的三条原则:保持简单、过程透明、打磨好工具接口。Agent 的强大不在于架构多花哨,而在于每个环节都可度量、可纠错、可信任。

参考资料:Anthropic《Building Effective Agents》、OpenAI《A Practical Guide to Building Agents》、Model Context Protocol 官方文档、ReAct / Reflexion 相关研究。

本文由 AI 辅助创作,所有内容仅供交流与参考。
分享:
返回博客
落地案例:用 AI Agent 自动写周报,2 小时变 10 分钟

落地案例:用 AI Agent 自动写周报,2 小时变 10 分钟

团队每周要汇总十几个项目的进展,过去靠人翻群聊、查工单、看提交记录,动辄两三个小时。我们用一套“固定流水线 + 局部用模型”的自动化流程,把它压到 10 分钟出初稿。这篇完整拆解这个真实案例的架构、为什么不用自主 Agent、人机怎么分工、踩过的坑和成本,并沉淀出一套可复制到其他办公场景的方法论。

AI Agent 架构原理(一):从大模型到自主智能体

AI Agent 架构原理(一):从大模型到自主智能体

大模型本身只会“生成文本”,Agent 却能自主规划、调用工具、根据反馈纠错。本系列第一篇从最基础的问题入手,讲清 Agent 到底是什么:增强型大模型、ReAct 推理-行动循环,以及模型、工具、记忆、规划四大核心能力。

智能体开发(Agent):构建能自主执行任务的 AI 系统——从“会说话”到“会做事”

智能体开发(Agent):构建能自主执行任务的 AI 系统——从“会说话”到“会做事”

聊天机器人只会“说”,智能体(Agent)能“做”——它能理解目标、拆解任务、调用工具、根据反馈自我修正,直到把事办成。本文讲清 Agent 与普通 LLM 对话的本质区别、自主执行的闭环(感知-规划-行动-观察)、工具调用与函数执行、记忆与状态管理,以及从简单脚本到可靠 Agent 的落地路径与护栏设计。