← 返回 2026-03-19

AdaMem:面向长对话智能体的自适应用户中心记忆框架 AdaMem: Adaptive User-Centric Memory for Long-Horizon Dialogue Agents

Shannan Yan, Jingchen Ni, Leqi Zheng, Jiajun Zhang, Peixi Wu, Dacheng Yin, Jing Lyu, Chun Yuan, Fengyun Rao 📅 2026-03-17 👍 13 2026-07-13 08:36
LLM Agent 多智能体协作 检索增强生成 记忆系统 长对话理解

通过多类型记忆结构和多智能体协作,实现长对话中自适应检索与用户理解

前置知识

长期对话记忆(Long-Horizon Dialogue Memory)

在多轮甚至跨越多个会话的对话中,智能体需要持续积累、组织和检索历史信息以支持个性化理解和多步推理。这不同于单轮问答中的上下文窗口处理,因为对话历史可能长达数千到数万token,且信息分散在不同时期的交互中。有效的记忆系统不仅要存储历史对话,还要以可查询、连贯且鲁棒的方式组织这些信息,以便在需要时快速定位相关证据。

这是本文研究的核心场景,理解长期对话记忆的挑战才能理解AdaMem为何需要如此复杂的架构设计

检索增强生成(RAG, Retrieval-Augmented Generation)

RAG是一种让语言模型在生成答案前先从外部知识库检索相关文档或证据的技术范式。标准RAG通常使用语义相似度(如向量检索)来匹配查询和候选文档,然后将检索到的证据注入到模型的生成过程中。RAG的核心假设是:语义相似的文本片段更可能包含回答问题所需的信息。然而在对话场景中,这个假设并不总是成立,因为用户的问题可能涉及跨时间、跨实体的关联。

AdaMem本质上是对RAG范式的增强,理解标准RAG的局限才能理解AdaMem引入图结构和多智能体的动机

异构图记忆(Heterogeneous Graph Memory)

异构图是指包含多种类型节点(如消息、话题、事实、属性、事件)和多种类型边(如提及、支持、同话题、时序相邻、说话人相关)的知识图谱。与同构图不同,异构图可以通过不同类型的边显式编码实体间的多种关系,支持更丰富的推理路径。在AdaMem中,图记忆不仅存储文本内容,还通过类型化的边连接不同时期的对话片段,使系统能够沿着关系路径发现语义检索可能遗漏的证据。

异构图记忆是AdaMem区别于其他记忆系统的核心创新之一,理解其结构才能理解关系感知检索的工作原理

多智能体协作(Multi-Agent Collaboration)

多智能体系统是指将复杂任务分解为多个专门化的子任务,由不同的智能体角色分别负责执行。在LLM应用中,每个智能体角色通常有专门的系统提示和输出格式要求,通过协调机制(如顺序执行、循环迭代、并行处理)完成整体目标。与单一智能体相比,多智能体设计可以降低单个提示的复杂度,使每个模块的职责更清晰,便于调试和优化。

AdaMem采用Memory/Research/Working三个专门化智能体的架构,理解多智能体协作模式是理解其流程控制的关键

工作记忆与情节记忆(Working Memory vs Episodic Memory)

这两个概念借鉴自认知心理学。工作记忆是容量有限的短时缓冲区,保存最近的对话上下文和即时状态,采用先进先出(FIFO)队列机制。情节记忆是长期结构化记录,包含事件、事实、属性和主题摘要。当工作记忆满时,最旧的片段会被整合(consolidation)到情节记忆中,这个过程类似人类大脑将短期记忆转化为长期记忆的过程。情节记忆中的记录可以被查询、更新和合并。

工作记忆到情节记忆的整合机制是AdaMem记忆构建的核心流程,理解这两种记忆的差异才能理解整个系统的信息流动

研究动机

