深度学习文档 · Agent 工程

Agent 记忆系统(Agent Memory)
让智能体「记住并持续变强」

为什么给 LLM 接个向量库还不够?短期便签、任务记忆、长期知识该怎么分层?向量记忆和图记忆到底谁更好?这篇带你把 2026 年 Agent 记忆这门「工程学科」从头捋清楚。

调研时间:2026-07-12 · 面向零基础但有技术常识的读者 · 全文约 25 分钟

01先问一句:LLM 不是「无状态」的吗?

要懂记忆,得先看清没有记忆时,Agent 有多「健忘」。

大语言模型本质上是一个无状态(stateless)的函数:你给它一段输入(prompt),它算一段输出,算完就忘。它唯一「知道」的东西,就是你这次塞进上下文窗口(context window)里的文字。上一轮对话说过什么、上周帮你定过什么规矩、你叫什么名字——只要不在这次的输入里,模型一概不知。

那 ChatGPT 为什么能记住我们刚才聊的内容?答案朴素得有点扫兴:应用层每次都把历史对话重新拼回输入里再发给模型。模型没记住,是程序在帮它「补课」。

🎬 一个类比:《记忆碎片》里的主角

电影《记忆碎片》的主角有短期失忆症,每隔几分钟就忘光。他靠什么生活?靠往身上纹字、往拍立得照片上记笔记——把关键信息写在「身体外部」,下次再读一遍。LLM 就是这个主角,而记忆系统就是那些纹身和便利贴:一套决定「什么该记下来、记在哪、下次什么时候再读回来」的机制。

问题来了:最笨的办法是「把所有历史全拼回去」。但上下文窗口有上限(哪怕 2026 年旗舰模型动辄百万级 token),而且塞得越满,又慢、又贵、还越容易分心——研究和工程界都反复观察到,无关内容堆在上下文里会稀释模型注意力(俗称「上下文腐烂 / context rot」)。于是真正的问题不是「能不能记」,而是「该记什么、丢什么、什么时候把哪条捞回来」——这就是 Agent 记忆系统要解决的事。

一句话抓住重点 Agent 记忆系统 = 在有限的上下文窗口之外,替智能体管理一套「外部存储 + 取用策略」,让它跨对话、跨任务地记住该记的东西,并在需要时精准地捞回来。

02「记忆」到底指哪几种?

这个词被用得很泛。先把它拆成几种,后面才不会越看越糊。

业界常借用认知心理学对人类记忆的分类来给 Agent 记忆命名。别被术语吓到,每个都对应你熟悉的日常经验:

🧾 工作记忆 / 短期记忆

当前这一轮任务正在用的信息,像你脑子里临时记着的电话号码。对应 Agent 里的当前上下文窗口,任务一结束基本就清空。

📚 情景记忆(Episodic)

「某时某地发生过某事」的经历。对 Agent 来说就是过往的对话/操作轨迹:上周三你让它把报告改成正式语气,这条经历。

🧠 语义记忆(Semantic)

抽象的事实与知识,不绑定具体时间。比如「用户叫 mingyu、偏好中文、在做 AI 情报助手」——这类关于世界和用户的稳定事实

🛠️ 程序记忆(Procedural)

「怎么做某件事」的技能与流程,像你不用想就会骑车。对 Agent 来说是固化下来的工作流/规则/技能(和 system prompt、工具用法有交叠)。
别把它和 RAG 混为一谈 很多人以为「Agent 记忆 = RAG(检索增强生成)」。有重叠,但不等价。RAG 是从一堆固定文档里检索知识(比如查产品手册);记忆更强调「Agent 自己在交互中产生、更新、遗忘的信息」,而且要处理时间、来源、冲突(上周的偏好这周被推翻了怎么办)。RAG 偏「读一个静态知识库」,记忆偏「维护一个会长大的、属于这个 Agent 的私人档案」。
保留时间越长 → 越稳定/越抽象 ↑ 工作/短期记忆 情景记忆 语义记忆 程序记忆
四种记忆按「保留时长 × 稳定度」大致分布。工作记忆瞬时易失,程序记忆最稳定持久。(示意图,依据认知记忆分类整理)

03核心架构:为什么大家都在做「分层记忆」

2026 年的行业共识不是「上更花哨的数据库」,而是先把记忆分成几层。

