大模型智能体必备:内存管理架构详解与实践指南(建议收藏)
文章详解了LLM智能体的现代内存管理架构,包括短期记忆、处理过程记忆和长期记忆等类型,以及基于RAG、MemGPT、Langmem等解决方案,旨在解决上下文限制,实现更智能持久的交互体验。
智能体记忆:LLM 智能体中的现代内存管理架构概述
概述
想象一下,一个智能助手不仅能回答你的问题,还能记住每一次聊天、每一个选择以及它提供的每一次帮助。这就是记忆驱动智能体的强大之处。这些智能体可以回忆过去的事件,从中学习,提供更明智的响应,最终带来更佳的用户体验。
LLM 智能体是由大型语言模型 (LLM) 驱动的自主系统,用于在外部环境中执行某些任务。智能体可以决定应用程序的控制流,决定执行哪个任务等等,无论是否需要人工干预。在 LLM 智能体的众多组件中,记忆起着至关重要的作用。
Agent 中的记忆
当你与 ChatGPT、Claude 或 Gemini 等聊天助手聊天时,对话通常属于一个特定的会话。你可能还注意到,每个会话都会有一个标题(通常是简短的描述,涵盖会话中的主要或初始对话)。对于你在会话中提出的每个新问题,所有之前的聊天记录(用户-AI 消息对)都会被视为 LLM 的“上下文”,以便生成更好的响应。
为什么上下文(context)很重要?
上下文记忆对于与你的 LLM/智能体保持持续对话至关重要。如今的大型语言模型可以处理非常大的上下文窗口,这意味着用户可以进行长时间的会话,并在整个会话过程中保持持续的对话。然而,尽管上下文窗口看起来很大,但固定的上下文窗口也有一些缺点。
- 随着对话持续很长时间,您更有可能遇到令牌限制错误。当然,您可以开始新的会话并与模型聊天,但整个上下文将会丢失
- 即使该模型最多可以支持 128k 个标记,但随着上下文的增长,该模型将难以找到句子之间的关系,也无法生成最合适的答案。
LLM 智能体中的记忆管理可以帮助用户进行连续对话,而无需担心上下文长度限制。它可以帮助智能体回忆用户的偏好、之前的对话、经验等,并提供更有帮助和个性化的响应。目前有各种正在使用的记忆架构。
在继续讨论各种解决方案之前,我们需要了解某些类型的记忆。
- 短期记忆或工作记忆(Short-term memory or working memory)这就是我们所说的上下文窗口,它代表了 LLM 用来生成任何响应的数据或上下文。我们可以将其称为活动信息。如果您只是与 LLM 聊天,那么上下文可以是您的查询或之前的所有聊天记录。但正如之前所讨论的,随着对话时间过长,LLM 可能会开始跳过或忘记一些上下文。
- 处理过程记忆(Procedural memory)这包括传递给 LLM 的一组规则或指南,以及用于生成响应的上下文内存。这些规则或指南以代码、配置或提示的形式添加到 LLM 中。您可能见过与用户查询一起传递的提示(通常称为系统提示),其中提到了 LLM 的一些基本规则,例如, “您是一位乐于助人的助手”。
- 长期记忆(Long-term memory)长期记忆负责长期存储信息。这些信息包括用户的基本事实、关键事件等,需要存储并随时调用。用户的生日等基本信息属于长期记忆。长期记忆使 LLM 智能体能够在对话中保持有意义的语境,并利用之前的讨论和用户偏好作为答案的基础,从而提供更具语境感知和相关性的响应。
这又有两种不同的类型:
3.1 情景记忆(Episodic memory)
情景记忆包括过去的事件、经历等。这对于 LLM 智能体记住过去与特定用户在特定任务中的互动非常重要。这些通常存储在外部数据源中,而不是内存中。
3.2 语义记忆(Semantic memory)
这包括关键事实及其与其他信息的关系,这些信息有助于智能体建立其响应的基础。在个性化智能体中,这些信息可以包括事实、用户偏好以及位置等其他详细信息。这些信息有助于智能体建立其响应的基础,并防止其产生幻觉。就像我们一样,人类利用世界知识作为我们日常任务和响应的信息基础。与情景记忆一样,这些信息也通常以向量嵌入或知识图谱的形式存储在外部数据源中。
为 LLM 智能体添加记忆
现在,很明显,我们不能仅仅依靠上下文窗口来让智能体执行长时间的对话或任务。尽管这对于聊天机器人来说非常有效,因为对话包含在多个会话中,并且每个会话可以容纳多个对话。
LLM 智能体中存在多种记忆管理方法。现在让我们详细了解一下每种方法
改善短期记忆存储
-
包含最近对话的消息缓冲区消息缓冲区存储对话中最新消息,并将其用作响应生成的上下文
-
压缩与摘要
解决上下文长度有限的问题的一种方法是:使用所有先前上下文的摘要,而不是整个上下文。摘要模块可以独立运行,并在一段时间后刷新,以便在需要时始终获取最新的摘要。
上述两种技术在对话长度有限且存在于会话中的场景下效果良好。但是,需要在多个会话中持久化信息的 LLM 智能体通常无法提供理想的用户体验。LLM 智能体需要一种机制来动态组织长期记忆和短期记忆,更好地表示存储的记忆,并定期更新/添加/删除存储的记忆等,以便建立对话之间的关系。
内存管理的基础方法
1.基于 RAG 的记忆管理
RAG(检索增强生成)是当今许多内存管理架构的基础。RAG 允许 AI 智能体根据用户查询从外部来源获取相关信息。
在这里,短期记忆和长期记忆是分开存储的。短期记忆,包括最近的查询和 AI 响应、系统提示等,将存储在活动记忆中。长期记忆包含整个对话历史记录,包括用户事实、偏好、发生的事件以及智能体随时间获取的其他信息。长期记忆将以嵌入的形式存储在外部数据库中,例如向量数据存储。
当用户发送查询时,首先,该查询会被转换为嵌入向量。新的查询将与最近的“m”条消息、系统提示等信息连接起来。接下来,最近的查询会被传递给检索模块,用于从向量数据库中获取最相似的记忆。这通过语义相似性搜索完成。检索到的长期记忆以及记忆中的上下文信息将被传递给 LLM 以生成响应。然而,仅仅检索和生成不足以管理智能体中的内存。智能体的记忆应该根据过去的交互不断演进和更新。这意味着系统还应该使用新的交互细节更新内存模块,并且如果检测到任何冲突,它也会进行更新。
2.带有知识图谱的 RAG
知识图谱使用实体和边来表示数据以及数据之间的关系。节点会带有用于分组的标签。关系具有类型和方向。节点和边都存储数据。
知识图谱的简单表示这将以结构化格式而非密集向量格式存储信息。这种存储方式的优点在于,对于每个数据,我们可以检索或考虑所有其他相关数据,从而提供更多上下文信息。这也使得查询记忆的检索速度更快。同样,为了存储数据,我们需要将其转换为嵌入,然后将嵌入数据存储为图中的节点。之后,将创建边,建立节点之间的各种关系。知识图谱设置完成后,就可以将其用作检索器进行相似性搜索。Neo4J 是一个流行的用于存储知识图谱的向量存储系统。
与传统的基于 RAG 的内存管理类似,我们也可以分别处理短期记忆和长期记忆,并在推理过程中合并它们以生成 LLM 响应。
改善长期记忆存储
1. MemGPT
MemGPT 为 LLM 智能体引入了一种分层内存系统,其灵感源自传统操作系统 (OS) 内存管理架构。MemGPT 区分了两个主要内存层:主内存(类似于 RAM 或计算期间可访问的物理内存)和外部内存(类似于磁盘存储,可容纳大量非上下文信息或存档信息)。
对于每个查询,LLM 智能体都会动态地决定哪些上下文信息需要加载到主内存中,以使其保持在模型的固定上下文窗口内。此决策由专门的函数自主管理,这些函数基于时间因素、相关性、语义相似性和对话优先级来控制内存内容的搜索、组织、更新和访问。这种自主的内存管理使智能体能够在其内存中模拟类似操作系统的分页和交换操作,从而优化有限上下文大小的使用,同时保留当前上下文之外的广泛知识。
MemGPT 内存模型的关键方面包括:
- 分层内存架构:系统对内存进行分段,使得快速访问的主内存包含集中的、有限的上下文窗口,而外部内存则用作较慢、较大的存储,用于存储长期或不太相关的知识。
- 基于函数的内存控制:MemGPT 使 LLM 自身能够调用内存管理函数,有效地执行自主读写操作以及主内存区域和外部内存区域之间的内存传输。这包括在处理过程中根据需要更新存储的内存或调用存档数据。
- 自主记忆编辑和检索:LLM 根据任务和目标自主决定何时将对话历史或其他数据从外部记忆移动到主记忆中,从而保持最新的动态工作环境。
- 上下文窗口扩展:通过利用这种分层和动态的内存移动,MemGPT 克服了固定上下文窗口的限制,允许在大量扩展的交互历史或大型文档上进行对话和推理。
- 受操作系统概念启发:MemGPT 借鉴了操作系统事件循环、中断处理和函数链原理,创建了一个将内存管理与推理周期紧密结合的 AI 系统,能够高效处理与内存相关的操作以及用户交互
2.Langmem
Langmem 是 Langchain 生态系统中的一款高级内存管理系统,旨在为智能体提供跨会话和任务的持久长期记忆。其核心功能是核心内存 API,允许与任何存储后端和智能体框架集成,从而实现灵活部署并与主流系统实现互操作。这些组件包括两个专用工具:
create_manage_memory_tool :使智能体能够实时添加、更新和删除长期记忆。
create_search_memory_tool :允许智能体在活动对话期间使用语义或基于元数据的查询在现有的长期记忆中搜索相关的过去信息。Langmem 的内存管理在“热路径”中运行,在对话过程中记录和检索关键信息,确保智能体无需等待会话完成即可保持情境感知和响应。内存管理器使用 LLM 根据对话重要性和用户偏好提取、汇总和更新长期记忆条目。
Langmem 还具有其他功能,例如:
- 后台内存管理器: 异步整合和丰富智能体知识,支持可扩展更新和知识集成。
- 提示词优化器: 使用之前的对话历史和高级优化方法(例如元提示和进化梯度)来改进智能体的系统提示并随着时间的推移改善对齐。
- 原生 LangGraph 集成: 支持默认持久性和分层命名空间管理,用于跨上下文组织智能体、用户或组织内存。
- 支持多种记忆类型: Langmem 正式支持语义、情景和程序记忆,根据应用需求实现定制的回忆和推理。
- 丰富的结构化存储: 使用元数据存储信息并支持灵活的检索模式,包括直接、语义和上下文过滤。
Langmem 通过结合“热路径”响应、背景丰富和强大的提示优化方法彻底改变了智能体记忆,使 LLM 智能体在对话能力方面更加一致、个性化,并且越来越像人类。
3.Mem0 and Mem0g
Mem0 是另一种架构,它使用专用内存模块动态地提取、更新、评估和存储对话信息。Mem0g 是一种基于图的内存表示,它建立在 Mem0 的基础上,有助于捕捉更复杂的关系并更好地检索对话。
3.1 Mem0
Mem0 架构主要包含两个阶段。第一阶段是提取阶段。顾名思义,该阶段负责使用针对特定用户查询的专用历史记录,从对话中提取最相关的上下文信息。
当用户输入新的查询时,提取阶段首先准备信息提取所需的内容。这些内容包括
- 最新消息对 (mt-1, mt),其中 mt 表示当前用户消息,mt-1 表示上一条消息
- 过去 n 条最近消息的序列,表示为 {mt-n, mt-n+1,…mt-2},其中 n 可以是超参数
- 对话历史摘要 S,从数据库中检索,代表整个对话历史的语义内容。该摘要由异步摘要生成模块独立生成,并且定期生成,不会干扰主流程。
此内容用于准备综合提示,
P = (S,{mt-n, mt-n+1,…mt-2}, mt-1, mt)
最后,该提示被提供给由 LLM 驱动的提取模块,以提取显著记忆 Ω,其中,
Ω = {w1,w2,m3…,wn}
下一阶段是更新阶段,该阶段获取这些提取出的显著记忆 Ω 并对其进行评估。对于每个显著记忆“wi”,从数据库中提取前“s”个语义相似的记忆。现在,将显著记忆和相似记忆输入到 LLM,LLM 会评估现有记忆。根据评估结果,LLM 会调用其可用工具之一来执行下一步。这些工具包括:
- 如果没有提取到类似的记忆,则使用 ADD 创建新的记忆。这意味着新的信息应该添加到记忆数据库中。
- 更新用于更改现有记忆。如果当前信息与现有信息相辅相成,则会发生这种情况。智能体应使用最新信息进行更新
- DELETE 用于删除与新信息相矛盾的记忆。
- 当不需要操作时,NOOP
这里,为了存储记忆,利用了具有密集表示的矢量数据库。
3.2 Mem0g
Mem0g 使用基于图形的内存架构,以标记图 G = (V, E, L) 的形式表示数据,其中 V 表示节点(Alice、San_Francisco 等),E 表示节点之间的边或关系(lives_in、works_at、studies_in 等),L 表示用于赋予节点语义含义的标签(Person、Place 等)。
首先,实体提取器模块处理来自用户的输入消息,并提取实体集及其标签。这使用 LLM 完成。然后,另一个 LLM 驱动的模块——关系生成器模块,利用消息中的信息推导出实体之间的有意义关系。一旦我们得到三元组 (V, E, L),Mem0g 就会使用一种混合方法,通过以实体为中心的方法和密集语义搜索方法从数据库中提取相似信息。在以实体为中心的方法中,首先使用相似性度量提取相似的实体或节点。然后,它使用这些相似的节点提取子图,包括来自这些节点的传入和传出关系。在密集相似性搜索方法中,会为查询计算一个密集嵌入向量,然后将其与图数据库中每个关系三元组的嵌入向量进行匹配。对于图数据库,Mem0g 使用 Neo4j。
在第二阶段,即更新阶段,引入了冲突检测机制,用于在新数据到来时识别图中是否存在任何冲突关系。之后,基于 LLM 的更新解析器将确定是否需要对任何关系进行更改。
4. A-mem
虽然我们看到一些使用图数据库进行内存存储以提供结构化数据组织的例子,但其中许多依赖于预定义的模式和关系。这种严格性会降低它们在表示各种数据格式方面的适应性和动态性。例如,考虑一个数学问题,其中的问题陈述、各种求解步骤、中间结果和相关概念可能无法完全适应固定的图模式。
在多种环境中推广数据表示的困难是 A-Mem 的主要动机。A-Mem 可以在动态结构中表示数据,而不依赖于静态的、预定的模式。
A-mem 也分多个阶段发挥作用
a. 注意构造每当有新消息传入时,LLM 驱动的模块都会构建一个结构化的记忆笔记,表示为 mi = {ci, ti, Ki, Gi, Xi, ei, Li}。所有这些记忆笔记都存储在集合 M 中。
对于每mi:
- Ci——当前交互信息
- Ti – 当前时间戳
- Ki – LLM 生成的关键字
- Gi – LLM 为消息生成的标签,用于对内容进行分类
- Xi – LLM 生成的上下文描述
- Ei – ci、Ki、Gi、Xi 连接结果的密集向量表示
- Li — 基于语义相似性与当前查询关联的记忆集
b. 链接生成
当创建新的记忆记录时,首先会基于语义相似性搜索检索最相似的笔记。然后,LLM 会被提示在相似的记忆之间构建有意义的联系。这种链接的创建更加灵活,无需任何预定义的规则或结构。
c. 记忆演化和记忆提取
一旦为新记忆创建了链接,A 记忆就会根据新信息和连接检查是否需要更新相似的记忆,从而确保最新的记忆存储在数据库中。最后一个阶段是为用户查询准备上下文感知记忆,以便 LLM 生成响应。这通过在密集嵌入上使用相似性搜索来检索最相似的记忆来实现。检索用户查询的前 k 个相关且更新的记忆,以构建最终提示。
结论
Mem GPT、Mem0、Mem0g、Langmem 等内存管理架构的多样化方法,凸显了大型语言模型智能体内存的不断发展。这些先进的架构将增强长期智能体内存,并释放 AI 应用的新潜力,为更强大、更具上下文感知的 LLM 智能体铺平道路。
大模型未来如何发展?普通人如何抓住AI大模型的风口?
※领取方式在文末
为什么要学习大模型?——时代浪潮已至
随着AI技术飞速发展,大模型的应用已从理论走向大规模落地,渗透到社会经济的方方面面。
- 技术能力上:其强大的数据处理与模式识别能力,正在重塑自然语言处理、计算机视觉等领域。
- 行业应用上:开源人工智能大模型已走出实验室,广泛落地于医疗、金融、制造等众多行业。尤其在金融、企业服务、制造和法律领域,应用占比已超过30%,正在创造实实在在的价值。