现有LLM智能体的记忆系统存在三个核心问题。第一,过度依赖语义相似度检索。当用户问「你了解我的哪些兴趣爱好?」时,语义检索可能只找到与「兴趣」词汇相关的片段,而忽略了用户在早期对话中提到的具体活动经历(如「我小时候经常和爸爸一起骑马」),这些经历虽然与查询词不直接匹配,但对理解用户至关重要。第二,相关经历被存储为孤立片段,破坏了时序和因果连贯性。例如用户先提到「去年读了一本励志书」,后来又提到「这本书让我想起去年的经历」,如果这两个片段没有被关联起来,系统就无法回答「用户什么时候读的这本书」。第三,静态记忆粒度不适应多样化问题——过于粗粒度的记忆会引入大量无关上下文,而过于细粒度的片段会掩盖跨事件的依赖关系。在LoCoMo基准上,平均对话历史跨越35个会话、约9000个token,这些挑战被进一步放大。

本文的目标是本文提出AdaMem框架,目标是构建一个自适应、用户中心的记忆系统,能够在长对话中:(1)按参与者组织记忆,区分用户和助手的信息,支持目标感知检索;(2)维护多层次互补记忆结构(工作、情节、人物画像、图),覆盖从即时上下文到长期用户特征的完整信息谱;(3)根据问题特点动态选择检索策略,简单事实查询用轻量语义检索,时序或因果推理触发图扩展,避免一刀切的检索方式;(4)在LoCoMo和PERSONAMEM两个长对话基准上达到最先进的推理性能。

与已有工作不同的是,与已有工作相比,AdaMem抓住了一个被忽视的关键点:记忆系统应该是「问题驱动」而非「存储驱动」的。MemGPT通过分页机制管理长上下文,但检索策略是静态的;A-Mem实现了动态组织,但缺乏参与者级别的结构化;Mem0提供了可扩展的长期记忆,但依赖固定长度切块;Zep使用时序知识图谱,但没有针对不同问题类型的自适应路由。AdaMem的独特视角在于:它认为不同的问题需要不同的记忆结构和检索路径——单跳事实查询应该走轻量语义检索,时序推理应该触发图扩展,属性查询应该从人物画像记忆中提取。这种「问题条件检索」的设计理念,结合参与者特定的记忆组织和多智能体角色专门化,构成了本文的核心差异化。

核心方法

AdaMem的设计可以用一个图书馆的类比来理解:传统的记忆系统就像一个大平层图书馆,所有书籍按某种固定规则排列(如按主题分类),读者来了之后只能按目录号查找。而AdaMem更像是一个智能图书馆,它为每位读者(参与者)建立专属档案区(工作记忆、情节记忆、人物画像),同时维护一个关系索引系统(图记忆),当读者提出不同类型的问题时,系统会自动选择最合适的检索路径——简单问题走快速通道,复杂问题启动深度检索。技术上,AdaMem包含四个紧密耦合的组件:记忆构建、问题条件检索规划、证据融合和响应生成。记忆构建阶段,每条新消息首先被规范化为结构化记录(包含摘要、话题、态度、原因、事实片段、属性、时间戳和说话人身份),然后写入参与者特定的工作记忆;当工作记忆满时,通过路由器模块将旧片段整合到情节记忆中;随后进行话题重分组和人物画像刷新,最终同步到图记忆。检索阶段,系统首先解析目标参与者,然后根据问题特征规划检索路由,最后通过三个专门化智能体协作生成答案。

AdaMem最核心的创新是「问题条件检索路由」(Question-Conditioned Retrieval Route)。传统RAG系统对所有问题使用相同的检索策略——无论问题是简单的「用户叫什么名字」还是复杂的「用户为什么会改变职业方向」,都走同样的语义检索流程。AdaMem打破了这种一刀切模式:它为每个问题动态构建一个检索计划 π(q),决定是否启用图扩展、扩展几跳、激活多少种子节点、应用什么边类型先验、以及如何融合基线和图证据。这个计划首先通过确定性线索检测(时序线索如「when」「before」,关系线索如「why」「because」,属性线索如「prefer」「like」)初始化规则基础的计划,当规则置信度低于0.75阈值时,可选的LLM精修步骤会在保守范围内调整计划。这种设计确保了简单问题保持轻量检索,而时序或因果问题触发更广泛的结构化探索。配合参与者特定的记忆组织和多智能体角色专门化(Memory Agent负责维护,Research Agent负责迭代检索和反思,Working Agent负责答案生成),AdaMem实现了记忆维护与答案推理的解耦,使系统能够更精细地控制检索、验证和记忆演化。

方法步骤详情

AdaMem的完整执行流程分为四个阶段。第一阶段是记忆构建:对于每条新消息 u_t,Memory Agent首先生成规范化记录 z_t(包含摘要、话题、态度、原因、事实片段、属性、时间戳和说话人身份),写入参与者特定的工作记忆 M_w(FIFO队列,容量 C_w=20)。当队列满时,弹出最旧的连续 r=5 条消息,通过三个路由器模块(事件、事实、属性)独立处理,每个路由器预测ADD、UPDATE或IGNORE操作以及目标键。随后进行话题重分组:将细粒度情节键通过稀疏最近邻图连接,取连通分量作为合并组,由LLM合并提示重写为主题摘要和人物画像描述。同时,消息级和整合后的记录被索引到图记忆 G 中。第二阶段是目标参与者解析:系统判断问题指的是用户、助手、两者还是不明确的参与者,对模糊情况不做强制承诺,而是在两个参与者包上分别检索后融合。第三阶段是问题条件检索规划:根据问题中的线索构建检索计划 π(q),指定图扩展参数,然后执行基线检索(语义检索人物画像摘要、情节事实和话题链接消息)和图检索(选择语义种子节点,进行有界多跳扩展,传播分数更新为 s_{d+1}(v) = s_d(u) * w_e * λ),最后通过融合公式 score(m|q) = α * s_base(m,q) + β * s_graph(m,q) + γ * s_recency(m) + δ * s_fact(m) 组合证据。第四阶段是多智能体响应生成:Research Agent执行「规划-搜索-整合-反思」循环(最多 L_i=2 次迭代),将证据整合为研究摘要;Working Agent将研究摘要转化为最终简洁答案,必要时补充高置信度的人物画像属性或事实片段。

技术新颖性

AdaMem的技术新颖性体现在三个层面。首先是记忆结构的创新:与MemGPT的分页机制、Mem0的扁平存储、A-Mem的动态组织不同,AdaMem维护四种互补的记忆类型(工作、情节、人物画像、图),每种类型服务不同的信息层次——工作记忆保存即时上下文,情节记忆保存结构化长期记录,人物画像保存稳定用户特征,图记忆保存关系连接。这种多层设计使得系统能够同时处理「用户今天说了什么」和「用户长期的兴趣偏好是什么」。其次是检索策略的创新:传统系统对所有问题使用统一的语义检索,AdaMem引入了问题条件检索路由,根据问题中的时序、关系、属性等线索动态选择检索策略,并通过图扩展的边类型先验(如时序边权重0.70、说话人相关边权重0.65)和跳数衰减因子 λ=0.85 控制证据传播。第三是智能体架构的创新:不同于单一控制器处理记忆写入、检索、验证和响应生成的模式,AdaMem采用三个专门化智能体的协作流水线,Memory Agent专注于记忆维护,Research Agent专注于迭代证据收集(含反思机制),Working Agent专注于答案生成,这种分解减少了记忆维护与答案推理之间的干扰。

Model overview. Dialogue history is organized into working, episodic, persona, and graph memories, and question answering is performed through target-aware, question-conditioned retrieval and role-specialized evidence synthesis.
Figure 2: Model overview. Dialogue history is organized into working, episodic, persona, and graph memories, and question answering is performed through target-aware, question-conditioned retrieval and role-specialized evidence synthesis.

实验结果

