加权记忆树:为长期LLM智能体记住关键信息

arXiv cs.AI 论文

摘要

本文介绍了加权记忆树,一种为LLM智能体设计的层次化记忆系统,它能动态保留重要信息,将任务准确率提高9.97%,并将提示词使用量减少32.8%。

arXiv:2608.20631v1 Announce Type: new Abstract: 大语言模型(LLM)智能体已展示了解决多步任务的能力,这些任务需要规划、工具使用和外部信息访问,然而不断增长的执行历史会增加推理成本,并使推理过程暴露在过时、无关或误导性信息中,可能降低推理质量。现有的记忆方法组织或压缩执行历史,但提供有限的机制来决定哪些记忆应保持活跃。我们介绍了WMT,一种层次化记忆系统,它将执行组织为任务、子任务和动作,同时为每个记忆分配一个动态保留分数。基于事件的更新和基于选择的衰减修改这些分数,使WMT能够保留有用信息、折叠完成轨迹、抑制低效内容并保持对折叠上下文的访问。我们在GAIA-Text上使用Qwen3-8B、Gemma 4 E4B和Llama-3.1-8B评估了WMT,并进行了消融实验和记忆污染实验。与线性记忆相比,WMT将准确率平均提高9.97个百分点,同时将提示词使用量减少32.8%。记忆污染实验表明,WMT限制了不可靠信息的持续性和传播性。我们的结果表明,有效的长期智能体记忆更少依赖于存储更多信息,而更多取决于决定哪些信息应保持活跃。
查看原文
查看缓存全文

缓存时间: 2026/08/24 04:17

# 加权记忆树:为长时间跨度LLM智能体记住关键信息
来源:https://arxiv.org/html/2608.20631
Purvi Kathalkar、Kenneth Eaton  
所属机构:乔治亚理工学院,乔治亚理工研究院

###### 摘要

大型语言模型(LLM)智能体已展现出解决多步骤任务的能力,这类任务需要规划、工具使用以及外部信息访问。然而,不断增长的执行历史会增加推理成本,并使推理过程暴露于过时、无关或具有误导性的信息中,从而可能降低推理质量。现有的记忆组织或压缩执行历史的方法,在决定哪些记忆应保持活跃状态方面提供的机制有限。我们提出了**加权记忆树**(WMT),这是一种分层记忆系统,它将执行过程组织为任务、子任务和操作,并为每个记忆分配一个动态保留分数。基于事件的更新和基于选择的衰减机制会修订这些分数,使WMT能够保留有用信息、折叠已完成的轨迹、抑制低效内容,同时保留对已折叠上下文的访问能力。我们在GAIA-Text基准上使用Qwen3-8B、Gemma 4 E4B和Llama-3.1-8B模型对WMT进行了评估,并进行了消融实验和记忆污染实验。与线性记忆相比,WMT平均将准确率提高了9.97个百分点,同时将提示词使用量减少了32.8%。记忆污染实验表明,WMT能限制不可靠信息的持续存在和传播。我们的结果表明,有效的长时间跨度智能体记忆,与其说依赖于存储更多信息,不如说更依赖于决定哪些信息应保持活跃状态。

## 1引言

