反思(Reflexion)机制解决什么问题?
让 Agent 对失败自我批评、总结教训再重试 · 面向想做会「复盘」的智能体的开发者面试里问 Agent绕不开这一问一个 Agent 第一次做错了你怎么让它第二次做对很多人的第一反应是再跑一遍或温度调高换个采样。但如果换汤不换药模型往往会重复同一个错误——第一次在第 3 步用错了 API重试还在第 3 步用错同一个 API。这种「一条道走到黑」正是 Reflexion反思机制要解决的核心问题。问题的根重试不等于改进典型的 Agent 循环是「想 → 做 → 看结果」。当结果是失败测试没过、答案错了、工具报错时最朴素的做法是把整个任务原样再来一次。问题在于模型没有我刚才错在哪的记忆下一轮的输入和上一轮几乎一样自然容易走回同一条错路失败信号被浪费了那次失败其实携带了宝贵信息哪一步崩了、报什么错但简单重试把它丢掉了靠随机性碰运气调高温度重采样能不能碰对全凭运气且不可复现。Reflexion 的洞见是失败不该被丢弃而该被读懂并变成下一轮的指导。它借鉴了人类的复盘——考砸一次先分析我为什么错写下教训下次带着教训进考场。Reflexion 三步批评、成文、回灌ReflexionShinn 等人 2023 年提出把自我改进拆成三个角色协作的闭环Actor行动者真正去执行任务、产出行动与答案的那个 LLMEvaluator评估器判断这次做得好不好——可以是单元测试、标准答案比对、启发式规则或另一个 LLM 打分产出一个成功/失败信号Self-Reflection自我反思拿到失败信号后让 LLM用自然语言写一段教训——分析这次为什么失败、下次该怎么改。三步走通一轮Actor 做 → Evaluator 评 → 若失败Self-Reflection 生成一段反思文本。这段文本会被存进一块记忆并在下一轮任务开始时拼进 Actor 的提示词里。于是下一轮的 Actor 不再失忆而是带着上次我在解析日期时用错了格式这次要先确认格式这样的教训重新出发。关键中的关键反思结果必须回灌到下一轮的输入。写了一段深刻的教训却没喂回给 Actor等于没写——Reflexion 之所以有效全靠这条教训 → 下一轮提示词的回路。评价—修正循环伪代码把上面的机制落成一段可执行的循环核心就是维护一块reflections记忆并在每轮把它拼回提示词# 评价—修正循环失败 → 反思 → 回灌 → 重试 reflections [] # 记忆累积的历次教训 for attempt in range(MAX_TRIES): # 1) 把历史教训回灌进提示词再让 Actor 执行 prompt task \n过往教训\n join(reflections) trajectory, answer actor.run(prompt) # 2) 评估这次结果测试 / 比对 / LLM 打分 ok, feedback evaluator.judge(answer, trajectory) if ok: return answer # 成功直接返回 # 3) 自我批评读懂这次为什么失败写成一条教训 lesson reflect(task, trajectory, feedback) reflections.append(lesson) # 存进记忆 → 影响下一轮 return best_effort(answer) # 用尽次数返回最好的一次注意伪代码里的三处呼应采分点第 2 步是自我批评的触发判定失败第 3 步是总结教训把失败写成 lesson第 1 步是回灌把 lesson 拼回下一轮 prompt。缺了第 1 步的回灌整个循环就退化成了普通重试。和普通重试、和 RL 微调的区别Reflexion 常被拿来和直接重试以及用强化学习微调模型对比三者定位差别很大做法怎么利用失败是否改权重特点朴素重试不利用原样再跑否易重复同一错误靠运气Reflexion把失败写成语言教训回灌进下一轮提示词否只改上下文/记忆无需训练、即插即用、教训可读可审RL / 微调把成败变成梯度信号更新参数是需大量样本与算力改进沉淀进权重可以把 Reflexion 理解成用语言做的、轻量级的强化学习它不动模型参数而是把经验沉淀在文本记忆里用几乎零成本的方式让 Agent 在同一任务的多次尝试间越做越好。原论文在编程、推理、决策等基准上都验证了它相比朴素重试的明显提升。落地要注意的坑评估信号要靠谱反思质量取决于反馈质量。有可验证的信号能跑的单测、明确的答案时效果最好纯靠 LLM 自评时要防自我感觉良好的误判。反思要具体、可执行我要更仔细没用下次调用前先校验参数类型才有用。提示词里应引导它给出可操作的教训。记忆会膨胀多轮累积的 reflections 会撑大上下文需要设上限、做摘要或只保留最相关的几条。设重试上限不是无限反思就能成功要有MAX_TRIES兜底超限就返回最好的一次尝试。一句话总结Reflexion 解决的是「Agent 失败后一条道走到黑」它让智能体先自我批评判断哪里错了把失败总结成一段自然语言教训再回灌到下一轮的提示词里带着经验重试——不改一个权重就用一块语言记忆实现了越试越对。而这条回路里最不能省的一步永远是把反思结果喂回下一轮。

