词元语宙 logo:阴阳鱼与「词」「元」二字 词元语宙
Agent · 智能体 适合 工程师

Agent 架构解剖:规划、工具、记忆、反思

拆解 Agent 的四个核心模块:ReAct 循环、规划分解、工具调用、记忆与反思,以及为什么最简单的循环最可靠。

更新于 2026-09-25 # ReAct# 规划# 工具调用# Agent 架构

ReAct:推理与行动的交替

当前绝大多数 Agent 的骨架,都可以追溯到 ReAct 模式(Reasoning + Acting):让模型交替产生”思考”和”行动”。思考一步(我需要先查库存),行动一步(调用库存查询工具),观察结果(缺货),再思考(查替代供应商)……如此往复。

ReAct 的价值在于把推理显式化了。对照另一种做法——把任务一次性丢给模型、让它一口气输出完整答案——交替式推理让每一步都建立在上一步的真实观察上,而不是模型的想象上。查了库存再决定下一步,与凭空假设库存充足再往下推,可靠性的差距是结构性的。

用《什么是 AI Agent》的术语说:ReAct 就是”感知—决策—行动”循环的一种具体实现,也是目前工程上最主流的实现。

规划:把大任务拆成可验证的小任务

对于复杂任务,一次性进入 ReAct 循环容易迷路——模型走三步就忘了目标。规划(Planning)模块的职责是先分解任务:产出一份明确的子任务清单,再逐项执行,执行中可以修订计划。

规划带来两个工程收益:一是可检查——人可以在执行前审一眼计划,发现方向性错误;二是可恢复——子任务失败时只需重试或调整该步骤,而不是整个任务重来。实践中一个常见坑是过度规划:为简单任务设计复杂的多层计划,反而增加出错面。判断标准是任务长度——三步以内能完成的,直接 ReAct;需要十步以上、且步骤间有依赖关系的,才值得先规划。

工具与记忆:手与脑的分层

工具(Tools) 是模型影响外部世界的唯一通道。工程上的关键不在”能调多少工具”,而在工具的设计质量:单个工具职责单一、入参出参有清晰的 schema、报错信息对模型友好(模型要靠报错文本来自我修正)。工具清单越长,选错工具的概率越高——工具宜精不宜多。工具接入的标准化问题,见《工具调用与 MCP:Agent 的双手与通用接口》。

记忆(Memory) 在 Agent 语境下分两层:工作记忆即上下文窗口,承载当前任务的全部中间状态,窗口内外的取舍直接决定单轮任务的质量;长期记忆跨会话沉淀信息——用户偏好、历史任务结论、踩过的坑。前者的机制与陷阱(注意力稀释、lost in the middle)在《上下文窗口与记忆》中详细讨论;后者需要单独的存储与检索设计,是把 Agent 从”一次性劳务”变成”越用越好用的同事”的关键。

反思与多 Agent 协作

反思(Reflection) 是让 Agent 检查自己的输出:执行结果与预期是否一致?答案有没有幻觉?工程上可靠的做法不是指望模型”内省”(让模型自查自己的答案,效果有限),而是引入外部校验——用确定性的代码校验格式、用第二个模型交叉检查关键结论、用测试用例验证代码产出。反思的本质是把”信任”变成”验证”。

多 Agent 协作指多个 Agent 分工配合:规划者拆任务、执行者干活、审查者把关。它适合真正需要并行或需要不同视角的任务,但每加一层协作就多一层通信开销与出错面。目前的工程现实是:多数”多 Agent 系统”的收益,用单 Agent + 好的工具清单也能拿到。

观点:最简单的循环 + 最严格的护栏

本篇观点:工程上最可靠的 Agent,几乎总是”最简单的循环 + 最严格的护栏”,而不是最复杂的架构。

架构花活(多层规划、动态协作、自主反思)在 demo 里惊艳,在生产里每个环节都是新的失败模式。而一个朴素的 ReAct 循环,配上设计良好的工具、确定性的校验、最小化的权限和人工确认卡点,能覆盖大多数真实业务场景。加复杂度的唯一正当理由是被验证过的需求——先用简单架构跑到撞墙,再针对那面墙加结构。

小结

  • ReAct(推理+行动交替)是当前 Agent 的事实标准骨架。
  • 规划用于长链任务分解,收益是可检查、可恢复;简单任务直接循环即可。
  • 工具宜精不宜多,记忆分工作记忆与长期记忆两层分别设计。
  • 反思靠外部验证而非模型内省;多 Agent 慎用。
  • 可靠性来自简单循环加严格护栏,复杂度只应由被验证的需求驱动。

延伸阅读

同专题更多文章