未来大模型行业竞争格局以及市场规模分析预测:

同时,AI大模型技术的爆发,直接催生了产业链上一批高薪新职业,相关岗位需求井喷:

AI浪潮已至,对技术人而言,学习大模型不再是选择,而是避免被淘汰的必然。这关乎你的未来,刻不容缓!
那么,我们如何学习AI大模型呢?
在一线互联网企业工作十余年里,我指导过不少同行后辈,经常会收到一些问题,我是小白,学习大模型该从哪里入手呢?我自学没有方向怎么办?这个地方我不会啊。如果你也有类似的经历,一定要继续看下去!这些问题,也不是三言两语啊就能讲明白的。
所以呢,这份精心整理的AI大模型学习资料,我整理好了,免费分享!只希望它能用在正道上,帮助真正想提升自己的朋友。让我们一起用技术做点酷事!
ps:微信扫描即可获取
加上后我将逐一发送资料
与志同道合者共勉
真诚无偿分享!!!

适学人群
我们的课程体系专为以下三类人群精心设计:
-
AI领域起航的应届毕业生:提供系统化的学习路径与丰富的实战项目,助你从零开始,牢牢掌握大模型核心技术,为职业生涯奠定坚实基础。
-
跨界转型的零基础人群:聚焦于AI应用场景,通过低代码工具让你轻松实现“AI+行业”的融合创新,无需深奥的编程基础也能拥抱AI时代。
-
寻求突破瓶颈的传统开发者(如Java/前端等):将带你深入Transformer架构与LangChain框架,助你成功转型为备受市场青睐的AI全栈工程师,实现职业价值的跃升。

