所有文章
阅读时长 12 分钟

上下文窗口是内存,不是存储:2026 年 AI agent 记忆系统生产指南

大多数 agent 失败可追溯到一个错误:把模型的上下文窗口当记忆系统。上下文窗口是内存——稀缺、昂贵、易失——不是数据库。本文是经过来源核查的 2026 年生产 agent 记忆指南:四种记忆类型(工作/情景/语义/程序)、防止大多数失败的『内存 vs 存储』原则、工具格局(Mem0、Letta、Zep、Cognee),以及为什么记忆工程——而非提示工程——是把能扩展的 agent 和膨胀的 agent 区分开的纪律。

AI agent 记忆系统 2026 封面

本文是生产 AI agent 架构集群的第二篇,承接 没有护栏的 agent 循环会失控。那一篇把记忆命名为一个生产层,并尖锐地说『不要把 prompt 当记忆系统』。本文是完整处理:agent 记忆到底是什么、为什么上下文窗口不是存储、以及如何设计一个让你的 agent 在不膨胀、不自相矛盾、不把你的生产定价出局的情况下扩展的记忆架构。

我通读了 agent 记忆文献后的结论很直接:上下文窗口是你 agent 系统里最贵、最受约束、最易失的资源,而大多数团队把它当数据库用。agent 走的每一步、每个工具结果、每次观察都进上下文窗口,它一直长,直到碰到 token 上限——此时 agent 要么丢失早期上下文,要么付递增成本,要么两者都是。其 agent 能扩展到长运行、多会话、个性化工作流的团队,不是上下文窗口最大的那些。而是把上下文窗口当内存、在它之外建了合适存储层的那些。

内存 vs 存储原则

2026 agent 记忆里最重要的一个重构,由 Mem0 的记忆状态分析清晰地阐述:上下文窗口是内存,不是存储。 内存是稀缺、昂贵、易失的——它是当前步骤的活跃工作区,不是持久化数据的地方。存储是持久、便宜、可查询的——这是你存放 agent 稍后需要但现在不需要的东西的地方。

错误:把所有东西倒进上下文窗口,希望模型自己整理。这在五步 demo 上能用,在一百步生产 agent 上灾难性失败。上下文增长,每步成本上升,模型的注意力在无关历史上稀释,最终窗口溢出,你丢失了真正重要的信息。把内存当存储用,就是你得到一个昨天能用、今天在同一任务上崩的 agent 的方式——因为上下文太大了。

生产模式:只把当前步需要的东西留在上下文窗口(内存),把其余一切推到外部记忆层(存储)。按需只检索与当前步相关的记忆,就像你的 RAG 系统只检索相关 chunk,而不是把整个语料倒进 prompt。(这是我们 RAG 集群的 检索纪律 应用到记忆而非文档。)

四种记忆类型

2025–2026 的研究——尤其是 arXiv 综述《Memory in the Age of AI Agents》——收敛到一个超越简单短期/长期二分的分类法。生产上重要的有四种:

  1. 工作记忆(短期)。 当前的上下文窗口:活跃任务、当前步骤、最近观察。这是内存。它应该只包含 agent 现在需要的东西,而不是它的整个历史。

  2. 情景记忆。 过去事件、行动和结果的日志——『当时发生了什么』。这是让 agent 随时间有用的东西:它能回忆起上次试了方法 A、因原因 B 失败、方法 C 有效。以结构化、可查询的事件日志实现,存在外部存储。

  3. 语义记忆。 事实和一般知识——『普遍为真的东西』。包括用户偏好、系统事实、学到的泛化。区别于情景,因为它关于稳定真相,不关于具体事件。

  4. 程序记忆。 学到的技能和操作知识——『怎么做事情』。这是 agent 等效的肌肉记忆:它学会执行的工作流、有效的工具使用模式、以及该避免的方式。

纪律:知道你在每一步写入和读取的是哪种记忆。一个常见错误是混淆情景和语义记忆——把每个事件都当作稳定事实记录,产出一个充满矛盾和陈旧上下文的记忆存储。

工具格局(带诚实提醒)

2026 的 agent 记忆工具已成熟,但领域仍吵。值得了解的框架,来自 Cognee 和 Vectorize 的对比:

工具模型适合场景
Mem0外部抽取式记忆层把记忆与上下文窗口解耦;把上下文当内存;抽取式——按需拉取相关记忆
Letta(原 MemGPT)自管理记忆运行时agent 通过工具自管理记忆,在上下文中分页记忆进出(OS/虚拟内存类比)
Zep图记忆用知识图谱做关系记忆;对复杂实体关系强
Cognee图 + 向量混合结合图和向量方法;适用于需要关系和相似性检索的用例

