Agent正在长出记忆:Cloudflare如何让AI忘掉该忘的、记住该记住的
Site Owner
Published on 2026-05-15
Cloudflare发布的Agent Memory解决了一个根本问题:上下文窗口不是记忆,只是一个漏水的桶。当Agent运行数月时,靠压缩上下文来管理记忆是在主动删除重要信息。Cloudflare的方案是把记忆抽出来,建一套独立的记忆管理系统——Ingest管道提取并验证记忆,Recall用五路检索返回合成答案,Remember和Forget让模型主动管理记忆本身。

Agent正在长出记忆:Cloudflare如何让AI忘掉该忘的、记住该记住的
Cloudflare上周发了三篇关于Agent的基础设施文章,件件都是硬货。
但最让我盯着看了十分钟的,是那个叫Agent Memory的东西。
因为它解决了一个所有AI开发者都踩过、但很少有人真正想明白的问题——
当你让一个Agent跑三个月,它凭什么还记得"这个用户喜欢pnpm而不是npm"?
上下文窗口不是记忆,它是一个漏水的桶
现在的Agent,本质上是一个"带着豪华笔记本的失忆症患者"。
上下文窗口再大,也是有限的。而且有个诡异的现象叫context rot——上下文越满,模型越容易忽略真正重要的东西。
你跟它说"用pnpm",说了一百遍,它第一百零一次还是给你跑npm。你以为它不听话,其实是它已经分不清第一百零一次说的和前面一百次有什么不一样。
大多数团队怎么解决?定期压缩上下文。把对话历史提炼、截断、塞进更短的摘要。
这听起来合理。
但问题是——压缩的那一刻,你可能正在扔掉真正重要的东西。
一个用户说"API限流上个月从1000提到了10000",这句话在压缩时很可能被当成"常规操作记录"删掉。然后你的Agent三个月后还在按1000的限流配置做事情。
压缩是记忆的敌人。
Cloudflare的解法:建一套记忆外置的基础设施
Cloudflare上周发布的Agent Memory,做法非常直接——
别把记忆塞在上下文里。给Agent单独建一个记忆管理系统。
核心逻辑分三层:
第一层:Ingest——压缩时不扔,把对话扔进记忆管道
当Agent的harness决定压缩上下文时,它把原始对话发给Agent Memory。
Memory系统做这几件事:
- Extractor:把对话切成块,提取"事实"(API限流从1000提到了10000)、"事件"(某天部署失败)、"指令"(用户说用pnpm)
- Verifier:逐条验证提取的记忆是不是真的,防止幻觉记忆污染
- Classifier:分类——Fact、Event、Instruction、Task
- Supersession链:如果同一个事实有新旧两个版本,旧的不会被删,而是打一个"已被取代"的标记,形成一条链
这意味着什么?
你的Agent不再靠"上下文里有没有这句话"来判断真假,而是有一个独立的、经过验证的记忆库。
第二层:Recall——用搜索代替记忆
Agent不需要把所有记忆都塞进prompt。
它只需要在需要的时候,问Agent Memory一个问题:
"这个用户偏用什么包管理器?"
Memory跑一个五路检索管道——全文搜索、精确key查找、原始消息搜索、直接向量搜索、HyDE搜索——然后把结果fuse在一起,生成一个合成答案。
整个过程,模型只拿到了最终答案,不是一堆原始对话记录。
小模型干提取的活,大模型干综合的活,各司其职。
Cloudflare的内部测试数据很有意思:Llama 4 Scout(17B)负责提取和分类,Nemotron 3(120B)负责合成。合成是唯一发现"更大模型持续有帮助"的环节。其他地方,小模型已经足够好了。
第三层:Remember和Forget——精确操控记忆
模型还拿到了两个工具:
remember:主动记住一件重要的事forget:主动删除一条不再正确的记忆
这让Agent对自己的记忆有了控制权。不是说上下文漏了就漏了,它可以主动选择哪些东西值得被记住。
实用场景:不止是"记住用户偏好"
Cloudflare自己的使用案例里,有三个场景值得单独说:
1. 团队级共享记忆
一个人跟Agent说"我们项目用GraphQL",另一个人三个月后问同一个Agent,得到的答案不用再重新教育一遍。
记忆变成了团队的资产,而不是个人的session资产。
2. 代码审查Agent的沉默
Cloudflare有一个代码审查Agent,接入Agent Memory之后,最有用的进化不是"更聪明"——而是更安静了。
它记得某条评论上次被作者反驳过、某个模式被标记过但作者选择保留。审查意见一年比一年少,因为重复的错误不会重复出现。
这比大多数团队的知识管理工具都管用。
3. 跨Agent记忆共享
代码review bot和coding agent之间可以共享记忆。
review发现的问题,直接变成未来代码生成的参考输入。
Agent之间不再是各扫门前雪,而是形成了某种意义上的组织记忆。
和上下文窗口比,到底省了多少?
Cloudflare给了一个具体数字:
接入四个内部MCP server、暴露52个工具时,常规模式下上下文消耗约9400 tokens。
开启Code Mode之后,这52个工具被压缩成两个portal工具,只消耗约600 tokens。
94%的context消耗下降,而且这个数字不随MCP server数量增加而增长。
Agent Memory的效果类似——上下文窗口的负担转移到了记忆检索管道,模型只需要拿到检索结果,不需要持有原始对话。
为什么这件事重要
我见过太多团队在Agent里塞prompt工程、RAG、few-shot示例,把上下文窗口当成万能筐,什么都往里装。
结果是——上下文越来越长,模型越来越慢,输出越来越不稳定,成本越来越高。
Cloudflare的这套方案,核心洞察其实很朴素:
模型应该专注于推理和生成,不应该同时充当自己的记忆管理员。
把记忆抽出来独立管理,是架构上的正交分解。
就像数据库不运行在应用内存里,Agent的记忆也不应该寄生在上下文窗口里。
Cloudflare Agent Memory 目前在私测阶段,官网说即将公开。如果你在Cloudflare上跑Agent,建议去排队。
这可能是今年最重要的Agent基础设施升级之一。