Agent 学习路线:从 ReAct 到微型框架实现

很多人学 Agent 时,都会遇到同一个问题:

看了不少文章、论文和框架,但知识总是碎的,拼不成一套完整的方法论。

原因通常不是你学得少,而是学习路径不对

Agent 不是一个单点技术,而是一类系统:它同时涉及推理、规划、工具调用、记忆管理、状态控制和评估迭代。

如果只看论文,会偏理论;如果只看框架,会偏用法;如果只做 demo,会偏局部技巧。想真正理解 Agent,必须按系统工程的方式来学。

这篇文章给你一条更稳的路线:

概念框架 → 论文脉络 → 工程实现 → 评估迭代 → 产品落地


一、先建立 Agent 的总框架

先不要把 Agent 理解成"会聊天的 AI"。

更准确地说,Agent 是一个能感知、思考、行动、记忆、反思的闭环系统

你以后看任何论文、框架、项目,都可以先对照这 5 个核心模块:

  • 感知(Perception):输入任务、上下文、环境状态、工具结果
  • 思考(Reasoning / Planning):如何分解任务、决定下一步
  • 行动(Acting / Tool Use):调用工具、访问系统、执行操作
  • 记忆(Memory):短期上下文、长期知识、任务状态
  • 反思(Reflection / Evaluation):结果是否正确,是否需要修正

二、论文怎么读:按问题驱动,而不是按热度

Agent 论文很多,但不建议你按年份或热度乱读。

更有效的方法是:每篇论文都围绕同一组问题来读

  1. 它解决 Agent 的哪个核心问题?
  2. 它引入了什么机制?
  3. 这个机制比之前好在哪里?
  4. 它的失败模式是什么?
  5. 它适合什么任务,不适合什么任务?

这样读下来,你得到的不是零散结论,而是一张"Agent 机制地图"。


1)ReAct:理解"思考"和"行动"为什么要交错

ReAct 是理解 Agent 的第一篇关键论文之一。

它回答的不是"模型能不能推理",而是:

为什么推理和行动要交错进行?

它背后的核心思想是:

  • 只思考,不行动:容易空想、幻觉、脱离环境
  • 只行动,不思考:容易乱试、缺乏目标感
  • 思考---行动---观察---再思考:能让模型基于反馈不断修正
你要自己回答的问题
  • 如果模型先长篇推理再统一行动,会出现什么问题?
  • 如果模型连续调用工具而不反思,会缺少什么?
  • 交错式闭环如何帮助修正错误?
一个适合动手的练习

选一个简单任务,例如:

  • 查 3 个来源对比一个事实
  • 检索资料并总结
  • 输出结构化答案

分别实现三种方式:

  1. 一次性回答
  2. 先规划后执行
  3. ReAct 交错式

再比较它们在以下维度的差异:

  • 错误率
  • 可解释性
  • 工具利用效率

2)Plan-and-Execute:理解任务为什么要先拆解

这类方法主要解决一个现实问题:
复杂任务不能一步完成。

你要理解的是:

  • 为什么需要先把任务拆成子目标
  • 为什么规划和执行分离后,系统会更可控
  • 为什么有些任务必须先想清楚再做
一个适合动手的练习

拿一个稍复杂的任务,比如:

  • 调研某个行业并输出报告
  • 分析一份长文档并总结结论

做两种版本:

  1. 直接让模型一次输出
  2. 先生成计划,再逐步执行

对比它们在下面这些方面的表现:

  • 计划是否可执行
  • 结果是否稳定
  • 中途是否容易偏航
  • 任务是否更容易修正

3)Memory / Retrieval:理解上下文不等于记忆

很多人第一次做 Agent 时,都会把"上下文窗口"误认为"记忆"。

实际上,这两者不是一回事。

  • 上下文窗口:临时工作区
  • 记忆系统:显式保存和检索任务信息的能力

你要理解:

  • 为什么上下文窗口有限
  • 为什么 Agent 需要显式保存状态
  • 为什么"记住什么、忘掉什么"本身就是设计问题
一个适合动手的练习

给 Agent 加一个最基础的 memory 模块,保存:

  • 当前任务目标
  • 工具调用历史
  • 失败原因

然后比较:

  • 有记忆版本
  • 无记忆版本

看哪一个更稳定、可恢复。


4)Reflection / Critic:理解自我检查为什么重要

很多 Agent 第一次输出时并不可靠。

因此,在执行链路里加入检查步骤,往往很有价值。

这类方法的核心问题是:

模型做完一次后,怎么判断自己做得对不对?

你要理解:

  • 为什么很多 Agent 第一次输出不可靠
  • 为什么增加一步检查通常能提升质量
  • 反思不是"自我感动",而是校验机制
一个适合动手的练习

在 Agent 后面加一个 critic 步骤,让它检查:

  • 目标是否完成
  • 工具返回是否可信
  • 输出是否符合格式

观察它对最终结果的实际影响。


三、工程实现:手搓一个微型 Agent 框架

如果你想真正理解 Agent 框架底层在做什么,最有效的方式不是直接上大型框架,而是自己实现一个微型 Agent 框架

它不需要复杂,但要完整。

你要确保它真的跑通了一个闭环。


微型框架最少要有这些模块

  • LLM 调度器:负责向模型发请求
  • 工具注册器:注册可调用工具
  • 循环执行器:负责执行"思考 → 行动 → 观察 → 再思考"
  • 状态对象:保存目标、历史、工具结果
  • 终止条件:判断何时结束
  • 日志模块:记录每一步轨迹