据 mem0 的《2026 Agent 记忆现状》和多篇工程博客,当下最标准的起手式是分层(tiered)记忆——不是什么高级技巧,而是默认起点。它把记忆按「多快过期、要不要主动保留」切成几档:

  • 短期便签(scratchpad):只服务当前这一个任务,任务做完就整块擦掉。用来放中间推理、临时变量。
  • 中期任务记忆:跨几轮但不永久。特点是「会衰减」——如果一段时间没被再次用到,就自动淡出;被反复调用则强化。
  • 长期记忆:要进这一层,通常需要显式「提升(promotion)」——即明确判断「这条值得永久记住」才写进去,避免长期库被垃圾信息淹没。
上下文窗口(RAM) system prompt · 当前对话 工作/短期记忆(便签) 容量有限,又贵又易分心 中期任务记忆 跨轮·长期不用则衰减遗忘 长期记忆(Disk) 语义事实·情景·需显式提升 检索层(向量/图) 按相关性把该记的捞回上下文 写入 检索并注入回上下文 核心循环:每一轮 —— 决定写什么进记忆 · 决定捞什么回上下文 · 让没用的自然衰减
分层记忆的读写循环:上下文窗口像 RAM(快但小),外部记忆像磁盘(大但需检索),检索层负责在两者间搬运。(依据 mem0 / Letta / Fountain City 工程博客整理)
MemGPT 的灵魂比喻:LLM 即操作系统 这套「上下文=内存、外部记忆=磁盘、系统负责在两者间调度」的思路,最有名的表述来自 2023 年的 MemGPT 论文(后来演化成 Letta 框架)。它的洞见是:操作系统当年就是用「虚拟内存」制造了「内存无限大」的错觉,那 Agent 也可以用同样的分层调度,在固定上下文里制造「记忆无限」的错觉。

值得注意的一个 2026 年趋势:遗忘正在被当成一等公民设计。据 Mem0 的研究表述,好的记忆系统会内置「类人遗忘机制」——被回忆到就强化、长期不用就自然衰减。因为一个只增不减的记忆库,最终会变成又慢又吵的负担。

04捞回记忆的两条路:向量 vs 图

存下来只是第一步,「怎么按需捞回来」才是记忆系统的技术分水岭。

2026 年一个重要转变是:记忆检索正从「纯向量相似度」走向「向量 + 图」的组合。这两种方式各解决一类问题,理解它们的差别,你就理解了大半个记忆生态。

路线一:向量记忆(语义相似度)

是什么:把每条记忆变成一串数字(向量 / embedding),含义相近的记忆在数学空间里靠得近。检索时把「当前问题」也变成向量,找空间里最近的几条捞回来。
大白话:就像按「意思像不像」找东西。你问「他上次点的咖啡」,它能捞回「用户喜欢燕麦拿铁」——哪怕没有一个词完全对上,因为意思接近。

强在哪:模糊语义匹配、上手快、生态成熟。弱在哪:不擅长「关系」和「多跳推理」。你问「我同事的老板叫什么」,向量搜索很难顺着「我→同事→老板」这条链走。

路线二:图记忆(实体与关系)

是什么:把记忆组织成一张知识图谱——节点是实体(人、项目、公司),边是关系(「就职于」「负责」「偏好」)。检索时顺着节点和边走。
大白话:像人脑里的关系网。知道「A 是 B 的下属」「B 负责项目 C」,就能推出「A 参与了 C」——沿着关系链一路问下去。

强在哪:多跳关系、结构化事实、随时间演化的信息(谁在什么时候换了工作)。代表项目有 Zep / Graphiti弱在哪:构建和维护更重,要先抽取实体和关系。

向量记忆:找最近的点 查询 图记忆:顺关系链走 同事 老板 同事 上级
向量按「语义距离」捞相近记忆;图按「实体—关系」做多跳推理。2026 年主流做法是两者混用。(示意图)
一句社区共识 「Graph-style memory 通过实体和关系检索事实。两者都有用,单靠谁都不够。」——mem0《Agent 记忆现状 2026》的表述,点破了「向量 or 图」是个伪二选一。

05怎么落地:以 Letta(MemGPT)为例

概念说够了,看一个真实框架长什么样、你要写什么。

Letta(前身即 MemGPT)是一个开源的有状态(stateful)Agent 框架。它最有代表性的设计是:让 Agent 自己用「工具调用」来管理自己的记忆——模型在正常对话循环里,像调用别的工具一样,主动调用「编辑记忆」的工具来增删改自己的记忆块。

Letta 的记忆按 OS 隐喻分三层(据 Letta 官方博客):