AdaMem在两个长对话基准上均取得了最先进的性能表现。在LoCoMo基准上使用GPT-4.1-mini后端,AdaMem达到44.65%的总体F1分数,相比先前最优方法实现了+4.4%的相对提升。改进最显著的类别是时序推理,F1分数提升了+23.4%,从42.57%提升到55.90%,这直接验证了问题条件检索路由在处理时序线索时的有效性。在多跳推理任务上,AdaMem也取得了37.70%的F1分数,虽然不是绝对最高(Mem0达到35.19%但使用了不同的评估设置),但表现稳定。使用GPT-4o-mini后端时,AdaMem达到41.84%的总体F1,实现了+12.8%的相对提升,说明框架的改进效果不依赖于特定的骨干模型。在PERSONAMEM基准上,AdaMem达到63.25%的准确率,相比最强基线实现了+5.9%的相对提升,特别是在「推广到新场景」任务上实现了+27.3%的相对提升(从57.89%提升到73.68%),表明其泛化能力显著优于对比方法。消融实验进一步验证了各组件的贡献:移除图记忆导致总体F1从44.65下降到42.63(-2.02),移除融合模块导致下降到42.77(-1.88),移除多智能体架构导致下降到43.24(-1.41)。图记忆的贡献最大,验证了关系感知检索在恢复跨轮依赖和时序关联证据方面的关键作用。模型规模实验显示,即使使用较小的开源模型Qwen3-4B-Instruct,AdaMem仍能达到36.78%的F1,证明其架构的有效性不依赖于大规模模型。扩展到Qwen3-30B-A3B-Instruct后,性能进一步提升6.24个F1点,特别是在时序推理上提升13.17个F1点,表明更大的模型能更好地利用AdaMem的结构化证据。超参数分析表明,检索top-K从5增加到10时性能显著提升,继续增加到15时收益递减;Research Agent迭代次数为2时达到峰值,过多迭代会引入冗余证据。效率分析显示,AdaMem的token预算(2248)与A-Mem(2720)相当,但F1分数高出18.28个点;相比Mem0(1340 tokens),AdaMem使用了更多计算资源,但换来了7.57个F1点的质量提升,延迟从3.739秒增加到4.722秒,处于合理的性能-效率权衡范围内。

Performance on the LoCoMo benchmark
Table 1: Performance on the LoCoMo benchmark
Performance on the PERSONAMEM benchmark
Table 2: Performance on the PERSONAMEM benchmark
Ablation on key components
Table 3: Ablation on key components
Ablation on model sizes
Table 4: Ablation on model sizes
Performance-efficiency trade-off
Table 5: Performance-efficiency trade-off
Ablation on key hyperparameters
Figure 3: Ablation on key hyperparameters
查看结构化数据
任务指标本文基线提升
LoCoMo 多跳推理 F1 37.70% 36.45% (LangMem) +1.25% 绝对提升
LoCoMo 时序推理 F1 55.90% 42.57% (LangMem) +23.4% 相对提升
LoCoMo 单跳推理 F1 44.84% 44.82% (LangMem) +0.02% 绝对提升
LoCoMo 总体 F1 44.65% 41.76% (LangMem) +4.4% 相对提升
PERSONAMEM 推广到新场景 Accuracy 73.68% 57.89% (A-Mem) +27.3% 相对提升
PERSONAMEM 总体 Accuracy 63.25% 59.75% (A-Mem) +5.9% 相对提升

局限与改进

作者在论文Limitations章节承认了三个主要局限。首先,AdaMem通过结构化记忆、自适应检索和角色专门化证据合成提升了答案质量,但这种设计也增加了系统复杂度、token成本和延迟。具体而言,端到端推理延迟为4.722秒,比最快的Mem0(3.739秒)高出约26%,输入token预算为2248,比Mem0(1340)高出约68%。其次,框架仍然依赖上游的解析和骨干推理能力,在目标解析、实体链接和时序规范化中出现的错误难以恢复。第三,作者提到未来将探索解决这些挑战的方案以进一步提升效率和泛化性。从我的观察来看,AdaMem还存在几个值得注意的局限:图记忆的构建依赖于确定性的节点类型化和边构建规则,而非学习得到的图抽取,这可能限制了其在新领域或新语言中的适应性;问题条件检索路由中的线索检测基于预定义的关键词列表(如「when」「why」「prefer」),对于隐含的时序或因果问题可能漏检;多智能体协作的顺序执行模式(Memory-Research-Working)无法处理需要并行证据收集的复杂查询;此外,实验仅在英文数据集上进行,对于中文等其他语言的长对话场景的适用性尚不明确。