最小执行流程

  1. 用户输入任务
  2. Agent 生成一个 action
  3. 如果 action 是工具调用,就执行工具
  4. 把工具结果作为 observation 加回上下文
  5. 再让模型判断下一步
  6. 直到满足终止条件

这就是一个最小的 ReAct 型执行骨架。


建议实现顺序

第 1 版:单工具调用
  • 一个搜索工具
  • 一个总结工具
  • 一个循环

目标:跑通最小闭环。

第 2 版:多工具路由
  • 让模型从多个工具里选择
  • 加参数校验
  • 加超时处理

目标:理解工具分发和 schema 设计。

第 3 版:状态持久化
  • 记录任务进度
  • 支持中断恢复

目标:理解任务状态管理。

第 4 版:反思模块
  • 加 critic
  • 做质量检查

目标:理解检查与回退机制。


四、评估迭代:Agent 怎么知道自己好不好

Agent 不是静态模型,而是动态系统。

所以不能只看"结果像不像",还要看它是否稳定、可控、可恢复


评估可以分成三类

1. 任务结果评估
  • 最终答案对不对
  • 是否完成任务
  • 是否满足格式要求
2. 过程评估
  • 规划是否合理
  • 工具调用是否正确
  • 是否有无效循环
  • 是否中途偏航
3. 系统评估
  • 延迟
  • 成本
  • 稳定性
  • 恢复能力
  • 失败率

为什么这一层很重要

如果没有评估,Agent 就只能靠感觉优化。

但 Agent 的问题往往不是"答案错了"这么简单,而是过程出了问题,比如:

  • 工具调用失败
  • 循环发散
  • 上下文丢失
  • 目标漂移

这些问题,只有通过评估和日志才能定位。


五、产品落地:Agent 最终要服务真实任务

如果没有产品视角,学到的内容很容易停留在 demo。

你至少要回答这些问题:

  • 这个 Agent 服务谁?
  • 它解决的真实任务是什么?
  • 用户为什么需要它?
  • 它的输入输出边界是什么?
  • 它失败的后果是什么?
  • 它是否需要人工兜底?

比较适合入门的场景

  • 代码审查 Agent
  • 数据分析 Agent
  • 文档调研 Agent
  • 工单处理 Agent

这些场景的好处是:

  • 任务边界清晰
  • 成功标准相对明确
  • 更容易做评估和迭代

六、最容易踩的坑

坑 1:只看论文,不写代码

Agent 的理解来自闭环实现,而不是摘要。

坑 2:一开始就学大框架

大框架会把复杂性藏起来,你会"会用但不懂"。

坑 3:只看成功案例

你一定要观察失败案例,尤其是:

  • 工具调用失败
  • 循环发散
  • 目标漂移
  • 上下文丢失

坑 4:没有评估

没有测试集和指标,就很难知道 Agent 是真的变好了,还是只是"看起来更聪明"。


七、建议的 6 周执行路线

第 1 周

  • 画 Agent 总架构图
  • 梳理 Reasoning / Acting / Memory / Reflection
  • 阅读 ReAct

第 2 周

  • 手搓微型框架第 1 版:单工具 + 循环
  • 写日志,记录轨迹

第 3 周

  • 补状态管理
  • 做工具调用参数校验
  • 跑 10 个简单任务测试

第 4 周

  • 阅读 Plan-and-Execute、Reflection 相关论文
  • 在框架里加入计划步骤和 critic

第 5 周

  • 加入记忆模块
  • 做中断恢复和任务持久化

第 6 周

  • 选一个垂直任务
  • 做评估集
  • 对比无 Agent、简单 Agent、ReAct Agent 的效果

八、总结

如果你想真正把 Agent 学成体系,最有效的方法是:

  1. 用概念框架把 Agent 拆成模块
  2. 用论文理解每个模块的设计动机
  3. 用微型框架把机制落成代码
  4. 用评估集验证效果
  5. 用真实任务做产品化落地

Agent 的深度理解,不来自"看了多少内容",而来自你是否真正打通过一次完整闭环。


相关推荐
百度Geek说2 小时前
你写的 Skill,及格了吗?
人工智能
suke2 小时前
马斯克 600 亿美元收购 Cursor!史上最贵「分手费」100 亿,xAI 代码能力要起飞了
人工智能·ai编程
mit6.8242 小时前
越使用 AI,越不担忧
人工智能
前端双越老师2 小时前
为什么现在 RAG 越少越少提及了
人工智能·agent
RFID舜识物联网2 小时前
RFID耐高温标签:汽车喷涂线智能追溯的破局之道
大数据·人工智能·科技·物联网·安全·汽车
ai产品老杨2 小时前
架构实战:基于 GB28181/RTSP 多协议兼容的 AI 视频中台——支持源码交付与边缘异构部署
人工智能·架构·音视频
前端技术2 小时前
华为余承东:鸿蒙终端设备数突破5500万
java·前端·javascript·人工智能·python·华为·harmonyos
xiami_world2 小时前
国内外4大流程图工具深度横评(2026年):从架构、协作、AI能力看选型决策
人工智能·ai·信息可视化·流程图
传说故事2 小时前
【论文阅读】RADAR:通过语义规划与自主因果环境重置的闭环机器人数据生成
论文阅读·人工智能·机器人·具身智能