诚实提醒(跨集群重复):大多数『2026 最佳 agent 记忆工具』对比都是厂商关联的。架构模型(抽取式 vs 自管理 vs 图)可在各工具文档上验证;排名在你用自己的 agent 工作负载基准测试前应当当营销看。

来自 Letta 基准工作的更深层洞见:文件系统可以出人意料地与复杂记忆框架竞争。一个能读写文件的 agent——在它控制的目录里管理自己的笔记、摘要和状态——可以在没有专门记忆层的情况下实现强记忆性能。工具不如『把记忆放在上下文窗口之外』的纪律重要。

营销稿不会写的锋利之处

几个值得知道的风险:

  • 记忆膨胀。 没有驱逐,你的记忆存储会一直长,直到检索变慢、相关记忆被噪音淹没。每个记忆系统都需要遗忘机制——衰减、归档或删除不再有用的记忆的方式。一个永远不遗忘的记忆存储,是一个最终什么都不记得的记忆存储。
  • 记忆矛盾。 随 agent 随时间学习,新记忆可能与旧的产生矛盾。没有冲突解决——更新或使陈旧记忆失效的方式——你的 agent 会检索到矛盾上下文并行为不一致。
  • 检索质量就是记忆质量。 agent 的记忆只和它的检索一样好。如果检索器返回无关记忆,agent 不如有记忆更好。这是我们 RAG 集群的 检索质量问题 应用到记忆检索。
  • 记忆是注入向量。 如果攻击者能写你的 agent 记忆存储(例如通过检索文档中的间接注入),他们可以持久化恶意指令,agent 稍后会检索并执行。记忆需要与任何不可信输入一样的 安全边界
  • 记忆增加成本。 外部记忆意味着检索调用、存储成本、以及可能用于记忆抽取和合并的第二个模型。这是一个需要追踪的 按任务成本,不能想当然。

2026 年到底怎么建 agent 记忆

实操路径:

  1. 把上下文窗口当内存。 只把当前步骤的活跃上下文留在 prompt。把其余一切推到外部存储。
  2. 从简单的外部存储开始。 agent 可读写的数据库或文件系统,由你的应用代码管理,是强起点。第一天不需要专门记忆框架。
  3. 分开情景和语义记忆。 把事件记到情景存储;把稳定事实抽取到语义存储。不要混淆。
  4. 加选择性检索。 当 agent 需要记忆时,只检索与当前步相关的——按相似度、按新近度、按实体匹配。不要把整个记忆存储倒进上下文。
  5. 建入遗忘。 衰减旧记忆、归档陈旧的、驱逐矛盾的。一个不能遗忘的记忆系统是一个记不住什么重要的记忆系统。
  6. 评测记忆质量。 agent 检索到对的记忆了吗?它与过去行为一致吗?这是一个 轨迹级评测 问题,比输出评测难,因为记忆状态空间巨大。
  7. 追踪记忆成本。 检索、存储、抽取和合并都花钱。像追踪模型成本一样追踪按任务记忆成本。
  8. 当简单存储跟不上时考虑记忆框架。 Mem0、Letta、Zep、Cognee 在 agent 的记忆需求超出手工存储能管理的——复杂检索、自管理上下文、或关系记忆——时才回本。从简单开始;在有证据需要时采纳框架。

我的看法

2026 的故事是:记忆工程——而非提示工程——是把能扩展的 agent 和膨胀的 agent 区分开的纪律。提示工程决定模型用它有的上下文做什么。记忆工程决定模型首先有什么上下文,而对长运行 agent,那个决策主导一切。其 agent 在数百步和多个会话上保持快、一致、可负担的团队,是那些把上下文窗口当内存、在它之外建了合适存储层、并用与他们应用于任何生产数据系统一样纪律工程化记忆的那些。

如果你从本文只记一件事:上下文窗口是内存,不是存储。停止把它当数据库用,你的 agent 的大多数可靠性问题会变容易。

本文是生产 AI agent 架构集群的第二篇。从 没有护栏的 agent 循环会失控 起步看完整架构,再本篇看记忆层,然后 如果你无法追踪你的 agent,你就无法信任你的 agent 看可观测性层。关于记忆检索继承的检索纪律,见 生产 RAG 集群。关于如何评测你的 agent 记忆是否真的在工作,见 LLM 评测集群。想找厂商的常驻参考,见我们的 AI 价格数据页

来源

相关阅读