相关新闻

Linux系统基础12:防火墙管理 新手超详细教程

Linux系统基础12:防火墙管理 新手超详细教程

Linux 防火墙管理 新手超详细教程 目录 Linux 防火墙管理 新手超详细教程 一、先搞懂:防火墙核心基础概念 1. 防火墙管什么?三个流量方向 2. 核心工作逻辑:规则匹配 默认策略 三种基础动作 二、底层核心工具:iptables 1.…

2026/7/15 4:52:59 阅读更多 →
Python实现Live2D桌宠:从模型解析到交互式桌面应用开发

Python实现Live2D桌宠:从模型解析到交互式桌面应用开发

1. 项目概述:为什么用Python玩转Live2D桌宠是个好主意?如果你是一个喜欢在桌面上养点“电子宠物”的开发者,或者对Live2D这种灵动可爱的2D渲染技术感兴趣,那么用Python来实现一个Live2D v3桌宠,绝对是一个既有趣又有成…

2026/7/15 4:50:59 阅读更多 →
Vue.js WebSocket 实战:从零构建企业级实时应用架构

Vue.js WebSocket 实战:从零构建企业级实时应用架构

1. WebSocket与Vue.js的完美结合WebSocket作为一种全双工通信协议,已经成为现代Web应用中实时通信的首选方案。相比传统的HTTP轮询,它能建立持久连接,实现毫秒级的数据推送。我在多个企业级项目中验证过,当需要实现实时监控、在线…

2026/7/15 4:50:59 阅读更多 →

最新新闻

C++命名空间详解:从基础概念到工程实践

C++命名空间详解:从基础概念到工程实践

1. 项目概述:为什么C需要命名空间?如果你刚开始接触C,尤其是在尝试写一个稍微复杂点的程序,或者引入了第三方库之后,大概率会遇到一个编译错误:“error: ‘xxx’ was not declared in this scope”&#xf…

2026/7/15 5:47:19 阅读更多 →
玩机进阶--从“设备内部问题”弹窗到系统核心文件修改的避坑指南

玩机进阶--从“设备内部问题”弹窗到系统核心文件修改的避坑指南

1. 当"设备内部问题"弹窗出现时,到底发生了什么?每次开机看到那个刺眼的警告弹窗,就像手机在对你喊"我生病了"。这个提示通常出现在修改过系统文件或刷入第三方ROM后,它的真实身份其实是Android系统的内核验证…

2026/7/15 5:45:18 阅读更多 →
C#集成Lua脚本:使用MoonSharp实现双向通信与动态逻辑配置

C#集成Lua脚本:使用MoonSharp实现双向通信与动态逻辑配置

1. 项目概述:为什么要在C#里嵌入Lua?如果你是一个C#开发者,尤其是在做游戏客户端、工具软件、或者需要动态配置逻辑的应用时,你肯定遇到过这样的困境:每次修改一个规则、调整一个数值、或者增加一个简单的行为&#xf…

2026/7/15 5:45:18 阅读更多 →
Unity版本与C#语言版本绑定关系详解:从原理到实战升级指南

Unity版本与C#语言版本绑定关系详解:从原理到实战升级指南

1. 项目概述:为什么Unity与C#版本绑定如此重要? 如果你是一个Unity开发者,最近在考虑升级项目,或者接手了一个老项目需要维护,那你肯定遇到过这个让人头疼的问题:项目里用了一个新的C#语法特性&#xff0c…

2026/7/15 5:43:18 阅读更多 →
C++实现线性方程组求解:从算法原理到高性能工程实践

C++实现线性方程组求解:从算法原理到高性能工程实践

