ReHarness:面向智能体持续学习的循环式框架 Recurrent Harness for Agentic Continual Learning
在前向读写之上引入反向修订,让智能体积累的经验能在线纠错、随流适应
前置知识
智能体框架
围绕固定 LLM 搭建的运行时脚手架,通过提示模板、记忆库、反思条目等文本状态,把单次文本生成组织成有目标的多步行为。框架本身持有可跨实例持久化的状态,使模型参数冻结的智能体也能随交互积累经验、在线改进,例如 Mem0 的原子记忆库或 ACE 的反思 playbook。
ReHarness 本质上就是一种 harness,本文的全部机制(读、写、修订)都作用在这个文本状态上,不更新任何模型参数。
智能体持续学习与分布偏移
智能体在长交互流上依次处理大量实例,任务定义、输入分布或评分规则会在流中突然改变(分布偏移)。智能体既要利用先前经验提升后续表现(可塑性),又不能被偏移前的旧经验误导(稳定性),这是持续学习经典权衡在智能体场景的体现。
论文的问题设定与全部评测(16 个任务流上的归一化增益、稳定性/可塑性分解)都建立在严格流式持续学习这一设定上。
前向信息流(写-读循环)
现有 harness 演化状态的标准方式:记忆智能体 $\pi_M$ 把上一条轨迹 $\tau_{t-1}$ 提炼成反思 $R_{t-1}$ 写入状态 $h_t$(前向写),下一实例到来时检索相关反思辅助决策 $\pi_D$(前向读)。信息只沿时间正方向流动,写入后的记忆几乎不再根据其下游使用效果被修改。
这是 ReHarness 要修补的对象:论文论证只有前向流的 harness 在分布偏移下会持续被坏反思误导,必须补上反向路径。
归一化增益
论文的主指标:$(r_{\text{method}}-r_{\text{stateless}})/(r_{\max}-r_{\text{stateless}})$,其中 $r_{\text{stateless}}$ 是不带任何 harness 状态的裸模型表现,$r_{\max}$ 是任务原生指标下可达的最优奖励。它衡量方法相对裸模型从流内经验获得的相对提升,便于跨任务、跨原生指标比较。
所有主实验(Table 1 及附录 Table 5-7)与稳定性/可塑性分析均以该指标报告,不理解它就无法正确解读论文中的数字。
文本反向反馈
在不更新参数的前提下,用自然语言形式的反馈修正已积累的知识。先前工作(Reflexion、自动提示工程等)表明语言反馈是有效的学习信号;ReHarness 把它具体化为:用当前实例的轨迹作为证据,去修订当初被检索使用过的旧反思,同时要求新内容必须溯源到旧反思的原始轨迹,防止信息泄漏。
这是全文最核心的机制,理解“反馈是文本、修订要溯源”才能明白 grounding 分析(Table 2)与反事实回放实验(Table 3)的设计意义。
研究动机
现有智能体框架(harness)在持续学习场景下几乎都只依赖前向信息流:记忆智能体在实例结束后把轨迹提炼成反思或记忆写入状态,下一个实例到来时检索它们辅助决策,之后便不再回头修改。论文用排序任务给出具体失败场景:智能体先正确地把 {3, 7, 4} 降序排列,于是写下反思“较大数字优先”;下一个实例却要求升序,这条过度泛化的反思被检索后直接导致错误答案,而新写入的“较小数字优先”并不能清除旧反思——由于查询包含重叠数字,坏反思在后续实例中又被再次检索、再次误导。另一类方法(基于额外训练/验证集优化 harness 状态)需要回放数据或验证集,在严格流式协议(每个实例只出现一次、无训练/验证集、无重复试验)下不可用;而 Claude、GPT、Gemini 等前沿 API 模型不开放参数,梯度更新也走不通。结果是过时记忆与过度自信的反思会在分布偏移后长期驻留在状态里,反复污染后续决策。
本文的目标是本文目标是构建一个能在严格在线流式协议下持续自我修正的智能体框架:每个实例只被观察一次,没有回放、没有验证集、不能更新模型参数,却仍要在分布偏移发生时及时纠正过时或过度泛化的经验。作者希望回答的核心问题是——当某条被检索使用的反思在当前实例上失效时,能否利用这条轨迹作为反馈,把它修订成“如果当初就这样写,本可以避免这次错误”的版本,并把修订结果传播给未来实例。作者在三个持续学习基准(CL-Bench、MemoryBench、MemoryArena,共 16 个任务流)和三个前沿 LLM 骨干(Claude Opus 4.8、GPT-5.5、Gemini 3.7 Flash)上验证,以归一化增益 $(r_{\text{method}}-r_{\text{stateless}})/(r_{\max}-r_{\text{stateless}})$ 为主指标,并要求方法在统计显著性与 token 成本两方面都优于强大的原始上下文基线。
与已有工作不同的是,本文的独特切入是把 harness 状态的演化从“只进不改”变成可循环修订的闭环。与 Mem0、RBank、DoT、ACE 等前向方法相比,ReHarness 第一次让旧反思为其下游失效负责;与 ACE 那类只做增删合并以维持记忆库一致性的 curation 操作不同,修订的依据是当前实例上的实际使用效果而非库内整洁度;与 GEPA-Online 及离线记忆优化工作相比,它既不需要验证集做候选选择,也不需要轨迹回放或梯度。此外,修订被严格约束在文本状态内:当前轨迹只作反馈、不作信息源,任何新内容必须溯源到反思的源轨迹,这一防泄漏约束在同类系统中是新的,使方法天然兼容不开放参数的前沿 API 模型,并在 Table 2 中被量化验证(95.3%–98.7% 的声明保持有据、泄漏率仅 0.8%–2.1%)。
核心方法
直觉上,人改正错误经验的方式不是把新教训记在旧教训旁边,而是回头把旧教训改成对的。ReHarness 把这种“回头改”搬进智能体框架:在前向读、前向写之外增加一个修订智能体 $\pi_R$,观察到当前实例结果后,把本次检索使用过的 $k$ 条旧反思逐条修订。形式化地,设状态 $h_t=\{R_i\}_{i<t}$,检索 $\mathcal{I}_t=\mathrm{Retrieval}(x_t,h_t,k)$(Qwen3-Embedding-8B 取 top-5),决策智能体产出 $y_t=\pi_D(x_t,\{R_i\}_{i\in\mathcal{I}_t})$ 并获得奖励 $r_t$,构成轨迹 $\tau_t=(x_t,y_t,r_t)$;随后修订 $R'_i=\pi_R(R_i,\tau_i;\tau_t)$,$\tau_i$ 是反思源轨迹,$\tau_t$ 只作反馈;最后写出新反思 $R_t=\pi_M(\tau_t;\{R'_i\}_{i\in\mathcal{I}_t})$,状态更新 $h_{t+1}=h'_t\oplus R_t$。三个智能体共用同一骨干,均以只输出 JSON 的提示实现(Figure 5),主实验固定 $k=5$。
核心创新是把“下游使用效果”变成对已存经验的修正信号,在文本状态中实现反向反馈。与传统 stateful harness 最本质的区别在于:旧反思不再是一次写定、终身有效的资产,而是可以被未来证据追溯修改的假设。修订智能体在当前实例结束(无论成败)后,结合反思的源轨迹 $\tau_i$ 与当前轨迹 $\tau_t$,回答“当初这条经验本该如何写才能避免这次失误”:典型操作包括补上源轨迹中被忽略的证据、给过度泛化的结论加适用条件(如把“较大数字优先”改成“仅降序时较大数字优先”)、或把推测性断言标注为未验证。关键约束是溯源:任何新内容必须能被 $\tau_i$ 蕴含,$\tau_t$ 只用来评估与定位问题,防止把当前实例的答案泄漏进记忆。修订后的反思还会作为前向写的示范,让新反思自然继承类似的限定条件(如“较小数字仅升序时优先”),使整个状态向更条件化、更少过度泛化的方向演化。
方法步骤详情
第一步(前向读):给定查询 $x_t$,用 Qwen3-Embedding-8B 从 $h_t$ 检索 top-$k$(主实验 $k=5$)条反思,拼入决策提示的 [RANKED REFLECTIONS] 段,$\pi_D$ 输出符合 schema 的 JSON 答案 $y_t$,环境返回奖励 $r_t$,得到轨迹 $\tau_t=(x_t,y_t,r_t)$。第二步(反向修订):对每条被检索的反思 $R_i$($i\in\mathcal{I}_t$)独立调用一次 $\pi_R$,输入含目标记忆 ID、反思全文、源轨迹 $\tau_i$ 与最新轨迹 $\tau_t$;要求把证据与解释分开、给出适用条件 guidance(为空则初始化、否则精化),并明确规定“内容只源于 $\tau_i$,$\tau_t$ 仅用于修正匹配条件、发现 $\tau_i$ 中被漏掉的证据”。用 $R'_i$ 替换 $R_i$、保留未检索反思,得到 $h'_t$。第三步(前向写):$\pi_M$ 反思 $\tau_t$,以 $\{R'_i\}$ 为示范输出形如 {"reflection":"..."} 的新反思 $R_t$,鼓励补充互补视角、不许编造新颖性,追加得到 $h_{t+1}=h'_t\oplus R_t$,供下一实例检索。
技术新颖性
技术新颖性体现在四点。其一,闭环性:Mem0、RBank、DoT 只做前向写读;ACE 的 add/update/delete/merge 只为维持记忆库一致性、不吸收下游反馈;ReHarness 首次把“某条经验在后续实例上的实际效果”系统性地回灌给该经验本身。其二,无需额外数据:GEPA-Online 虽适配了流式场景但只优化一段全局决策提示;离线记忆优化方法需要回放或验证集;ReHarness 在严格流式协议(无训练/验证集、无重复试验、实例只出现一次)下仅用流内信号完成学习。其三,防泄漏的溯源约束:修订被限定“源轨迹是唯一内容来源”,Table 2 显示修订后 grounded 率仍达 95.3%–98.7%,每次修订 grounding 至多降 0.3%,泄漏率 0.8%–2.1%,说明约束被模型切实遵守。其四,修订的复利效应:修订结果同时充当 $\pi_M$ 的示范,使限定条件式写法在状态中传播,消融显示去掉这组示范会让 CL-Bench(Claude)增益从 0.217 跌回 0.191(恰等于 Full Raw 水平)。
实验结果
主实验覆盖 3 个基准(CL-Bench、MemoryBench、MemoryArena,共 16 个任务流)× 3 个骨干 LLM 共 9 组组合,每组 3 个独立采样流。ReHarness 平均归一化增益 0.240,9 组中 8 组第一:CL-Bench 上 Claude/GPT/Gemini 分别为 0.217/0.317/0.233,MemoryBench 为 0.160/0.096/0.064,MemoryArena 为 0.305/0.358/0.408;对全部 7 个基线(最强为 Top-K Raw 0.168 与 Full Raw 0.164,其余 0.034–0.131)做 Bonferroni 校正的配对 Wilcoxon 检验均显著($p_{\text{adj}}<0.05$,对 Top-K Raw 0.039、Full Raw 0.043)。token 效率:CL-Bench+Claude 一次 rollout 中 ReHarness 约 41.57M tokens,低于 Top-K Raw 的 52.66M 与 Full Raw 的 142.12M(分别为其 1.3×、3.4×),成本约 $254 对 $85、$314。机制上,修订声明 95.3%–98.7% 可溯源、泄漏率仅 0.8%–2.1%(Table 2);反事实回放增益 0.335 对在线 0.217、无修订 0.144(Table 3);稳定性/可塑性平均 0.015/0.241 均为最高,反思基线稳定性多为负(Table 4);top-k 增益在 k=5 进入平台、过大回落(Figure 4b)。短板是 exploitable poker(Claude 0.009、Gemini −0.005),奖励噪声大、不利于修订的信用分配。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 全部 9 组基准×骨干组合平均(16 个任务流,3 seeds) | 平均归一化增益 | 0.240 | Top-K Raw 0.168(最强基线)、Full Raw 0.164、Mem0 0.131 | 较最强基线 +0.072(相对提升约 43%),Bonferroni 校正后 $p_{adj}=0.039$,9 组中 8 组第一 |
| CL-Bench(Claude Opus 4.8,6 任务) | 归一化增益 | 0.217 | Full Raw 0.191、Top-K Raw 0.165、GEPA-Online 0.076 | +0.026 于 Full Raw,且 token 仅为其 1/3.4(41.57M vs 142.12M),成本 $254 vs $314 |
| MemoryBench(GPT-5.5,5 写作/长文任务) | 归一化增益 | 0.096 | GEPA-Online 0.064、Top-K Raw 0.041、Full Raw 0.024 | +0.032(相对最强基线 +50%),且 WB 三个子任务上几乎唯一稳定正增益 |
| MemoryArena(Gemini 3.7 Flash,5 领域) | 归一化增益 | 0.408 | Top-K Raw 0.291、Mem0 0.235、Full Raw 0.237 | +0.117,其中 Search 0.291 对 Top-K Raw 的 −0.269(raw 基线在搜索任务上严重负增益) |
| CL-Bench 稳定性/可塑性分解(3 骨干平均) | 稳定性 / 可塑性增益 | 0.015 / 0.241 | Full Raw 0.010 / 0.232;Mem0 −0.003 / 0.142、RBank −0.006 / 0.065 | 两项均第一;反思类与提示优化基线稳定性普遍为负,说明分布偏移后旧状态有害 |
局限与改进
作者承认两点局限:其一,在 exploitable poker 这类随机性任务上,手牌级奖励与策略质量弱耦合(暗牌与运气),修订信号噪声大,ReHarness 在 Claude 下仅 0.009、Gemini 下 −0.005,而保留原始牌局轨迹的 raw 基线受影响较小(Full Raw 在 GPT 下达 0.421);其二,修订需要保留原始轨迹供日后回看,带来额外存储开销,状态随流增长。我的补充观察:修订只能滞后一步生效——反事实回放 0.335 对在线 0.217,说明“早一步用上修订”还有约 0.12 的提升空间;未被检索到的反思永远不会被修订,坏经验可能长期潜伏在状态里;k>20 时增益回落,存在不必要的修订与反思漂移风险;溯源约束虽防泄漏,但也阻止把当前实例中真正可泛化的新知识写进旧反思,只能靠新反思迂回携带;此外评测奖励部分依赖 GPT-5.6-Sol 评分(MemoryBench),judge 偏差会同时影响所有方法,且 9 组×3 seeds 的实验全部使用商业 API 模型,成本与可复验性受限。
独立分析的弱点
独立分析四个弱点并给出改进方向。第一,噪声奖励下的信用分配:poker 上修订几乎失效,因为 $\tau_t$ 的奖励无法诊断哪条反思出错;可引入奖励方差估计或轻量自我模拟降噪,只在“修订有把握”时触发,甚至训练一个修订收益预测器做门控。第二,存储无界增长:原始轨迹需永久保留供修订,长流下成本线性上涨;可用分层轨迹摘要(保留可溯源要点+校验信息)、按检索频率淘汰冷轨迹、或对未检索轨迹做粗粒度压缩。第三,修订依赖检索命中,存在路径依赖:从未被检索的坏反思不会自愈,可加入低置信度或长期闲置反思的周期性巡检,对高频被使用与高频被忽略的反思分别做怀疑性审查。第四,修订滞后一步:当前实例已受损后才能修订,可借鉴反事实回放思想,在决策前用轻量自检模拟“按这条反思做会怎样”,把部分修订收益提前兑现。另外,grounding 验证目前用 GPT-5.6-Sol 分解声明再判蕴含,本身引入 judge 依赖,可用开源 NLI 模型做廉价一致性抽查;修订调用是每实例 k 次 LLM 调用,可在修订收益低的稳态期自适应降频。
未来方向
作者明确提出两个方向:处理下游奖励噪声导致的修订失效(信用分配问题),以及降低保存原始轨迹带来的存储开销。在此基础上可以延伸:其一,把文本修订与参数化方法混合——当模型权重可访问时,用修订后的反思作为偏好或指令数据做轻量微调,验证文本空间与参数空间学习信号的互补性;其二,研究修订过程的收敛性,Figure 4a 显示修订幅度(字符级编辑距离)在分布偏移前衰减、偏移后回升,可形式化为文本状态的收敛与再激活动力学;其三,自动选择 $k$ 或按任务不确定性动态调节检索/修订规模,替代目前固定 $k=5$ 的后验扫描;其四,推广到多智能体共享 harness,修订信号需带署名与置信度以避免互相污染;其五,在销售预测、队列研究等隐私敏感场景研究反思与轨迹存储的脱敏合规。基准层面,构造奖励噪声可控的流式环境,系统刻画“何种奖励结构下反向修订有效”,会是很有价值的后续工作。
复现评估
复现条件总体友好但依赖商业 API。有利因素:三个基准均为公开工作(CL-Bench、MemoryBench、MemoryArena),三个智能体的完整提示词在附录 Figure 5 逐字给出,附录 Figure 6/7 提供完整轨迹、反思与修订文本可供逐条对照调试,嵌入模型 Qwen3-Embedding-8B 开源,判定器 GPT-5.6-Sol 与各骨干的用法(默认生成配置、高思考强度、隐藏推理痕迹不进入 harness)也已说明。不利因素:骨干是 Claude Opus 4.8、GPT-5.5、Gemini 3.7 Flash 等 API 模型,论文未提及开源代码,检索流程、流采样、归一化增益计算等工程细节需自行实现;成本不可忽视——仅 CL-Bench+Claude 一次 rollout 约 $254,9 组 × 3 seeds 完整复现需数百至上千美元。建议先复现单基准子集(CL-Bench+Claude,对照 0.217 vs Full Raw 0.191)验证机制。总体难度中等,核心风险在复现严格流式协议与跨任务评分对齐。
论文图表
完整展示盲频谱监测案例的全部文本:源轨迹(登记 5 个实测峰值、奖励 0.297)、原始反思(推测存在更密信道网格、建议虚构信道填充静默间隙)、被误导的下一次使用(添加 6 个未观测信道、奖励跌至 0.219)、修订后的反思(将推测部分显式标注为 SPECULATIVE、给出保守扩张规则)、以及使用修订反思后的改善(奖励 0.367)。
让读者看到修订前后反思的逐字差异,验证“补证据、降置信、加条件”的修订操作真实发生,也为评估自己实现的修订质量提供了金标准样例。
完整展示数据库探索案例:源轨迹误用 prc_usd 得 20.92(正确值 21.99)且从未验证 prc;旧反思过度自信地断言“评分值来自 prc、除以 100”;schema 偏移引入 prc_v2 后按旧反思作答奖励为 0;修订后的反思承认“哪一列被评分从未被验证”,改为枚举全部价格类列并按问句措辞选择;最终 2 次查询答对,奖励 0.867。
展示了分布偏移下“把过时确定性改写为校准的不确定性”这一最难也最有价值的修订类型,是理解 ReHarness 可塑性来源的最佳材料。