多头循环记忆代理
摘要
本文指出记忆保留是长上下文场景下循环记忆代理的瓶颈,并提出多头循环记忆(MHM),这是一种无需训练的框架,通过“先选择后更新”策略将记忆划分为独立的头。轻量级实例化版本 MHM-LRU 显著提升了 100K 至 1M token 范围内的记忆保留率和端到端准确率,在 896K token 的 RULER-HQA 上,将记忆保留率从低于 30% 提升至 73.96%。
arXiv:2607.01523v1 公告类型:新
摘要:循环记忆代理通过迭代将输入整合到固定大小的记忆窗口中,将 LLM 扩展到任意长上下文。尽管具有可扩展性,但这些代理存在一个被充分记录的可信性问题:随着上下文长度的增长,端到端性能系统性下降。我们通过将性能分解为两个因素——记忆捕获和记忆保留——来诊断这一失败,并定量确认保留是主要瓶颈。保留崩溃的原因是现有设计将记忆维持为单一文本块,迫使每次更新都有覆盖先前保留内容的风险。受此诊断启发,我们提出多头循环记忆(MHM),这是一个通用的、无需训练的框架,通过分阶段的“先选择后更新”策略将记忆划分为独立的头。在每一步中,恰好选择一个头进行更新,其余头则从结构上避免被覆盖,从而将保留的负担从模型行为转移到架构设计。作为轻量级实例化,我们引入了最近最少更新多头循环记忆(MHM-LRU),它保证了均匀的头利用率,且不增加额外的 token 开销。在长上下文基准上的大量实验表明,MHM-LRU 在 100K 至 1M token 范围内显著提高了保留率和端到端准确率,而基线方法则急剧下降。在 896K token 的 RULER-HQA 上,MHM-LRU 将记忆保留率从低于 30% 提升至 73.96%。这些增益在模型系列、规模及任务类型中均具有普适性,将架构优化定位为迈向可靠长上下文循环记忆的实用且经济高效的路径。
查看缓存全文
缓存时间: 2026/07/03 05:41
# 多头循环记忆智能体
来源:https://arxiv.org/html/2607.01523 \\undefine@key newfloatplacement\\undefine@keynewfloatname\\undefine@keynewfloatfileext\\undefine@keynewfloatwithin
李佳桐 Samuel Yeh Sharon Li
计算机科学系,威斯康星大学麦迪逊分校
\{jli2947, samuelyeh, sharonli\}@cs\.wisc\.edu
###### 摘要
循环记忆智能体通过将输入迭代压缩到固定大小的记忆窗口,将大型语言模型扩展到任意长的上下文。尽管具有可扩展性,但这些智能体存在一个有据可查的可靠性问题:端到端性能随着上下文长度的增长系统性下降。我们将性能分解为两个因素——记忆*捕获*和记忆*保留*——并定量确认保留是主要瓶颈。保留崩溃的原因是现有设计将记忆维护为一个整体文本块,每次更新都有可能覆盖先前保留的内容。受此诊断启发,我们提出**多头循环记忆**(MHM),这是一种通用的、无需训练的框架,它将记忆划分为独立的头,由阶段性的“选择-然后-更新”策略管控。每一步恰好选择一个头进行更新,而其余头在结构上受到保护不被覆盖,将保留的重担从模型行为转移到架构设计上。作为轻量级实例化,我们引入了最近最少更新MHM(MHM-LRU),它保证均匀利用各头且零额外token开销。在长上下文基准上的大量实验表明,MHM-LRU在100K–1M token范围内(基线性能急剧下降)显著提高了保留率和端到端准确率。在896K token的RULER-HQA上,MHM-LRU将记忆保留率从不足30%提升至73.96%。这些增益跨模型家族、规模和任务类型泛化,将架构优化定位为实现可靠长上下文循环记忆的实用且经济高效的路径。我们的代码可在此处获取 (https://github.com/deeplearning-wisc/multi-head-memory)。
### 1 引言
在长上下文上进行推理是LLM智能体在现实世界中的基本要求\[zhang2024chain,jiang2024longllmlingua,li2023long,li2024loogle,xiao2024infllm\]。文档分析\[wang2024leave,ma2024mmlongbench,li2025long,wu2025resum\]、多步骤研究\[huang2025deep,zhang2025web,chen2026iterresearch\]和扩展对话\[zhang2024chain,tan2025prospect\]等任务要求智能体在远超过上下文窗口的输入中跟踪并整合信息。循环记忆\[zhou2023recurrengpt,yuan2025memsearcher,zhou2026mem1\]通过分块顺序处理输入、迭代地将长上下文压缩到固定大小的记忆窗口来解决这一挑战。每一步,智能体读取新的上下文块并更新其记忆,将新信息与已保留的信息整合。这一范式具有吸引力,因为它对上下文长度没有硬性限制,也无需修改底层LLM。然而在实践中,循环记忆智能体存在一个有据可查的可靠性问题:性能随着上下文长度增长系统性下降\[yu2026memagent,du2025context\]。
为了激发我们的工作,我们首先诊断现有循环记忆在长上下文下如何失效,将端到端性能分解为两个因素:记忆在更新过程中是否*捕获*了相关信息,以及是否在所有后续更新中*保留*了该信息。在代表性方法MemAgent\[yu2026memagent\]上测量记忆捕获率和记忆保留率,我们发现捕获率在所有上下文长度上保持稳定,而记忆保留率急剧下降,在896K token处低于30%。这一诊断精确定位了记忆保留失败是主要瓶颈。
根本原因在于架构:现有循环记忆设计将记忆维护为一个整体文本块,因此每次更新都存在擦除关键信息的风险。在步骤\(t\)写入的信息必须经受住\(T-t\)次后续覆盖才能到达最终状态,随着\(T\)增长,这越来越不可能发生。
参见图注
图1:左:多头循环记忆(MHM)概览。右:记忆头随时间的使用模式。在每个时间步,只有一个头被写入。随着时间的推移,MHM实现渐进的均匀记忆利用。
受此诊断启发,我们提出**多头循环记忆**(MHM),这是一个通用的、无需训练的记忆框架,专门针对记忆保留失败。MHM不维护单个整体记忆块,而是将记忆划分为多个独立的头,并通过阶段性的“选择-然后-更新”策略管理更新。每一步,选择一个头进行更新,其余头保持不变。这将保留的重担从模型行为转移到架构设计:MHM不是依赖模型避免覆盖重要内容,而是在结构上保护未选头中保留的信息不被擦除。选择标准是通用的,可以容纳任何基于规则或基于模型的策略,现有单头方法作为特例被包含。作为轻量级实例化,我们展示了MHM-LRU,它每步选择最近最少更新的头。为了多样化记忆头使用以维持记忆保留,这条规则可证明地保证跨头的均匀利用,并且相对于单头基线零额外token开销。
在现实长上下文基准上的大量实验表明,MHM-LRU显著提高了记忆保留率,在所有评估的上下文长度上优于基线。值得注意的是,在896K token的RULER-HQA上,MHM-LRU将记忆保留率从不足30%提升至73.96%。保留率的改进直接转化为端到端性能增益,在100K–1M上下文范围内MHM-LRU的准确率保持强劲稳定,而基线急剧下降。这些收益跨模型家族、规模和任务类型泛化,将架构优化定位为实现可靠长上下文循环记忆的实用且经济高效的路径。
总体而言,本文的贡献总结如下:
1. 我们识别出记忆保留失败是循环记忆智能体在极长上下文下的主要瓶颈,并通过定量的捕获-保留分解分析支持。
2. 我们提出多头循环记忆(MHM),一个通用且无需训练的记忆架构级框架,通过独立记忆头和阶段性选择性更新来结构性地限制覆盖压力。
3. 我们在现实长上下文基准上广泛验证MHM,证明了在上下文长度、模型家族和任务类型上的显著保留率和准确率改进。
### 2 预备知识与相关工作
##### 长上下文LLM。
将LLM扩展到长上下文有两个主要方向:通过位置编码修改扩展上下文窗口\[kazemnejad2023positional,he2024positional,wu2024positional\],以及通过稀疏或线性注意力机制降低注意力复杂度\[lai2025sparseattn,yang2025sparseattn,roy2021sparseattention\]。这些进展使得无论是在开源模型(如Qwen2.5-1M\[yang2025qwen251m\])还是专有系统(如Claude-Sonnet-4.6\[anthropic2026claude\]和Gemini-3.1-Pro\[google2026gemini\])中都实现了百万token级别的上下文窗口。尽管有效,原生长上下文LLM仍然受限于固定上下文限制或二次方记忆成本,这促使循环记忆作为一种互补范式来规避这两个约束。
##### 循环记忆智能体。
循环记忆的思想在早期架构级方法中已有预示\[bulatov2022recurrent,gu2023mamba,peng2023rwkv,behrouz2024titans\]。然而,受限于底层架构的表示能力,这些方法的通用性在更广泛的应用中受到限制。直到token级循环记忆的出现\[yu2026memagent,zhou2023recurrengpt\],这一范式才得以具体确立。形式上,设\((C,q)\)为一对上下文-查询,LLM智能体必须产生正确答案\(y\)。由于\(C\)可能远超模型的上下文窗口,智能体将\(C\)划分为有序的块序列\(C=(c_1,c_2,\ldots,c_T)\),并通过顺序更新维护一个有界记忆状态\(m_t\)。然后记忆智能体\(f_\theta\)顺序处理这些块,每步更新有界记忆状态\(m_t\):
\[
m_t \leftarrow f_\theta(m_{t-1}, c_t, q), \quad t=1,2,\ldots,T.
\tag{1}
\]
处理完所有块后,LLM智能体仅基于累积的记忆生成最终响应:
\[
y \leftarrow \text{LLM}(m_T, q).
\tag{2}
\]
由于\(m_T\)是从前\(T\)个块到最终响应的唯一信息载体,式(1)更新在\(T\)增长下的保真度是这一范式的核心可靠性挑战。
这一范式由MemAgent\[yu2026memagent\]在长上下文问答中具体确立。后续工作从多个方向扩展:GRU-Mem\[sheng2026grumem\]引入文本控制门控进行选择性更新,而ReMemR1\[shi2026remem\]通过可回溯的检索组件增强循环记忆,但核心循环工作记忆仍然是整体块。
##### 单头记忆作为结构瓶颈。
在现有的循环记忆设计中\[yu2026memagent,shi2026remem,sheng2026grumem\],核心循环记忆状态\(m_t\)被维护为单个整体文本块——我们称之为*单头*记忆的设计。在每个更新步骤,记忆智能体必须用从\(c_t\)派生的内容覆盖这个块,在保留先前捕获的信息和纳入新上下文之间产生固有张力。这种张力随上下文长度加剧:在步骤\(t\)捕获的信息必须完好地经受住\(T-t\)次后续覆盖才能到达\(m_T\)。在足够长的上下文中,压缩到单个表示槽使得信息丢失在结构上不可避免。在下一节中,我们严格描述并测量这一失败,将其识别为长上下文性能的约束瓶颈。
### 3 表征循环记忆失败
为激励我们的记忆架构设计,我们首先分析循环记忆在长上下文下*如何*失败。受神经科学中工作记忆\[baddeley2012working\]和记忆遗忘检测\[spear1971forgetting,eldridge2005dissociation\]的启发,我们将端到端性能分解为两个记忆因素:捕获和保留。对于正确答案,记忆必须(1)在迭代更新的某个时刻*捕获*相关信息,并且(2)在所有后续更新中*保留*它直到最终状态\(m_T\)。任何阶段的失败都会产生错误答案,但两种模式在实践中不一定同样普遍。
###### 定义1(记忆捕获率 MCR)。
令\(\mathcal{D}=\{(C_i,q_i,y_i^*)\}_{i=1}^N\)为评估数据集,\(\mathcal{M}=\{m_i\}_{i=1}^N\)为相应的记忆轨迹。\(m_i=\{m_{i,1},\ldots,m_{i,T}\}\)表示记忆状态轨迹,其中\(T\)是该实例的总轨迹步数。我们评估答案成员关系\(\mathbbm{1}(y_i^*\in m_{i,t})\),即正确答案是否在步骤\(t\)的记忆内容中。MCR定义为在处理过程中相关信息至少一次存在于记忆中的查询比例:
\[
\mathrm{MCR}(\mathcal{M},\mathcal{D})=\frac{1}{N}\sum_{i=1}^N\mathbbm{1}\!\left(y_i^*\in m_{i,t},\;\exists\,t\in[T]\right).
\tag{3}
\]
###### 定义2(记忆保留率 MRR)。
在发生记忆捕获的查询中,捕获信息存活到最终记忆状态\(m_T\)的比例:
\[
\mathrm{MRR}(\mathcal{M},\mathcal{D})=\frac{\sum_{i=1}^N\mathbbm{1}(y_i^*\in m_{i,t},\exists\,t\in[T-1])\cdot\mathbbm{1}(y_i^*\in m_{i,T})}{\sum_{i=1}^N\mathbbm{1}(y_i^*\in m_{i,t},\;\exists\,t\in[T])}.
\tag{4}
\]
高MRR表明记忆智能体在处理无关上下文时能够保留先前捕获的信息。
参见图注
图2:(a) MemAgent\[yu2026memagent\](Qwen2.5-14B-Instruct)在RULER-HQA上从7K到896K token上下文长度的MCR和MRR。MCR全程保持稳定,而MRR随上下文长度急剧下降,在896K token处低于30%。(b) MemAgent和ReMem\[shi2026remem\]在RULER-HQA上从7K到896K token的MRR与准确率相关性分析。“LR”表示线性回归。端到端准确率与MRR强相关(\(\rho=0.98\)),确认保留失败是主要因素。
##### 保留失败占主导。
我们将此分析应用于MemAgent,这是一个基于Qwen2.5-14B-Instruct\[yang2024qwen25\]的代表性循环记忆基线,在RULER-HQA\[hsieh2024ruler,yang2018hotpotqa\]基准上。如图2(左)所示,MCR在所有评估的上下文长度上保持稳定,表明智能体无论输入长度如何都一致地捕获相关信息。相比之下,MRR急剧下降,在896K token处低于30%。由于MCR大致稳定,观察到的准确率下降几乎完全归因于保留失败。附加ReMem\[shi2026remem\]的结果后,图2(右)进一步确认端到端准确率与MRR强相关,相关系数\(\rho=0.98\)。这隔离出记忆保留是主要的架构瓶颈,并直接激励了我们在第4节中设计的问题:如何使记忆结构自身抗覆盖压力。
### 4 多头循环记忆
受我们分析的启发,我们提出**多头循环记忆**(MHM),这是一个旨在缓解保留失败的通用框架。核心见解是:保留失败不是模型的失败,而是记忆结构的失败:当单个块容纳所有上下文时,每次更新都是潜在的擦除。MHM通过将记忆分割成\(H\)个相互独立的记忆头,并通过选择性覆盖策略管理更新,从根本上解决这一问题。具体而言,MHM将记忆状态表示为\(H\)个独立文本块的集合:\(m_t=\{m_t^1,\ldots,m_t^H\}\),每个头\(m_t^h\)由`<memory>...</memory>`标签界定。每次更新只影响一个记忆头,其余\(H-1\)个头在结构上被构造为免于擦除。我们的设计解决了两个挑战:哪个头相似文章
RecMem:基于重复的记忆整合方法,用于高效且有效的长期运行LLM智能体
RecMem是一种基于重复的记忆整合方法,适用于长期运行的LLM智能体,通过仅在语义相似的交互重复出现时调用LLM,可减少高达87%的令牌消耗,同时提高准确性。
面向长周期LLM智能体的选择性记忆保留
本文提出TraceRetain,这是一个用于冻结LLM智能体中绑定外部存储的轻量级框架,表明选择性记忆保留主要在记忆流包含噪声时与缓存启发式方法区分开,从而带来任务成功率和效率的提升。
H-Mem:一种通过混合结构实现智能体记忆演化与检索的新型记忆机制
H-Mem是一种面向基于LLM的智能体的新型记忆机制,采用时间-语义树与知识图谱相结合的混合结构,以建模记忆演化并提升检索性能,在问答基准上实现了最先进水平。
MemTrain:自监督上下文记忆训练
MemTrain 提出了一种自监督训练框架,通过在维基百科语料上使用掩码重建和中间记忆召回代理任务,增强 LLM 智能体的上下文记忆能力,在下游记忆密集型 QA 基准上取得了高达 17.67 个百分点的提升。
更少的上下文,更高的准确性:一种用于LLM代理的双时态记忆引擎,其中精简检索的上下文胜过了完整历史
本文介绍了Engram,一个开源的用于LLM代理的双时态记忆引擎,它通过检索一个紧凑的上下文片段(约9.6k token),在LongMemEval上以混合读取路径融合稠密、词汇、图和时间信号,比完整历史基线(79k token)高出10.4个准确率点。