HAGE:通过强化学习驱动的加权图演化驾驭智能体记忆 HAGE: Harnessing Agentic Memory via RL-Driven Weighted Graph Evolution
用强化学习联合优化记忆图边表示与路由策略的查询条件遍历框架。
前置知识
记忆增强生成(MAG)
在传统 RAG 基础上,记忆不仅被检索还会被持续改写。形式化为 t 时刻的状态转移:$r_t = \text{Retrieve}(q_t, M_t)$、$o_t = \text{LLM}(q_t, r_t)$、$M_{t+1} = \text{Update}(M_t, q_t, o_t)$。这构成了智能体 read–generate–write 的闭环,使信息可跨会话持续累积与复用。
HAGE 整套设计都建立在 MAG 这条 read–generate–write 链路上,强调检索策略与记忆结构必须协同演化。
图结构记忆(Graph-based Memory)
把事件、实体、概念表示为节点,把时间、语义、因果、实体共现等关系表示为有向边。相比扁平向量库,图能显式编码节点间的多跳关系,支持复杂推理检索。典型代表包括 GraphRAG、Zep、A-MEM、MAGMA 等。
HAGE 的核心存储结构就是一个多关系有向多重图,所有边都携带可学习的特征向量。
REINFORCE 策略梯度
最基础的策略梯度方法,通过采样轨迹估计期望回报的梯度:$\nabla_\theta J = \sum_t \nabla_\theta \log \pi_\theta(a_t|s_t) \cdot (G_t - b)$,其中 $G_t$ 是折扣回报、$b$ 是用于方差削减的基线(文中使用指数移动平均基线)。
HAGE 把图遍历重写为 MDP,用 REINFORCE 同时优化路由策略与边特征。
LLM-as-a-Judge
用一个指令微调过的 LLM(如 gpt-4o-mini, temperature=0)作为打分器,对比候选答案与 gold 答案在语义层面的对齐度,常返回 0–1 的连续分数。相比 n-gram 重叠,能更好评估多跳、时序、因果型推理的质量。
本文所有主指标都依赖 LLM-as-a-Judge,对评估偏差的讨论直接关系到结论是否可信。
研究动机
近年来面向 LLM 智能体的图记忆系统(GraphRAG、Zep、A-MEM、Nemori、MAGMA 等)虽然在结构层面越来越丰富,但几乎都存在一个共同瓶颈:边的权重是静态的、二值的或仅依赖类型层级的固定启发式。问题在于真实场景中,一条边对当前查询是否有用是高度查询相关的——例如同一条时间边对回答「按事件顺序发生了什么」至关重要,但对「X 实体参与过哪些项目」几乎没用。具体到 LoCoMo 这种平均 9K token 的超长对话基准里,节点数和边数随会话长度增长,被固定规则同等对待的边会把语义相关路径和噪声路径混在一起,检索准确率随记忆规模扩大而系统性下降。另一类方法(adaptive RAG / GraphRAG-R1)虽然引入了强化学习,但它们面向的是静态知识库或文本-图混合检索,并不是面向跨会话持续演化的智能体记忆。
本文的目标是HAGE 想要在多关系记忆图上实现查询条件下的自适应遍历,把「哪些边对当前查询有用」这件事学出来。具体包含三层目标:(1) 让边的权重从静态标量升级为可学习的多维特征向量,捕捉查询相关的结构性偏好;(2) 用下游任务的反馈信号训练一个轻量级的 QueryRouter,动态调节边特征;(3) 在 LoCoMo(长程对话)和 HotpotQA(多跳问答)两类基准上同时取得 SOTA 水平的总体准确率,并在 token 消耗和延迟上保持与现有最优检索方案同数量级。
与已有工作不同的是,已有工作的空白在于「记忆结构」与「访问机制」被分开设计:要么设计一个很复杂的图但用静态评分,要么给一个普通图加 RL 但没有显式的关系结构。HAGE 抓住的点正是两者的交叉——它把记忆结构本身(边的特征向量)和访问策略(QueryRouter)放在同一个 MDP 里联合训练,使得「什么样的边对哪类查询有用」和「如何沿着这些边走」都能被下游奖励信号共同塑造,并通过 anchor 正则避免冷启动分布漂移。
核心方法
直觉上,HAGE 把智能体记忆检索从「在静态向量库里搜最相似的几个节点」重新想象为「沿着图走一条最值得的路径」。每条边不再是 0/1 的连接标志,而是一个 4 维向量(时间、语义、因果、实体),代表这条边在不同关系维度上的偏好强度。给定查询时,先让一个 LLM 分类器判断查询的关系意图,再用一个小 MLP(QueryRouter)把「边特征 + 查询意图 + 两端节点的语义相似度」压缩成一个标量结构权重。最终的转移分数 $S(n_j|n_i,q) = \lambda \cos(v_j, \vec{q}) + (1-\lambda) w_{ij}(q)$ 是「语义相似度」与「学到的结构重要性」的加权和,从而保证结构性关键但语义距离远的「桥接节点」也能被走到。整个遍历过程被形式化为 MDP,用 REINFORCE 策略梯度同时更新 QueryRouter 和边特征,并通过 anchor 正则把边特征拉回 Phase 1 的初始化附近,防止冷启动分布漂移。
HAGE 与已有图记忆系统最本质的区别在于:边表示和访问策略在同一信号下协同演化。在 MAGMA 等静态系统中,边的权重是手工规则或一次性的 LLM 打分;在 A-MEM/Nemori 等动态系统中,记忆结构会演化但检索仍是固定管线;而 HAGE 把每条边作为一个可训练参数 $e_{ij} \in \mathbb{R}^R$,与 QueryRouter 共享同一个策略梯度奖励 $r_t = r_t^{hit} - \lambda_{step} r_t^{step} - \lambda_{timeout} r_t^{timeout}$,从而让「边的判别能力」和「路由的利用能力」相互强化。再加上 $\eta_{edge}=10^{-4}$ 远小于 $\eta_{router}=10^{-3}$ 的非对称学习率,QueryRouter 快速适配新分布而边特征缓慢演化以保留语义初始化,这是它在 LoCoMo 全部 5 个认知子任务上都拿到最佳或并列最佳的根本原因。
方法步骤详情
HAGE 的完整流程可拆为五个阶段。**第一步,事件节点抽取**:用结构化事件抽取 prompt 把对话/文档转成 Event-Node $n_i = \langle c_i, \tau_i, v_i, A_i \rangle$,其中 $c_i$ 是事件内容、$\tau_i$ 是时间戳、$v_i \in \mathbb{R}^d$ 是 all-MiniLM-L6-v2 生成的 384 维语义向量、$A_i$ 是结构化元数据。**第二步,关系图构建**:按四种关系(时间 $E_{temp}$、语义 $E_{sem}$、因果 $E_{causal}$、实体 $E_{ent}$)把节点连成有向多重图 $G_t = (N_t, E_t)$,每条边关联可训练特征向量 $e_{ij} \in \mathbb{R}^R$($R=4$),初始化为 LLM 一次性打分 $[s_{temp}, s_{sem}, s_{causal}, s_{ent}]^\top$,无缓存时退化为 one-hot。**第三步,查询条件遍历**:查询 $q$ 先经 LLM 分类器得到关系意图 $T_q$ 与密集嵌入 $\vec{q}$,再与查询时的余弦相似度拼到边上得到增强特征 $\tilde{e}_{ij} = [e_{ij}; v_{T_q}; \cos(\vec{q},v_i); \cos(\vec{q},v_j)]$,送入 QueryRouter MLP 输出 $w_{ij}(q) = \text{softplus}(\text{MLP}([\vec{q}; \tilde{e}_{ij}]))$;最终转移分数 $S(n_j|n_i,q) = \lambda \cos(v_j, \vec{q}) + (1-\lambda) w_{ij}(q)$ 喂给 softmax 策略 $\pi(n_j|n_i,q)$,训练时采样、推理时贪心或 beam。**第四步,RL 联合优化**:把上述检索过程建模为 MDP——状态包含当前节点 $n_i$、查询嵌入 $\vec{q}$ 和已访问掩码 $V_t$,动作是选邻居 $n_j$,奖励 $r_t = r_t^{hit} - \lambda_{step} r_t^{step} - \lambda_{timeout} r_t^{timeout}$,其中 $r_t^{hit}=10.0$(命中 ground-truth 证据节点),$\lambda_{step}=0.05$ 的步数惩罚、$\lambda_{timeout}=1.0$ 的超时惩罚,hop budget $H_{max}=5$。优化目标是 REINFORCE:$\nabla_\theta J = \sum_t \nabla_\theta \log \pi_\theta(a_t|s_t) \cdot (G_t - b)$,折扣 $\gamma=0.99$、基线衰减 $\beta=0.99$,参数集 $\theta$ 同时包含 QueryRouter 权重和边特征。**第五步,Anchor 正则化与上下文合成**:在策略梯度上叠加 anchor 损失 $L_{anchor} = \lambda_{anchor} \sum_{(i,j)\in E_{train}} \| e_{ij} - e_{ij}^{(0)} \|_2^2$($\lambda_{anchor}=1.0$)防止 Phase 1 的语义初始化被 RL 拖到不可控区域;最后把检索到的节点按时序/因果/得分重排并序列化喂给下游 LLM 生成答案。
技术新颖性
从技术新颖性看,HAGE 的贡献有三个层面。第一,把边的可学习表示从标量权重升级到关系感知的特征向量,使同一条边在不同查询意图下可以呈现完全不同的结构价值,这是 MAGMA、Zep 等静态加权图系统所不具备的。第二,把记忆访问形式化为顺序决策问题并用 REINFORCE 端到端训练,与 MemGPT/A-MEM 等「先建库后检索」的范式相比,HAGE 让检索策略本身具有任务适应性。第三,引入 anchor 正则 + 非对称学习率的协同稳定化机制,避免了 RL 在结构化输入上常见的灾难性遗忘或冷启动失效,这一点在 AgeMem、MemSkill 等先前 RL-based 记忆系统中并未被显式处理。
实验结果
在 LoCoMo 基准上,HAGE 在 gpt-4o-mini 和 Qwen2.5-3B 两种 backbone 下都拿到了所有方法中的最高总分,gpt-4o-mini 总体 LLM-as-a-Judge 得分从 MAGMA 的 0.700 提升到 0.739,Qwen2.5-3B 上从 0.499 提升到 0.548;按子任务拆分,gpt-4o-mini 下 Temporal 0.667、Single-Hop 0.797、Adversarial 0.839 都为最佳,Adversarial 类别相对 MAGMA 的 0.742 提升近 10 个绝对百分点;Qwen2.5-3B 下 Temporal 0.457、Single-Hop 0.657、Overall 0.548 同样最佳,而 Adversarial 上 0.603 略低于 A-MEM 的 0.684,说明小模型在「判断信息是否不存在」这类对抗题上仍更依赖 A-MEM 的笔记风格记忆。在 HotpotQA distractor 设置下,HAGE 在 GPT-4o-mini 取得 F1 0.678 / LLM Score 0.824,在 Qwen2.5-3B 取得 F1 0.429 / LLM Score 0.527,两种 backbone 下都优于 MAGMA(A-MEM 和 Nemori 因不擅长多文档证据整合而显著落后)。消融实验(Table 4)清晰地展示了「边可学习 + 路由可学习」缺一不可:Static Edge 仅 0.698,叠加 LLM 一次打分到 0.712,把边升级为可学习参数后到 0.724,仅学 QueryRouter 而保持静态边为 0.713,全部联合训练达到 0.739,证明边表示和路由策略是互补的。效率上 HAGE 平均每查询消耗 3.82K token、延迟 2.17s,比 MAGMA(3.37K / 1.72s)略高但比 MemoryOS(4.76K / 32.68s)低一个数量级,是高分方法中最均衡的选择。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| LoCoMo Overall(长程对话记忆,gpt-4o-mini) | LLM-as-a-Judge | 0.739 | MAGMA 0.700 / Nemori 0.590 / A-MEM 0.580 | +0.039(相对 MAGMA +5.6%) |
| LoCoMo Overall(长程对话记忆,Qwen2.5-3B) | LLM-as-a-Judge | 0.548 | MAGMA 0.499 / Nemori 0.412 / A-MEM 0.410 | +0.049(相对 MAGMA +9.8%) |
| LoCoMo Adversarial(gpt-4o-mini) | LLM-as-a-Judge | 0.839 | MAGMA 0.742 / A-MEM 0.616 | +0.097(相对 MAGMA +13.1%) |
| LoCoMo Temporal(gpt-4o-mini) | LLM-as-a-Judge | 0.667 | MAGMA 0.650 / Nemori 0.649 | +0.017(相对 MAGMA +2.6%) |
| LoCoMo Single-Hop(Qwen2.5-3B) | LLM-as-a-Judge | 0.657 | MAGMA 0.576 / Nemori 0.641 | +0.016(相对 MAGMA +2.8%) |
| HotpotQA distractor(GPT-4o-mini) | F1 | 0.678 | MAGMA 0.640 / MemoryOS 0.477 | +0.038(相对 MAGMA +5.9%) |
| HotpotQA distractor(GPT-4o-mini) | LLM Score | 0.824 | MAGMA 0.807 / MemoryOS 0.592 | +0.017(相对 MAGMA +2.1%) |
| HotpotQA distractor(Qwen2.5-3B) | F1 | 0.429 | MAGMA 0.337 / MemoryOS 0.350 | +0.079(相对 MAGMA +23.4%) |
| Ablation:Static Edge → Full HAGE | Judge Score | 0.739 | Static Edge 0.698 | +0.041(联合优化收益) |
局限与改进
作者明确承认两点局限。其一,benchmark 覆盖有限,目前仅在 LoCoMo(长程对话)和 HotpotQA(多跳 QA)上做了评估,没有覆盖程序性推理、文档级 QA、隐私敏感的个性化记忆等场景,因此「HAGE 在所有记忆密集型任务上都更好」这种结论不能直接外推。其二,方法对 LLM 组件存在双重依赖——查询分析(关系意图抽取)需要指令微调的 LLM 作为分类器,评估(LLM-as-a-Judge)同样依赖 LLM,这就引入了成本和模型偏差,尤其在 Qwen2.5-3B 这种小模型充当分类器时,关系意图的识别准确率会直接限制 edge feature 的质量。作者未给出 query 分析分类器的具体精度数据,这一点值得复现者警惕。我自己观察到的局限还包括:边特征维度被硬编码为 R=4(时间/语义/因果/实体),如果遇到需要更细粒度关系(如情感、对话角色、反事实)的场景就捉襟见肘;anchor 正则虽然稳定,但把边特征束缚在初始化附近,可能限制 RL 进一步发现新的关系模式。
独立分析的弱点
第一个弱点是查询分析对 LLM 的强依赖。从公式 $\tilde{e}_{ij} = [e_{ij}; v_{T_q}; \cos(\vec{q},v_i); \cos(\vec{q},v_j)]$ 可知,$v_{T_q}$ 的质量直接决定路由方向,但论文没有给出关系意图分类器的精度和错误率分析,一旦分类器在对抗样本或长尾意图上失准,边增强就退化为噪声;改进方向是引入一个端到端可微的关系路由器或用小模型蒸馏 LLM 的意图标签。第二个弱点是 R=4 的关系维度是写死的,且 4 个关系之间没有显式约束(如因果应该不被时间单向支配),当记忆中出现新类型关系时只能堆叠到现有 4 维里造成混淆;改进方向是用稀疏字典或 mixture-of-experts 替代固定 4 维,让模型自动发现关系类别。第三个弱点是 anchor 正则 $\lambda_{anchor}=1.0$ 把边特征锁回 Phase 1 太紧,理论上会让 RL 收益打折;可以改为只在 Phase 2 初期施加 warm-up 约束、后期逐步衰减。第四个弱点是奖励信号依赖 ground-truth 节点命中,在真实部署中很难拿到这种监督;改进方向是用 RAG 答案质量或下游 LLM 的困惑度作为更弱的奖励。第五个弱点是 Hop budget $H_{max}=5$ 是全局常量,对极长上下文(>100K token)的工业级记忆可能不够,且超时惩罚 $\lambda_{timeout}=1.0$ 比 hit 奖励 $R_{hit}=10.0$ 小一个量级,容易让模型倾向快速放弃而非积极探索,可考虑自适应 hop 预算。
未来方向
作者暗示的方向包括把 HAGE 扩展到程序性记忆(procedural memory)和文档级 QA,以及把 query 分析器换成更轻量的模型以降低部署成本。基于本文成果我自己看到的延伸方向有三个:(1) 把 HAGE 的图遍历 RL 框架拓展为多智能体协同记忆,多个 agent 共享一个可学习的多关系图,分头探索后合并证据;(2) 引入对比学习预训练,让 edge feature 摆脱对 Phase 1 LLM 打分的依赖,使 HAGE 真正变成 end-to-end;(3) 把边特征从连续向量升级为可解释的关系符号+强度组合(如「因果强度 0.8 且时间跨度长」),在医疗、法律等可解释性要求高的领域落地。另一个值得探索的方向是与 LLM 的长上下文能力正交融合——HAGE 擅长结构化检索,长上下文擅长「就近相关性」,两者结合在 LoCoMo 这类基准上还有提升空间。
复现评估
代码已经在 GitHub 公开(FredJiang0324/HAGE_MVPReview),核心训练超参已写明:Adam、$\eta_{router}=10^{-3}$、$\eta_{edge}=10^{-4}$、$\gamma=0.99$、$\beta=0.99$、$\lambda_{anchor}=1.0$、$H_{max}=5$、$R_{hit}=10.0$、$\lambda_{step}=0.05$、$\lambda_{timeout}=1.0$,每折 200 epoch + 5 折交叉验证,20% 验证、10% 严格测试。数据集使用 LoCoMo(CC BY-NC 4.0,1986 个样本)和 HotpotQA(CC BY-SA 4.0),embedding 用 all-MiniLM-L6-v2(Apache 2.0),backbone 为 GPT-4o-mini 与 Qwen2.5-3B。复现难度中等偏低:GPT-4o-mini 通过 OpenAI API 调用,需要 API 费用,5 折 × 200 epoch 跑下来预计消耗数千美元级别;Qwen2.5-3B 可完全本地化,单卡 A100 即可完成训练。最大的复现风险点是 query 分析和 LLM-as-a-Judge 的 prompt 模板与温度设置——论文给到的 prompt(C.1–C.3)相对详细但仍依赖 LLM 的版本稳定性,建议在复现时同时记录 OpenAI API 的具体 snapshot。
论文图表
展示了 Memory-Augmented Generation 的总体闭环:用户/环境给出查询 $q_t$,Agent 先从外部记忆状态 $M_t$ 中检索证据 $r_t$,与查询拼成 prompt 喂给 LLM 生成动作 $a_t$ 与响应,再通过 update 把新事件写回记忆。
读者需要先理解 MAG 的 read–generate–write 三段式范式,才能抓住 HAGE 把检索从 '静态查表' 重构为 '查询条件遍历' 的动机。