系列文章目录



前言


一、ReAct

ReAct 本质是一个闭环控制系统

  • LLM 是控制器,tool 是执行器,环境是被控对象,Observation 是传感器反馈。
环节控制论对应作用教材代码体现
Thought状态估计+策略计算基于历史观测,决定下一步动作response_text 中的思考段落
Action控制指令下发调用具体工具(Search/Calculator等)Action: Search[...]
Observation传感器反馈返回环境真实状态,修正模型认知tool_function(tool_input) 返回值
History状态记忆寄存器累积 (a, o) 对,维持上下文连续性self.history.append(...)
  • 用 Mermaid 看清数据及状态如何在循环中累积:

输出 Thought+Action

Finish 答案

ToolName input

返回 Observation

拼接为新 Prompt

用户问题

初始化 Prompt

调用 LLM

正则解析

返回最终结果

调用 ToolExecutor

更新 self.history


二、Plan-and-Solve


三、 Reflection

  • Reflection 不是“多调一次 LLM”,而是认知范式的根本切换
范式认知模式人类类比核心缺陷
Reflection生成-评审-重构闭环写论文→导师批注→修改二稿→终稿成本高,但产出质量呈阶梯式跃升
  1. 角色解耦:LLM 不擅长“自己检查自己”。Reflection 强制将模型拆分为 Generator 创作者Critic 评审员,利用不同 Prompt 激活不同的参数子空间。
  2. 质量驱动 vs 进度驱动:前两种范式追求“完成任务”,Reflection 追求“达到质量标准”。它把任务从开环控制(Open-loop)升级为带监督的闭环控制(Closed-loop with Supervisor)。
  3. 收敛思维:人类会判断什么时候该停止再修改了。Reflection 必须内置收敛判定逻辑,否则会变成无限内耗。

Iteration_Loop

输入任务 Task

调用 Generator 生成 O_0

存入 Memory,触发 Critic

生成反馈 F_i

未达到收敛标准

更新 O_{i+1},存入 Memory

满足收敛条件 (e.g., 无需改进/分数≥阈值/达最大轮次)

输出最终方案 O_final

INIT

EXEC

REFLECT

CHECK_SCORE

REFINE

TERMINATE


总结

更多推荐