掌握AI Agent记忆系统:从入门到高级,收藏这份学习指南
本文详细介绍了AI Agent记忆系统的构建方法从解决单次对话内、跨会话之间以及多用户场景下的记忆问题出发分别介绍了LangChain.js经典Memory、LangGraph.js新一代记忆管理和Zep平台等方案。文章还提供了避坑指南帮助开发者更好地理解和应用Agent记忆系统。对于想要学习大模型和AI Agent开发的程序员来说这是一份非常有价值的学习资料。你跟它说我在北京下一句问这里天气怎么样它根本不知道这里是哪里。上篇文末我们用一个chatHistory数组临时解决了这个问题但那个方案极其粗糙——数组会无限增长、进程一重启就全丢了、多个用户之间还会串数据。真正的 AI 产品记忆系统至少要解决三个问题「单次对话内」Agent 能记住上下文短期记忆「跨会话之间」Agent 能记住用户偏好和历史信息长期记忆「多用户场景」每个用户的记忆互相隔离今天这篇我们就从原理到代码把 Agent 的记忆系统彻底搞清楚。Agent 记忆系统全景先搞懂Agent 记忆有几种在讲具体方案之前先用一个人类的类比来理解 Agent 的记忆体系。「短期记忆Short-term Memory」就像你跟朋友面对面聊天你记得刚才他说了什么。对 Agent 来说就是当前这轮对话的上下文——聊天记录、工具调用结果、中间推理过程。一旦对话结束或进程重启这些信息就没了。「长期记忆Long-term Memory」就像你记得某个朋友不吃辣、“上次推荐过一本书给他”。对 Agent 来说就是跨多次对话积累下来的用户偏好、历史事实、业务知识。这些信息需要持久化存储下次对话还能调出来。用一张表格总结维度短期记忆长期记忆「作用域」单次对话/线程内跨会话、跨线程「生命周期」对话结束即丢失除非持久化长期保存「典型内容」聊天记录、工具调用结果用户偏好、历史事实、业务知识「类比」聊天时的短暂记忆大脑里的长期知识库「实现方式」消息列表 / CheckpointerKV Store / 向量库 / 知识图谱搞清楚分类后接下来我们看具体的技术方案。从最简单的到最强大的一步步来。方案一LangChain.js 经典 Memory入门级LangChain.js 早期提供了四种 Memory 抽象虽然官方已标记为 legacy 并推荐迁移到 LangGraph但理解它们背后的思路能帮你在任何框架里做出正确的记忆决策。「BufferMemory」最直接把完整聊天记录原封不动塞进每次请求。优点是信息无损缺点是对话越长 Token 越贵聊到 50 轮可能已经吃掉半个上下文窗口。「BufferWindowMemory」只保留最近 K 轮旧的直接丢弃。Token 可控但代价是第 1 轮说的重要事情第 K1 轮就彻底忘了。「ConversationSummaryMemory」不存原文而是让 LLM 每轮把对话压缩成一段摘要。不管聊多久摘要长度都可控——但每轮都要多调一次 LLM延迟和成本会上升细节也可能丢失。「ConversationSummaryBufferMemory」前两者的结合——「近期对话保留原文更早的压缩成摘要」。Token 用量可控近期上下文也不失真是这四种里最适合生产的。四种方案的核心权衡一张图说清楚四种经典 Memory 方案对比这些经典 Memory 类已被标记为 legacy但「全量 vs 窗口 vs 摘要 vs 混合」这四种思路在任何记忆框架里都通用值得理解。方案二LangGraph.js 新一代记忆管理推荐LangGraph.js 把记忆分成两层来管「Checkpointer 管短期Store 管长期」。短期记忆Checkpointer thread_id每次 Agent 执行完一步Checkpointer 都会自动把当前状态包括聊天记录存下来。只要带上同一个thread_id下次对话就能从上次继续——Agent 不会失忆。const checkpointer newMemorySaver(); // 开发用生产换 PostgresSaver const agent createReactAgent({ llm, tools, checkpointer }); const config { configurable: { thread_id: user-001-session-1 } }; await agent.invoke({ messages: [{ role: human, content: 我在北京 }] }, config); // 同一个 thread_id下轮对话 Agent 记得你在北京 await agent.invoke({ messages: [{ role: human, content: 这里天气怎么样 }] }, config);thread_id就是会话的身份证——相同 ID 共享历史不同 ID 完全隔离天然支持多用户。长期记忆Store 命名空间短期记忆只在同一个线程内有效一旦开新会话就又不认识你了。长期记忆靠Store解决数据按命名空间存放任何线程、任何时候都能读到const store newInMemoryStore(); // 开发用生产换数据库实现 // 存把用户偏好写入长期记忆 await store.put([users, user-001], preferences, { favoriteFramework: React }); // 取新会话里也能读到 const item await store.get([users, user-001], preferences);命名空间类似文件夹路径——[users, user-001]是某用户的私有空间[org, shared]是组织共享的知识库。把读取/写入偏好做成工具交给 Agent它就能自己决定什么时候记、什么时候查。「核心公式」Checkpointer单次对话不失忆 Store跨对话记住你 完整的记忆体系。方案三用 Zep 给 Agent 加上超级记忆前面两种方案存什么、取什么都要自己写逻辑。如果你想要一个更智能的记忆层——对话进去知识图谱自动出来——可以看看 「Zep」。Zep 是什么Zep 是一个专门做 AI Agent 记忆的平台核心是「时序知识图谱Temporal Knowledge Graph」。你把对话扔进去它自动干三件事「提取事实」从对话里识别用户喜欢 React、项目用 Next.js这些结构化信息「时序追踪」记住事实的时间线——“用户三个月前用 Vue现在改用 React”旧事实自动标记过期「智能检索」Agent 需要上下文时用语义 图算法 时间三重过滤200ms 返回最相关的记忆Zep 时序知识图谱架构为什么不直接把聊天记录全塞给 LLM聊了 200 轮就是几万 Token——一次请求费用高、大量内容是噪声、LLM 在超长上下文里准确率还会下降。Zep 把几万 Token 的原始对话压缩成知识图谱里的几十个节点检索时只返回相关的几百 Token。官方数据「只用不到 2% 的 Token准确率反而更高」。接入方式安装依赖后核心流程三步走npm install getzep/zep-cloud langchain/communityconst zep newZepClient({ apiKey: process.env.ZEP_API_KEY }); // ① 存入对话Zep 自动提取事实、构建图谱 await zep.memory.add(sessionId, { messages: [...] }); // ② 检索记忆——自动生成摘要 事实列表 const memory await zep.memory.get(sessionId); // memory.summary → 对话摘要 // memory.facts → [用户在学 LangChain.js, 技术栈: React Next.js, ...] // ③ 跨会话语义搜索 const results await zep.memory.searchSessions({ userId, text: 用户的技术栈 });和 LangChain.js 集成时用ZepCloudChatMessageHistory替换普通的消息历史再把memory.facts注入 System PromptAgent 就能在每轮对话里自动感知用户的历史背景。「Zep 的核心价值」自动摘要、事实提取、时序感知、跨会话搜索、低延迟——这些在 LangGraph Store 里都需要自己实现Zep 帮你全包了。三种方案怎么选三种记忆方案对比维度经典 MemoryLangGraph 方案Zep「短期记忆」BufferMemory 系列Checkpointer自动内置「长期记忆」需自己实现Store手动读写自动知识图谱「多用户隔离」需自己实现thread_id / namespace内置 user/session「智能程度」低规则驱动中灵活可控高自动提取检索「部署复杂度」低中中高需要 Zep 服务「适用阶段」Demo / 学习生产推荐对记忆质量要求高的产品「我的建议」「学习阶段」先用经典 Memory 理解概念再切 LangGraph「生产项目基础」LangGraph Checkpointer Store灵活度够用「生产项目高阶」LangGraph Zep让 Zep 管长期记忆LangGraph 管工作流「对话密集型产品」如 AI 客服、AI 陪伴直接上 Zep它在这个场景下 ROI 最高避坑指南1. 上下文窗口溢出不管用哪种方案最终都会把记忆塞进 LLM 的 Prompt。一旦超出模型的上下文窗口比如 GPT-4o 是 128K Token就会报错或被截断。「解法」用 SummaryBufferMemory 或 Zep 控制 Token 量如果自己管消息列表发送前用js-tiktoken算一下总 Token 数超过阈值就触发压缩或截断。2. 记忆污染如果 Agent 把错误的信息存进了长期记忆比如 LLM 幻觉生成了错误事实后续对话都会受影响。「解法」长期记忆的写入加人工审核或置信度过滤给记忆加时间戳和来源标记方便追溯和清理定期做记忆垃圾回收3. 多用户数据串了这是最容易犯的错——忘了隔离不同用户的记忆。「解法」LangGraph 里严格用thread_id区分会话、namespace 区分用户Zep 里用userIdsessionId组合。在调用入口加一层参数校验强制要求传user_id杜绝漏传。4. 冷启动问题新用户第一次来Agent 对他一无所知。「解法」在第一轮对话中主动收集关键信息“请问你主要做什么方向的开发”如果有用户画像数据从业务系统导入提前写入长期记忆设置合理的默认记忆“如果不确定用户背景按中级前端开发者回答”5. 记忆检索不准Store 里存了一堆信息但 Agent 检索不到想要的。「解法」给记忆加 metadata标签、分类方便过滤用向量搜索代替精确匹配Zep 的知识图谱在这方面表现最好——它用语义 图结构 时间三重过滤总结Agent 的记忆系统说白了就是解决三个层次的问题「当前对话不失忆」→ 短期记忆Checkpointer / BufferMemory「跨对话还记得你」→ 长期记忆Store / Zep 知识图谱「多用户不串数据」→ 隔离机制thread_id / namespace / userId从简单到复杂技术方案的演进路径是数组手动管理上篇的 chatHistory → 经典 Memory 抽象BufferMemory 系列 → LangGraph Checkpointer Store当前推荐 → Zep 时序知识图谱高阶选择如果你跟着上一篇搭了第一个 Agent现在可以给它加上记忆试试。推荐直接从 LangGraph 方案开始——代码量不比经典 Memory 多多少但能力和灵活度高一个档次。如何学习大模型 AI 由于新岗位的生产效率要优于被取代岗位的生产效率所以实际上整个社会的生产效率是提升的。但是具体到个人只能说是“最先掌握AI的人将会比较晚掌握AI的人有竞争优势”。这句话放在计算机、互联网、移动互联网的开局时期都是一样的道理。我在一线科技企业深耕十二载见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事早已在效率与薪资上形成代际优势我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我们整理出这套AI 大模型突围资料包✅ 从零到一的 AI 学习路径图✅ 大模型调优实战手册附医疗/金融等大厂真实案例✅ 百度/阿里专家闭门录播课✅ 大模型当下最新行业报告✅ 真实大厂面试真题✅ 2026 最新岗位需求图谱所有资料 ⚡️ 朋友们如果有需要《AI大模型入门进阶学习资源包》下方扫码获取~① 全套AI大模型应用开发视频教程包含提示工程、RAG、LangChain、Agent、模型微调与部署、DeepSeek等技术点② 大模型系统化学习路线作为学习AI大模型技术的新手方向至关重要。 正确的学习路线可以为你节省时间少走弯路方向不对努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划带你从零基础入门到精通③ 大模型学习书籍文档学习AI大模型离不开书籍文档我精选了一系列大模型技术的书籍和学习文档电子版它们由领域内的顶尖专家撰写内容全面、深入、详尽为你学习大模型提供坚实的理论基础。④ AI大模型最新行业报告2025最新行业报告针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估以了解哪些行业更适合引入大模型的技术和应用以及在哪些方面可以发挥大模型的优势。⑤ 大模型项目实战配套源码学以致用在项目实战中检验和巩固你所学到的知识同时为你找工作就业和职业发展打下坚实的基础。⑥ 大模型大厂面试真题面试不仅是技术的较量更需要充分的准备。在你已经掌握了大模型技术之后就需要开始准备面试我精心整理了一份大模型面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。以上资料如何领取为什么大家都在学大模型最近科技巨头英特尔宣布裁员2万人传统岗位不断缩减但AI相关技术岗疯狂扩招有3-5年经验大厂薪资就能给到50K*20薪不出1年“有AI项目经验”将成为投递简历的门槛。风口之下与其像“温水煮青蛙”一样坐等被行业淘汰不如先人一步掌握AI大模型原理应用技术项目实操经验“顺风”翻盘这些资料真的有用吗这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理现任上海殷泊信息科技CEO其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证服务航天科工、国家电网等1000企业以第一作者在IEEE Transactions发表论文50篇获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的技术人员这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。以上全套大模型资料如何领取