独立分析的弱点

AdaMem的弱点可以从几个具体场景来分析。第一,在隐式时序推理场景中,AdaMem的性能仍有提升空间。论文的失败案例分析(Figure 5)展示了这一点:当用户说「这本书我去年读的」,系统需要将「去年」规范化为绝对年份(如2022),但当前的时序规范化主要依赖检索阶段的线索检测,而非写入时的规范化存储。改进方向是在消息理解阶段就进行时序表达式的规范化,将相对时间(「去年」「上个月」)转换为绝对时间戳存入记忆。第二,图记忆的边权重和跳数衰减因子是固定的先验值(如 λ=0.85),无法根据对话内容动态调整。在实际应用中,不同领域的对话可能需要不同的关系强度建模——技术讨论中因果关系更重要,闲聊中时序关系更重要。改进方向是引入可学习的边权重估计器,根据查询特征和历史证据动态调整传播参数。第三,AdaMem的参与者解析是基于显式提及的简单规则(提到用户名字-用户,提到助手名字-助手),对于代词引用或隐式指代的情况处理不足。改进方向是引入共指消解模型或上下文感知的参与者推断模块。第四,多智能体协作的迭代检索次数固定为 L_i=2,对于需要多次证据分解的复杂问题可能不够。改进方向是根据问题复杂度和证据完整性动态调整迭代次数,或引入停止条件的自适应估计。

未来方向

作者在论文中提到未来将探索提升效率和泛化性的方案。基于AdaMem的成果,我认为有几个有前景的研究方向。首先是记忆压缩与蒸馏:当前的情节记忆通过话题重分组和人物画像刷新进行了一定程度的压缩,但随着对话历史增长,记忆库的规模仍会持续膨胀。可以探索基于重要性评分的记忆修剪策略,或通过记忆蒸馏将分散的证据浓缩为更紧凑的表示。其次是跨模态记忆整合:论文中的对话仅包含文本信息,但实际的长期对话场景可能涉及图像、音频、视频等多模态内容(如用户分享的照片、语音消息),如何将这些模态信息统一编码到图记忆中是一个值得探索的方向。第三是记忆的一致性维护:当用户偏好随时间演变(如从喜欢「古典音乐」转向「爵士乐」),如何在保留历史偏好的同时更新当前人物画像,避免记忆中的矛盾信息影响推理质量,这需要更精细的记忆版本控制和冲突检测机制。第四是隐私保护的记忆管理:在实际部署中,用户的长期对话数据包含大量敏感信息,如何在不泄露隐私的前提下支持有效的记忆检索和推理(如差分隐私、联邦学习、本地化记忆存储),是走向实际应用必须解决的问题。

复现评估

从复现角度来看,AdaMem具有较好的可复现性基础。论文承诺代码将在接受后开源,这为复现提供了最重要的保障。数据集方面,LoCoMo和PERSONAMEM都是公开可获取的基准,实验设置(温度为0、检索top-K为10、最大迭代次数为2)都有明确说明。算力需求方面,实验在NVIDIA RTX A800 GPU上进行,使用了闭源API(GPT-4.1-mini、GPT-4o-mini)和开源模型(Qwen3-4B-Instruct、Qwen3-30B-A3B-Instruct),对于没有大算力资源的研究者,可以使用较小的Qwen3-4B模型进行实验,该模型仍能达到36.78%的F1。记忆嵌入使用的是all-MiniLM-L6-v2模型,这是一个轻量级的句子嵌入模型,易于部署。论文还提供了详细的附录,包括图构建规则(Appendix C)、实现细节(Appendix B)和提示模板(Appendix E),这些都有助于复现。复现难度中等:框架的组件设计(四种记忆类型、三个智能体、问题条件路由)都有明确描述,但具体的提示工程细节和超参数调优可能需要一定的实验摸索。主要的复现障碍是闭源API的使用——如果只用开源模型,性能会有一定下降(约8个F1点),但框架的核心设计优势仍然可以验证。