AI Agent 反思机制全解:单轮反思、多 Agent 互评与 Reflexion 进阶面试指南
文章目录
前言
很多人误以为反思只是重复生成答案,这是面试高频失分误区。本文拆解反思完整闭环,区分两种反思粒度、互评方案,补充工程防循环方案与 Reflexion 长期记忆机制,适配面试答题与项目落地学习。
反思不是"不满意就重新生成"
最常听到的一个说法是"反思就是输出不达标就重来一遍"。这等于把反思当成随机重试,面试官听到这里就知道你没搞清楚核心逻辑。
反思的本质是一个有结构的闭环:生成 → 评估 → 改进。三个环节缺一个都转不起来。
具体来说,反思机制靠两个 prompt 配合工作。第一个是评估 prompt,专门负责找问题——它拿到执行结果之后,按预定维度逐项检查,输出一份结构化的批注,指出哪里不对、为什么不对。第二个是改进 prompt,它接收原始任务、第一步的生成结果和评估批注,做定向修改,而不是从头乱改。
评估 prompt 有两个设计细节决定了整个反思机制能不能真正生效。第一,必须给出具体的检查维度,不能笼统地说"请检查质量"。维度越具体,评估越不走形式。比如代码生成的场景,维度可以是"是否通过类型检查、是否有未处理的边界条件、命名是否遵循项目规范"。第二,必须设置一个 PASS 出口。如果 LLM 检查后觉得没问题,要允许它输出 PASS 并终止反思循环,否则它会为了"找出问题"而强行挑毛病,无限循环。
步骤级 vs 任务级:两种反思粒度
反思可以放在不同层级上,粒度选择直接影响开销和效果。
步骤级反思是每完成一个子步骤就做一次检查。好处是错误发现得早,第一步出错马上纠正,后续步骤都建立在正确基础上。适合步骤之间强依赖、前一步错了后面会全错的任务。代价是每一步多一次 LLM 调用,一个 10 步的任务可能要调 20 次模型,延迟和 token 消耗翻倍。
任务级反思是整个任务执行完之后做一次整体评估。开销小得多,整个任务只多一次 LLM 调用。而且它能发现步骤级看不到的问题:各个步骤单独看都对,但整体结论前后矛盾,或者各部分之间衔接不自然。这种"整体视角"是步骤级给不了的。代价是如果任务中途某步出了大问题,到最后才发现,前面的执行全都白费了。
选哪种看任务特点。步骤之间强依赖、中间出错代价大的(比如多步数学推导),用步骤级。步骤之间相对独立、最终输出的整体质量更重要的(比如生成一份报告),用任务级更划算。
多 Agent 互评:为什么别人看比自查管用
除了单 Agent 自我反思,还有一种效果通常更好的方式:专门设置一个独立的 Critic Agent 来审查执行 Agent 的输出。
原因很简单。单 Agent 自我反思时,评估者和生成者是同一个模型。它在生成输出时形成了一套"内部逻辑",做评估时大概率沿用这套逻辑,对自己输出的错误不够敏感。这种现象叫自洽偏见——不是模型故意放水,而是它压根看不出自己逻辑里的漏洞。
独立的 Critic Agent 没有这个包袱。它的唯一职责就是找问题,视角更客观,更容易发现执行 Agent 自己看不出的漏洞。
互评流程是:执行 Agent 生成输出 → Critic Agent 审查并给出具体批注 → 执行 Agent 根据批注修改 → Critic Agent 再次确认。和人类的代码 review 流程差不多。
什么时候值得加这一步?质量要求非常高的场景:生成代码后让独立测试 Agent 验证、分析报告后让事实核查 Agent 交叉验证。代价是多一个 Agent 的调用成本,系统复杂度也更高。普通场景用自我反思就够了,不要过度工程化。
防死循环:一个容易被忽略的工程要点
反思机制天然有一个隐患:如果评估 prompt 一直不给 PASS,模型就会一直"发现问题→修改→再发现问题→再修改",陷入死循环。
工程上必须硬性设置最大反思轮次,通常 2 到 3 轮。不要指望模型自己停下来。另外,如果连续两轮评估都指向同一个问题但改进没有实质效果,说明这个问题模型自己改不了,需要换策略或者降级处理,而不是继续硬撞。
Reflexion:反思的进阶版
Reflection 解决的是单个任务内的质量提升。Reflexion 更进一步:它把每次任务的失败经验沉淀下来,影响下一次任务的决策。
核心思路是在传统反思闭环外面加一层长期记忆:某次任务中某个步骤反复失败、被反思标注为"不可行"的经验,会被写入一个类似"错题本"的持久化存储。下一次 Agent 遇到相似场景,先从错题本里检索,匹配到相关记录就直接跳过这个方向,避免重复踩坑。
和 Reflection 的区别在于作用域:Reflection 管单次任务内部的质量,Reflexion 管跨任务的经验积累。两者不是替代关系,可以叠加。
面试怎么答
第一个雷是把反思说成"不满意就重新生成",这暴露了没理解反思的闭环结构。
答好的几个要点:
-
- 先说闭环结构:两个 prompt 各司其职,评估 prompt 专门找问题,改进 prompt 做定向修改,缺任何一个都不行
-
- 评估 prompt 的两个关键设计要主动提:具体检查维度 + PASS 出口,缺了前者评估流于表面,缺了后者无限循环
-
- 步骤级和任务级的区别:前者发现得早但开销大,后者能看到整体问题但前期白做的工作难挽回——要说清各自适用场景
-
- 防死循环是硬性要求:最大轮次 2 到 3 轮,不能依赖模型自己停
-
- 多 Agent 互评比自我反思效果好,原因是同一模型对自身有自洽偏见——这个点如果能说出来,加分
最后如果能顺手提一句 Reflexion 的"错题本"机制是 Reflection 的跨任务升级版,结束。
结语
基础反思仅优化单次任务输出,Reflexion 依靠长期记忆实现经验复用,项目可按需组合单 Agent 自查、多 Agent 评审两套方案,同时配置最大迭代轮次规避死循环问题。
更多推荐



所有评论(0)