层级类比作用
Main context(核心/主上下文)RAM当前直接可见的内容,含可被模型自己编辑的「记忆块(memory blocks)」,如用户画像、当前任务规则
Recall storage(回忆存储)近期归档完整的历史对话记录,需要时检索调回
Archival storage(归档存储)磁盘无上限的长期外部存储,放大量事实/文档,靠检索取用

关键点在于:模型不是被动地被塞记忆,而是被赋予一组记忆管理工具,自己决定「这条重要,写进核心记忆块」或「这段太长,归档到 archival」。下面是这种「自管理记忆」的示意流程(概念示意,非某一版精确 API):

# 概念示意:Agent 在对话循环里自己管理记忆(伪代码)
用户: 以后所有报告都用正式书面语,别用口语。

# 模型判断:这是一条应长期保留的偏好 → 主动调用记忆工具
core_memory_append(
    block = "user_preferences",
    content = "报告一律用正式书面语,避免口语化表达"
)

# 下一次、哪怕几天后新开一轮对话,这条偏好仍在 main context 的
# user_preferences 块里,模型无需用户重复就会遵守。
上手路径(据官方资料) Letta 是开源的,可自建;想系统学,DeepLearning.AI 有一门与 Letta 合作、由 MemGPT 作者 Charles Packer 和 Sarah Wooders 讲授的免费短课《LLMs as Operating Systems: Agent Memory》,是目前最对口的入门材料。另有社区整理的 30 个可运行 Jupyter notebook(NirDiamant/Agent_Memory_Techniques)覆盖向量、图、MemGPT、Mem0、Zep 等各类技术。
提醒:以官方最新文档为准 记忆框架迭代很快(Letta 自己就写过《Rearchitecting Letta's Agent Loop》博客重构了 Agent 循环)。上面的 API 名称仅为讲解示意,真正动手时请以官方当前文档为准,不要照抄。

06生态盘点:主流方案怎么选

2026 年这个赛道已经从「学术玩具」长成「有托管服务」的市场。

方案定位特点 / 适合场景
Letta(MemGPT)开源有状态 Agent 框架OS 式分层 + Agent 自管理记忆块;想要完全掌控、自建有状态 Agent
Mem0面向生产的记忆层主打可扩展长期记忆 + 类人遗忘/衰减机制;想给现有 Agent「外挂」一层记忆
Zep / Graphiti时序知识图谱记忆强在实体关系 + 随时间演化的事实;需要多跳推理、结构化记忆
AWS Bedrock AgentCore Memory云托管(已 GA/预览)已在 AWS 生态里,想要托管、免自己运维
Google Vertex AI Memory Bank云托管Google Cloud / Vertex 用户的托管记忆
Cloudflare Agent Memory云托管(2026 年 4 月私测)边缘部署的 Agent 记忆,较新
选型的一句话判断完全自控、深度定制 → Letta 这类开源框架;想快速给已有 Agent 加记忆 → Mem0 这类记忆层;记忆关系复杂、需推理 → Zep/Graphiti 图记忆;不想运维 → 三大云的托管服务。多数团队最后是「混搭」:向量做主、图补关系、托管省事。

怎么知道哪个更好?看基准。

这个领域已经有专门的评测基准,最常被引用的是 LoCoMo(长对话记忆基准)。它用超长的多轮对话考察 Agent 能否在很久之后仍答对早先提过的信息。Mem0 等厂商会拿它做对比报告。但要留意:厂商自测的基准数字要打折看——这是记忆赛道尚不成熟的信号之一,后面「坑」一节还会提。

07什么场景真正需要它

不是每个 Agent 都需要复杂记忆。看这几类它明显值回票价的场景。

🤝 个人助理 / 长期陪伴

跨天、跨周记住你的名字、偏好、正在做的项目。今天的 Claude 月度回顾功能就明确「需开启 Memory」——回顾你聊过的主题、活跃时段,正是记忆能力的产品化。

💼 企业工作 Agent

把散落在团队工具里的上下文沉淀下来。OpenAI ChatGPT Work 的核心卖点——「汇聚团队工具上下文、把零散笔记变成成品」——本质就是一套工作记忆。

🎧 客服 / 长会话

用户跨多次会话来找,不用每次重述历史;超长购物/工单轨迹(arXiv 上已有专门论文研究「超长购物轨迹」的记忆)。

🔬 自我改进 Agent

把「上次这么做失败了」的经历(情景记忆)攒下来,下次别再犯——这正是 Stanford CS329A《Self-Improving AI Agents》和 MemRL 等论文的方向:用记忆驱动持续变强。
反过来说 如果你的 Agent 是「一次性、无状态」的(比如一次翻译、一次代码格式化),硬加记忆只会增加成本和出错面。先问「跨会话记住东西能带来价值吗」,答案是否,就别上。

08常见坑与现实限制

这是 2026 年从业者反复踩到的地方,提前知道能省很多时间。

坑 1 · 只增不减 = 越用越笨 不设遗忘/衰减机制,记忆库会无限膨胀,检索又慢又吵,相关性下降。这也是「类人遗忘」被当成核心设计的原因。
坑 2 · 记忆冲突与陈旧 用户上周说喜欢 A、这周改说喜欢 B,系统若不处理时间与来源,就会又拿旧偏好去回答。有论文专门研究长期 Agent 的「来源—角色坍塌(provenance-role collapse)」——记不清一条信息是谁、什么时候说的,是真实难题。
坑 3 · 基准数字要打折 记忆赛道尚早,很多亮眼数字来自厂商自测。研究界的共识是这个领域「进展快但仍很早期」,选型别只看一张对比图,尽量看第三方复现。
坑 4 · 隐私与安全 记忆把用户数据长期留存,天然涉及隐私、合规、数据删除(「被遗忘权」)。生产系统要考虑谁能读、能不能跨用户共享(别把 A 的记忆检索给 B)、如何应用户要求清除。
坑 5 · 别为了记忆而记忆 过度工程化很常见。「两层分层(短期便签 + 长期库)」对大多数应用已经够用,不必一上来就上多图数据库。据工程博客,分层是起点而非终点,按需再加复杂度。

09想继续深入的学习资源

📖 官方 / 框架

Letta 博客《Agent Memory》与《Rearchitecting Letta's Agent Loop》;Mem0 官方博客与论文。

🎓 课程

DeepLearning.AI《LLMs as Operating Systems: Agent Memory》(与 Letta 合作,MemGPT 作者授课);Stanford CS329A(自我改进 Agent,含记忆章节)。

📄 论文

MemGPT(LLMs as OS 的源头);Mem0 论文(arXiv 2504.19413);Agent-Memory 论文清单(GitHub: Shichun-Liu/Agent-Memory-Paper-List)。

🧪 动手

GitHub: NirDiamant/Agent_Memory_Techniques —— 30 个可运行 notebook,覆盖向量、图、MemGPT、Mem0、Zep、LoCoMo 基准。
一条最短上手路径 看完 DeepLearning.AI 那门短课 → 跑一遍 NirDiamant 仓库里的向量记忆和 MemGPT 两个 notebook → 用 Mem0 或 Letta 给你自己的一个小 Agent 加上「记住用户偏好」这一个功能。先做出「跨会话记住一件事」,比读十篇综述都管用。

10来源清单

本文关键事实来自以下调研来源(2026-07-12 检索)。记忆框架 API 迭代快,动手时请以官方最新文档为准。

• mem0《The State of AI Agent Memory 2026》— mem0.ai/blog/state-of-ai-agent-memory-2026
• Fountain City《How to Build and Operate AI Agent Memory in 2026》— fountaincity.tech
• Letta《Agent Memory: How to Build Agents That Learn and Remember》— letta.com/blog/agent-memory
• Letta《Rearchitecting Letta's Agent Loop》— letta.com/blog/letta-v1-agent
• MemGPT: Towards LLMs as Operating Systems(论文解读)— leoniemonigatti.com/papers/memgpt.html
• DeepLearning.AI《LLMs as Operating Systems: Agent Memory》— deeplearning.ai
• Mem0: Building Production-Ready AI Agents with Scalable Long-Term Memory(arXiv 2504.19413)— arxiv.org/pdf/2504.19413
• Agent-Memory-Paper-List(《Memory in the Age of AI Agents: A Survey》)— github.com/Shichun-Liu/Agent-Memory-Paper-List
• NirDiamant/Agent_Memory_Techniques(30 个 notebook)— github.com/NirDiamant/Agent_Memory_Techniques
• The 6 Best AI Agent Memory Frameworks 2026 — machinelearningmastery.com
• Stanford CS329A《Self-Improving AI Agents》— cs329a.stanford.edu
• 相关背景:Anthropic Newsroom(Claude 月度回顾需 Memory)— anthropic.com/news;OpenAI ChatGPT Work — axios.com