大型语言模型(LLM)智能体将推理与外部环境中的行动交织进行,使它们能够检索信息、调用工具并在多个步骤中修改计划,以解决诸如开放域研究等长时间跨度任务(28 (https://arxiv.org/html/2608.20631#bib.bib1); 21 (https://arxiv.org/html/2608.20631#bib.bib3); 24 (https://arxiv.org/html/2608.20631#bib.bib11))。此类任务要求智能体保留执行早期遇到的证据、工具输出和失败尝试,因此记忆对于维持后续推理所需的任务状态至关重要(30 (https://arxiv.org/html/2608.20631#bib.bib5); 10 (https://arxiv.org/html/2608.20631#bib.bib6))。然而,随着执行历史的增长,过时的观察、失败的尝试和偶然的细节会与有用信息一起累积,这使得确定哪些记忆应继续影响后续决策变得越来越困难。

常见的ReAct风格设计通过将推理步骤、工具调用和观察结果追加到线性交互历史中来保留执行状态(28 (https://arxiv.org/html/2608.20631#bib.bib1))。尽管这保留了完整的轨迹,但它平等对待所有记忆,无论其效用如何,导致提示长度不断增长,同时过时的观察、失败的推理和有效证据仍然混杂在一起。因此,相关信息必须与陈旧或偶然的内容竞争,这一局限性并非简单地通过扩展上下文窗口就能解决。长上下文研究表明,语言模型难以利用长输入中的相关信息,其性能通常远低于名义上下文窗口限制(16 (https://arxiv.org/html/2608.20631#bib.bib7); 15 (https://arxiv.org/html/2608.20631#bib.bib8); 7 (https://arxiv.org/html/2608.20631#bib.bib2); 11 (https://arxiv.org/html/2608.20631#bib.bib16); 12 (https://arxiv.org/html/2608.20631#bib.bib17); 25 (https://arxiv.org/html/2608.20631#bib.bib18))。除了效率和推理质量之外,持久化的智能体记忆还引入了安全隐患:从长期记忆或外部知识库中检索到的被污染的记录可能会影响后续智能体行为(2 (https://arxiv.org/html/2608.20631#bib.bib12); 23 (https://arxiv.org/html/2608.20631#bib.bib27); 6 (https://arxiv.org/html/2608.20631#bib.bib20); 5 (https://arxiv.org/html/2608.20631#bib.bib28))。因此,长时间跨度智能体需要能够调控哪些存储信息进入工作上下文的机制。

最近的研究通过执行历史的结构化或压缩表示来解决部分问题。任务记忆引擎(TME)将执行组织为分层任务树,并从活跃任务路径合成提示(29 (https://arxiv.org/html/2608.20631#bib.bib10))。上下文折叠(Context-Folding)在返回父轨迹之前总结已完成的子任务(24 (https://arxiv.org/html/2608.20631#bib.bib11))。这些方法确立了保留任务结构和压缩已完成轨迹的价值。然而,它们没有显式地维护每个记忆持续效用的动态估计。结果是,即使后续证据降低了其相关性或可靠性,记忆可能仍然保持活跃。这就引出了一个核心问题:是否可以通过显式估计记忆效用来调控进入智能体工作上下文的内容,从而改善长时间跨度推理?

为了应对这一挑战,我们提出了**加权记忆树**(WMT),这是一种分层记忆架构,它将执行历史组织为任务、操作记忆,并为每个记忆分配一个动态保留分数。这些分数用于在构建上下文时对记忆进行优先级排序,并确定低效分支何时被抑制,而根据任务状态,已完成的分支则被折叠成紧凑的摘要,从而使WMT能够从最有用的上下文中构建提示,同时减少重复的令牌处理并限制陈旧或不可靠信息的影响(2 (https://arxiv.org/html/2608.20631#bib.bib12))。我们在GAIA(18 (https://arxiv.org/html/2608.20631#bib.bib4))及其纯文本子集GAIA-Text上,使用Qwen3-8B(27 (https://arxiv.org/html/2608.20631#bib.bib13))、Gemma 4 E4B(8 (https://arxiv.org/html/2608.20631#bib.bib14))和Llama-3.1-8B(9 (https://arxiv.org/html/2608.20631#bib.bib15))评估了WMT。我们将完整框架与线性记忆基线以及三个消融变体进行了比较:无加权树(A1)、无记忆控制器消融(A2)和无语义节点检索消融(A3)。

尽管缓解记忆污染并非WMT的主要目标,但我们也进行了受控的记忆污染实验,以评估结构化记忆管理相对于传统线性记忆是否能提高鲁棒性。在这些实验中,WMT降低了攻击成功率、污染检索率、影响范围和放大系数,同时在所有评估方法中实现了最高的任务成功率。这些结果共同表明,有效的长时间跨度记忆不仅取决于保留或压缩执行历史,更取决于选择性地保留任务相关信息,同时抑制过时或不可靠的内容。

图1:WMT的状态驱动工作流程。智能体交互更新节点分数和分支优先级;生命周期转换和提示选择反馈决定哪些记忆保持活跃状态。
## 2加权记忆树

我们提出**加权记忆树**(WMT),这是一种记忆管理层,它将智能体的执行历史组织为持久的分层结构,并为每个推理步骤构建紧凑的工作上下文。WMT在不修改基础智能体参数或工具接口的情况下对其进行增强。

### 2.1问题定义

设\(q\)表示用户查询,\(\mathcal{T}\)表示智能体可用的工具集合。在交互步骤\(t\),智能体生成一个动作\(a_{t}\),接收到一个观察\(o_{t}\),并记录一个执行结果\(\omega_{t}\)。累积的交互历史为\(H_{t}=(q,(a_{1},o_{1},\omega_{1}),...,(a_{t-1},o_{t-1},\omega_{t-1}))\)。线性历史智能体会反复将\(H_{t}\)的大部分或全部序列化到后续的每个提示中。而WMT则维护一个持久的记忆状态\(\mathcal{M}_{t}\)。令\(v_{t}^{\star}\)表示活跃任务节点,\(\mathcal{B}\)表示配置的上下文预算。提示合成器选择一个记忆集\(\mathcal{S}_{t}\)并将工作上下文构建为:

\[
\mathcal{S}_{t}=\Gamma_{\mathrm{sel}}\left(q,\mathcal{M}_{t},v_{t}^{\star};B\right),
\]
\[
C_{t}=\operatorname{Serialize}\left(q,\mathcal{T},\mathcal{S}_{t}\right).
\]

其中,\(\Gamma_{\mathrm{sel}}\)从\(\mathcal{M}_{t}\)中选择记忆,而\(\operatorname{Serialize}\)将选定的记忆、用户查询和工具规范格式化到工作上下文\(C_{t}\)中。未包含在\(C_{t}\)中的记忆则被持久存储以供将来检索。

### 2.2整体工作流程

图1(https://arxiv.org/html/2608.20631#S1.F1)总结了WMT的执行循环。WMT从用户查询初始化一个根任务,并在有活跃任务存在时构建工作上下文。基础智能体执行一个交互步骤,WMT记录产生的任务、操作、观察结果和执行结果。执行结果更新节点级保留分数,这些分数被聚合为分支级优先级。记忆控制器折叠已完成的分支,抑制低优先级或被取代的分支,并重新打开恢复的分支。提示选择决策提供了第二个反馈信号:被选中的记忆会重置其“未选中计数”,而符合条件的记忆在未被选中时会经历基于选择的衰减。当根任务完成且没有活跃任务时,循环终止。

### 2.3分层记忆树

WMT将持久记忆维护为\(\mathcal{M}_{t}=(\mathcal{G}_{t},\mathcal{V}_{t},\mathcal{E}_{t})\),其中\(\mathcal{G}_{t}\)包含全局记忆,\(\mathcal{V}_{t}\)包含查询特定的记忆节点,\(\mathcal{E}_{t}\)包含查询特定节点之间的父子关系。全局记忆存储跨任务分支或对话的信息,而查询特定树记录当前任务的执行过程。本文中的单次交互设置为每个查询初始化一棵新树,但在对话模式下,已完成的任务摘要可能会被提升到\(\mathcal{G}_{t}\)中。

遵循TME(29 (https://arxiv.org/html/2608.20631#bib.bib10))的任务中心表示方法,根节点代表用户查询,任务节点代表目标和子任务,操作节点记录尝试的操作、观察结果和结果。每个记忆节点\(v_{i}\)存储其内容、节点类型、父节点、生命周期状态、保留分数、未选中计数和执行元数据。新子任务附加到其父任务,而操作和观察则附加到当前任务。

令\(v_{\mathrm{root}}\)和\(v_{t}^{\star}\)分别表示根节点和活跃任务节点。活跃路径\(P_{t}=\operatorname{Path}(v_{\mathrm{root}},v_{t}^{\star})\)包含从用户查询到当前子任务的任务层次结构,在构建上下文时始终被保留。对于任务节点\(v\),分支\(\mathcal{B}(v)\)是以\(v\)为根的子树,包括其后代任务和操作节点。

节点具有生命周期状态\(z_{i}\in\{\text{active},\text{completed},\text{folded},\text{obsolete}\}\)。对于分支\(b=\mathcal{B}(v_{b})\),其生命周期状态继承自其根任务节点\(v_{b}\)的状态\(z_{v_{b}}\)。生命周期状态决定了其是否符合构建提示的条件。抑制会将根任务标记为`obsolete`而不删除它,而任务完成和恢复则分别触发折叠和重新打开操作。

在步骤\(t_{b}\)创建的分支\(b=\mathcal{B}(v_{b})\),其初始状态为\(z_{v_{b}}^{(t_{b})}=\text{active}\);后续的生命周期操作会更新此状态。

### 2.4动态保留分数

令\(i\)索引记忆节点,\(t\)索引交互步骤。每个记忆节点\(v_{i}\)有一个保留分数\(u_{i}^{(t)} \in [0,1]\),用于估计其在将来推理中用于优先排序记忆的效用。每个节点根据其类型获得一个初始分数。

#### 基于事件的更新。

对于操作记忆\(v_{i}\),令\(\omega_{i} \in \{\text{success},\text{failure}\}\)表示其记录的执行结果。我们用\(\tilde{u}_{i}^{(t+1)}\)表示在基于选择的反馈之前、基于事件更新后的中间分数。当记录或修订结果时,WMT应用:

\[
\tilde{u}_{i}^{(t+1)}=\begin{cases}
u_{\mathrm{success}}, & \omega_{i}=\mathrm{success}, \\
u_{\mathrm{failure}}, & \omega_{i}=\mathrm{failure}, \\
\end{cases}
\]
其中\(u_{\mathrm{success}} > u_{\mathrm{failure}}\)。成功的动作获得作为支持证据的更高优先级,而失败的动作可能保留作为避免重复无效操作的警告。这些核心更新是固定的,而非通过学习获得。

#### 基于选择的衰减。

令\(\epsilon_{i,t} \in \{0,1\}\)表示记忆\(v_{i}\)在步骤\(t\)是否进入候选池,令\(s_{i,t} \in \{0,1\}\)表示它是否被选中用于工作上下文。根据定义,\(s_{i,t} \leq \epsilon_{i,t}\)。

对于非全局记忆,令\(m_{i}^{(t)}\)表示\(v_{i}\)在连续多少个选择机会中符合条件但未被选中。其更新规则为:

\[
m_{i}^{(t+1)}=\begin{cases}
0, & s_{i,t}=1, \\
m_{i}^{(t)}+1, & \epsilon_{i,t}=1 \text{ and } s_{i,t}=0, \\
m_{i}^{(t)}, & \epsilon_{i,t}=0. \\
\end{cases}
\]

对于全局记忆,实现在每次衰减更新前会重置未选中计数,因此其有效连续未选中次数始终为1。令\(\rho \in (0,1]\)表示常规衰减率,\(\rho_{\mathrm{G}} \in (0,1]\)表示全局记忆衰减率,\(M \geq 1\)表示最大连续未选中指数。定义有效衰减乘数:

\[
g_{i}(m)=\begin{cases}
\rho_{\mathrm{G}}, & \tau_{i}=\text{global}, \\
\rho^{\min\{m,M\}}, & \tau_{i}\neq\text{global}, \\
\end{cases}
\]
其中\(\tau_{i}\)表示节点\(v_{i}\)的类型。因此,实现的基于选择的衰减函数为:

\[
D_{i}(u,m)=\operatorname{clip}_{[0,1]}\left(u\,g_{i}(m)\right).
\]

我们称\(\epsilon_{i,t}=1\)且\(s_{i,t}=0\)为*未选中*。最终的保留分数为:

\[
u_{i}^{(t+1)}=\begin{cases}
D_{i}\left(\tilde{u}_{i}^{(t+1)},m_{i}^{(t+1)}\right), & \text{未选中}, \\
\tilde{u}_{i}^{(t+1)}, & \text{其他情况}. \\
\end{cases}
\]

因此,符合条件但未被选中的非全局记忆会乘以\(\rho^{\min\{m_{i}^{(t+1)},M\}}\),而符合条件但未被选中的全局记忆会乘以\(\rho_{\mathrm{G}}\)。被选中的记忆会重置其未选中计数,而不在候选池中的记忆保持不变。仅时间的流逝不会影响保留分数。

#### 分支级优先级。

相似文章

面向长周期LLM智能体的选择性记忆保留

arXiv cs.AI

本文提出TraceRetain,这是一个用于冻结LLM智能体中绑定外部存储的轻量级框架,表明选择性记忆保留主要在记忆流包含噪声时与缓存启发式方法区分开,从而带来任务成功率和效率的提升。

受人类启发的LLM智能体记忆架构

arXiv cs.AI

微软研究人员提出了一种受生物学启发的LLM智能体记忆架构,该架构结合了睡眠阶段巩固和基于干扰的遗忘机制,以高效管理持久性记忆。