相关新闻

【Linux运维极简教程】12-性能监控与优化

【Linux运维极简教程】12-性能监控与优化

12 - 性能监控与优化 一、性能监控概述 系统性能由四大核心资源决定: CPU → 内存 → 磁盘 IO → 网络性能问题通常是某个资源成为瓶颈,导致整个系统变慢。运维的目标是及时发现瓶颈并优化。 性能排查思路 1. 确认问题:是否真的有性能问…

2026/10/18 0:53:46 阅读更多 →
亚洲EMBA怎么选?2026民企老板择校性价比实测榜单

亚洲EMBA怎么选?2026民企老板择校性价比实测榜单

【客观测评声明】本文为独立财经测评内容,无硬性品牌营销导向,基于2026年亚洲主流EMBA项目公开数据,从民企实业经营视角,客观拆解各项目适配度、优势与短板,为企业创始人、高管提供理性择校参考,规避择校踩…

2026/10/19 22:58:47 阅读更多 →
免费解锁Wand游戏修改器高级功能的完整开源解决方案

免费解锁Wand游戏修改器高级功能的完整开源解决方案

免费解锁Wand游戏修改器高级功能的完整开源解决方案 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/GitHub_Trending/we/Wand-Enhancer 还在为Wand(原WeMod)的…

2026/10/17 8:49:26 阅读更多 →