※大模型全套学习资料展示
通过与MoPaaS魔泊云的强强联合,我们的课程实现了质的飞跃。我们持续优化课程架构,并新增了多项贴合产业需求的前沿技术实践,确保你能获得更系统、更实战、更落地的大模型工程化能力,从容应对真实业务挑战。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
01 大模型系统化学习路线
作为学习AI大模型技术的新手,方向至关重要。 正确的学习路线可以为你节省时间,少走弯路;方向不对,努力白费。希望这份最科学最系统的学习成长路线图和学习规划,带你从零基础入门到精通!

👇微信扫描下方二维码即可~

本教程比较珍贵,仅限大家自行学习,不要传播!更严禁商用!
02 大模型学习书籍&文档
新手必备的权威大模型学习PDF书单来了!全是一系列由领域内的顶尖专家撰写的大模型技术的书籍和学习文档(电子版),从基础理论到实战应用,硬核到不行!
※(真免费,真有用,错过这次拍大腿!)

03 AI大模型最新行业报告
2025最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

04 大模型项目实战&配套源码
学以致用,在项目实战中检验和巩固你所学到的知识,同时为你找工作就业和职业发展打下坚实的基础。

05 大模型大厂面试真题
面试不仅是技术的较量,更需要充分的准备。在你已经掌握了大模型技术之后,就需要开始准备面试,我精心整理了一份大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。


06 全套AI大模型应用开发视频教程
(包含提示工程、RAG、LangChain、Agent、模型微调与部署、DeepSeek等技术点)

由于篇幅有限
只展示部分资料
并且还在持续更新中…
ps:微信扫描即可获取
加上后我将逐一发送资料
与志同道合者共勉
真诚无偿分享!!!
最后,祝大家学习顺利,抓住机遇,共创美好未来!
更多推荐




所有评论(0)