1. 项目概述:为什么用C解线性方程组是基本功线性方程组求解,听起来像是数学课本里的老生常谈,但它在工程和科学计算领域,绝对是绕不开的基石。从游戏引擎里的物理碰撞检测、图形学里的坐标变换,到金融模型的风险分析、…

2026/7/15 5:43:18 阅读更多 →
TVA-具身智能:如何跨越电子与原子鸿沟(9)

TVA-具身智能:如何跨越电子与原子鸿沟(9)

前沿技术探索:AI智能体视觉(TVA,Transformer-based Vision Agent)是依托Transformer架构与“因式智能体”理论所构建的颠覆性工业视觉技术,是集深度强化学习(DRL)、卷积神经网络(CNN…

2026/7/15 5:41:16 阅读更多 →

日新闻

YOLO11 改进 - 特征融合 | STFFM空间时间特征融合模块,强化时空互补、抑制噪声,助力小目标检测高效涨点

YOLO11 改进 - 特征融合 | STFFM空间时间特征融合模块,强化时空互补、抑制噪声,助力小目标检测高效涨点

前言 本文介绍了面向红外小目标检测的时空特征融合模块——STFFM,用于增强复杂背景下目标与噪声、杂波的区分能力。该方法通过拼接空间特征与时间/运动特征,并结合通道注意力、空间注意力和残差增强机制,实现对关键语义通道与疑似目标区域的…

2026/7/15 0:01:00 阅读更多 →
YOLO26 改进 - 特征融合 | STFFM空间时间特征融合模块,强化时空互补、抑制噪声,助力小目标检测高效涨点

YOLO26 改进 - 特征融合 | STFFM空间时间特征融合模块,强化时空互补、抑制噪声,助力小目标检测高效涨点

前言 本文介绍了面向复杂背景小目标检测的时空特征融合模块——STFFM。该模块通过空间分支与时间/运动分支的特征拼接,引入通道注意力和空间注意力对融合特征进行自适应筛选,并结合残差增强与通道压缩,突出目标区域、抑制背景噪声。我们将 S…

2026/7/15 0:01:00 阅读更多 →
行星减速机为什么能提高扭矩?从功率守恒到输出扭矩校核

行星减速机为什么能提高扭矩?从功率守恒到输出扭矩校核

一、为什么减速以后扭矩会增大 旋转机械的功率、转速和扭矩之间存在以下关系: T 9550 P n 其中: T为扭矩,单位Nm; P为功率,单位kW; n为转速,单位r/min。 在功率基本不变的情况下:…

2026/7/15 0:03:00 阅读更多 →

周新闻

互联网大厂 Java 求职面试:燕双非的搞笑回答与技术探讨

互联网大厂 Java 求职面试:燕双非的搞笑回答与技术探讨

互联网大厂 Java 求职面试:燕双非的搞笑回答与技术探讨 在一个阳光明媚的上午,互联网大厂的面试官坐在桌前,准备迎接他的面试候选人——燕双非,一个以搞笑和幽默著称的程序员。第一轮提问 面试官:燕双非,作…

2026/7/14 16:53:23 阅读更多 →
车载以太网PMA测试设备选型:示波器、VNA、信号源3类仪器关键参数与预算评估

车载以太网PMA测试设备选型:示波器、VNA、信号源3类仪器关键参数与预算评估

车载以太网PMA测试设备选型:示波器、VNA、信号源3类仪器关键参数与预算评估在智能驾驶和车联网技术快速发展的今天,车载以太网作为新一代车载网络的核心传输技术,其物理层性能直接决定了数据传输的可靠性和稳定性。1000BASE-T1作为当前主流的…

2026/7/14 14:00:13 阅读更多 →
VSCode EIDE 插件 2.0:APM32/STM32 项目迁移实战,5步完成Keil工程转换

VSCode EIDE 插件 2.0:APM32/STM32 项目迁移实战,5步完成Keil工程转换

VSCode EIDE 插件 2.0:APM32/STM32 项目迁移实战指南嵌入式开发领域正经历一场工具链的静默革命。当传统Keil用户首次打开VSCode的扩展市场搜索EIDE时,往往会惊讶于这个看似简单的插件竟能重构十余年的开发习惯。本文将揭示如何用五个精准步骤&#xff0…

2026/7/14 7:15:24 阅读更多 →

月新闻