最新新闻

构建跨会话跨Agent的语义上下文底座

构建跨会话跨Agent的语义上下文底座

1. 项目概述:为什么“跨会话上下文”成了当前智能体开发的硬伤最近在几个实际交付的智能体项目里,我反复被同一个问题卡住:用户上午问“帮我分析下这份销售报表”,下午接着问“上份报表里华东区的数据怎么变化的”,系统…

2026/10/21 8:01:13 阅读更多 →
主动悬架鲁棒故障诊断与容错控制仿真实现

主动悬架鲁棒故障诊断与容错控制仿真实现

汽车主动悬架这个方向,做控制的人往往有个习惯:先把控制器性能指标推到极致,然后仿真跑出来一条漂亮的时域曲线,就觉得自己搞定了。但现实不是这样——真实的主动悬架系统里,位移传感器会漂移、力传感器会偏置、作动器…

2026/10/21 8:01:13 阅读更多 →
jvisualvm.exe实战:从堆dump到线程堵塞的JVM问题排查指南

jvisualvm.exe实战:从堆dump到线程堵塞的JVM问题排查指南

1. 别急着上重量级工具:jvisualvm.exe为什么是排查JVM问题的第一站先说个我自己的真实经历。去年某天下午,线上一个订单服务突然开始频繁告警,接口平均耗时从50ms直接飙到3秒多,CPU占用率稳定在95%以上。当时组里几个同事的第一反…

