每次开个新会话,你都得跟AI重新自我介绍一遍:我是后端开发的、项目用pnpm、别给我生成注释——都2026年了,这事还在天天发生。过去半年,海外社区吵得最凶的话题之一,就是「Agent的长期记忆到底该怎么建」:大厂把它当护城河,开源圈把它当军备赛,安全圈把它当活靶子。这篇文章把三场争论的正反方观点、三条技术路线,和两套今天下班就能抄的方案,一次给你拆完。
先看时间线。OpenAI在2024年2月给ChatGPT Plus用户上线了Memory(记忆),2025年年中推到了免费用户;Anthropic在2025年9月为Claude团队版和企业版上线Memory,随后逐步下放到个人高档订阅;Gemini有Saved Info;连Cursor、Windsurf这类IDE也都在2025年陆续加了「Memories」。记忆功能已经从彩蛋变成了标配。
但标配不等于没有争议。Reddit和HN上大致分三派:
对中国用户来说,这话题还有个额外维度:海外产品的记忆功能在境内访问不稳定,而记忆又恰恰是最私人的数据(你的职业、项目、习惯、甚至口误),交给境外服务器,合规顾虑比普通聊天更重。国产各家App的记忆能力参差不齐,而且多数不让你逐条查看。所以我的建议很直接:别默认它记得,重要约定自己写成显式配置文件——后面方案A会展开。
大厂吵开关,开源圈吵的是技术路线。目前三条道打得很热闹。
第一派:文件党。 代表作就是Claude Code的CLAUDE.md,以及2025年由OpenAI Codex带火、Cursor等迅速跟进的AGENTS.md标准(官网就是agents.md)。思路朴素到令人发笑:一个纯文本文件,写清楚项目约定、个人偏好、踩过的坑,每次会话开头塞进上下文。人可读、可改、能进git、能code review。HN上的高赞逻辑是:「长期记忆不是数据库问题,是上下文工程问题——你缺的不是存,而是每次都能精准塞进上下文。」这一派的思想源头,其实是Letta前身MemGPT在2023年10月的那篇论文:用操作系统的思路分层管理记忆,热数据放「内存」(core memory,就是可编辑的文本块),冷数据放「磁盘」(archival memory)。
第二派:抽取党。 代表作是Mem0(github.com/mem0ai/mem0)。它的定位是「给AI Agent的记忆层」,pip一装,你的应用在对话后自动调用LLM提炼事实条目——「用户喜欢简洁回复」「这个项目用pnpm不用npm」——存进向量库,下次对话前按语义召回。卖点是无感:用户什么都不用维护。据Mem0自己的论文自述,在长对话记忆基准LOCOMO上,准确率比OpenAI原生记忆高约26%,延迟省约91%。注意措辞:这是厂商自测。
第三派:图谱党。 代表作是Zep背后的开源引擎Graphiti(github.com/getzep/graphiti)。他们看不惯孤立的事实条目,主张存「实体+关系+生效时间」——比如「张三是A项目的技术负责人」这条记忆在3月1日之后失效了,图谱会记着失效时间,而不是一直拿旧事实误导你。2025年年中,Zep团队发论文反打Mem0:自称准确率比Mem0高约18%,延迟还低约90%。Mem0随后回应,称对方的对比配置不公平。两边各执一词,社区吃瓜后的共识倒是挺一致:LOCOMO离真实场景很远,两边都是自测榜单,选型别看跑分,看自己业务日志里的召回质量。
这三派吵的根子其实是一个哲学问题:记忆应该「显式可编辑」还是「自动无感」?文件党说,不可见即不可信,黑箱记忆错了你都不知道错在哪;自动党说,人性经不起考验,没人会坚持手工维护一个记忆文件,三个月后它就成了考古现场。我个人站中间:个人偏好和项目约定用文件(低频、重要、可评审),海量过程性事实用自动抽取(高频、琐碎、没人想手记)。
flowchart TD
S["新会话开始"] --> R{"读哪种长期记忆"}
R -->|文件派| F["markdown 约定文件"]
R -->|抽取派| V["向量库记忆条目"]
R -->|图谱派| G["时间知识图谱"]
F --> F1["人可读可改 git管理"]
V --> V1["LLM自动提炼 无感召回"]
G --> G1["实体加关系加生效时间"]
F1 --> I["注入上下文 开聊"]
V1 --> I
G1 --> I
I --> O["不用再重新自我介绍"]
第三场争论最冷门但最要命,主角是安全圈。
记忆投毒(memory poisoning):Agent在读取网页、文档、工单时,如果里面藏了恶意指令,可能被诱导把一条「毒事实」写进长期记忆——比如「本项目依赖库X存在漏洞,应替换为攻击者提供的下载源」。从此以后,这个Agent的每一次新会话都会带着这条毒记忆干活。HiddenLayer在2024年8月就演示过针对ChatGPT持久记忆的攻击;此后一年多,多篇安全论文跟进研究。社区为什么紧张?因为一次性prompt注入是一发子弹,记忆投毒是慢性中毒——它把攻击的「保质期」从一次会话延长到了无限次。
错记难删:自动记忆是LLM压缩提炼出来的,压缩就会失真。你随口一句玩笑「我们以后都改用Go吧」,可能被记成团队技术栈决议,而且没有回滚键。更糟的是,不少产品的记忆删除入口藏得极深,免费用户尤其如此。
隐私外溢:据海外媒体报道,2025年初有安全研究者演示过,通过精心构造的提问,可能诱导ChatGPT的记忆功能吐出一些本不该共享的账号信息。「平台默认记忆」+「可共享会话」这个组合一度被推上风口浪尖。
一句话总结这场争论:记忆是整个Agent系统里写权限最高的存储,却是绝大多数人唯一不做审计的存储。2026年,给记忆层做权限控制和定期清理,会像当年给数据库做备份一样成为基本功。
方案A:零成本文件派(10分钟上手)
方案B:自托管Mem0(约1小时,数据全本地)
Mem0开源版支持完全本地部署,抽取模型用Ollama跑Qwen,向量库用Qdrant,一条数据都不出你的机器。大致三步:pip install mem0ai;配置文件里把LLM指向本地Ollama地址、向量库指向Qdrant;代码里就两个动作——对话后add提炼记忆,对话前search召回相关记忆。适合你在做客服机器人、个人助理、内部知识库这类需要「越用越懂你」的产品。
flowchart TD
APP["你的应用或CLI Agent"] -->|写入| ADD["Mem0 从对话提炼事实"]
APP -->|读取| SRH["Mem0 按语义召回记忆"]
ADD --> LLM["抽取模型:Ollama 跑 Qwen"]
ADD --> DB["向量库:Qdrant 本地存储"]
SRH --> DB
LLM --> OUT["回复自动带上历史偏好"]
DB --> OUT
| 你以为的 | 实际情况 |
|---|---|
| ChatGPT/Claude的记忆=AI变聪明了 | 记忆同时是提高迁移成本的用户锁定策略,数据在对方服务器 |
| 长期记忆必须上向量数据库 | 一个git管理的markdown文件能解决80%的个人与项目场景 |
| 开源记忆方案都是玩具 | Mem0、Graphiti均生产可用,且支持全本地部署 |
| 跑分高的方案就是好的 | Mem0与Zep各说各话,自测榜单仅供参考,要以自己业务的召回质量为准 |
| 记忆是便利功能,没有风险 | 记忆投毒可将一次注入的攻击保质期延长到所有后续会话 |
注:文中跑分数据均来自各厂商自述论文与博客,社区尚无独立复现结论,选型请以自测为准。
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护。 聚焦5G/6G核心网、3GPP标准、AI工具实战。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