2026/10/21 8:01:13 阅读更多 →
Spring AI 初体验:ChatClient 四步链式调用快速接入大模型

Spring AI 初体验:ChatClient 四步链式调用快速接入大模型

第一次用 Spring AI 给我留下最深印象的一件事,不是模型本身有多智能,而是整个接入过程短到让我怀疑是不是漏了步骤:加依赖、配一段 yml、注入一个 ChatClient,四步链式调用就能把大模型接进 Spring Boot 项目。整个过程不需要手写…

2026/10/21 8:01:13 阅读更多 →
中文自然语言处理入门:从分词到深度学习的核心概念与实践

中文自然语言处理入门:从分词到深度学习的核心概念与实践

简介:这是一份面向Python中文自然语言处理初学者与进阶开发者的实战型学习资料,围绕分词、词性标注、命名实体识别、情感分析、主题建模及深度学习模型等核心主题展开,帮助读者从环境搭建一路走到聊天机器人、垃圾邮件检测、自动摘要等真实项…

2026/10/21 8:01:13 阅读更多 →
GEO源码平台部署全攻略:从环境配置到报错排查实战

GEO源码平台部署全攻略:从环境配置到报错排查实战

最近一两年,GEO(Generative Engine Optimization,生成引擎优化)已经从概念炒作变成了实打实的业务刚需。看着搜索结果里那些AI概览、大模型直接引用品牌信息,不少团队都想搭建一套自己的GEO分析平台,用来监…

2026/10/21 8:00:12 阅读更多 →

日新闻

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

2026/10/21 0:00:11 阅读更多 →
AI助手深度使用体验:对话质量、长文本处理与指令遵循如何留住用户

AI助手深度使用体验:对话质量、长文本处理与指令遵循如何留住用户

1. 从“封号重开”这个行为说起:用户到底在追求什么“封号重开”这四个字,放在任何产品语境里都带着一股决绝的味道。一个账号从零开始积累使用记录、调教偏好、沉淀工作流,背后是大量的时间和精力成本。正常情况下,没有人愿意主动…

2026/10/21 0:00:11 阅读更多 →
ROS中YOLOv3工程落地:通信同步、坐标变换与性能调优

ROS中YOLOv3工程落地:通信同步、坐标变换与性能调优

1. 为什么在ROS里硬刚YOLOv3不是“炫技”,而是工程落地的必经之路我第一次在某高校机器人实验室看到那台搭载Jetson TX2的移动底盘原地打转、反复识别错垃圾桶时,就意识到:单纯跑通darknet_ros demo和真正让YOLOv3在ROS里“干活”&#xff0c…

2026/10/21 0:00:11 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/20 20:43:59 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/21 4:27:17 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →