资讯动态

Cloudflare Agent Memory:让 AI Agent 真正拥有“长期记忆“

发布时间:2026/8/4 21:59:00 来源:尧图企业网站定制
一个每次对话结束就失忆的 Agent能算真正智能吗Cloudflare 给出了自己的答案。一、Agent 的记忆困境随着开发者在 Cloudflare 上构建越来越复杂的 Agent他们面临的最大挑战之一是在正确的时机把正确的信息塞进上下文窗口。模型产出结果的质量与它所拥有上下文的质量直接挂钩。即便上下文窗口已经突破百万 token“上下文腐化”Context Rot的问题依然没有解决。两个糟糕的选项之间存在天然的张力把所有内容都塞进上下文质量随之下降激进地剪裁上下文又可能丢掉 Agent 之后真正需要的信息。这就是 Cloudflare 推出 Agent Memory 的出发点。二、现有方案为什么不够用现有产品在架构上差异显著有的是托管服务在后台处理提取和检索有的是自托管框架需要你自己运行记忆管道。有的暴露有约束的专用 API让记忆逻辑远离 Agent 的主上下文有的则给模型直接访问数据库或文件系统的权限让它自己设计查询结果是把大量 token 浪费在存储和检索策略上而不是真正的任务。Cloudflare 构建 Agent Memory是因为平台上的实际工作负载暴露出现有方案无法完全覆盖的空缺。那些针对真实代码库和生产系统运行数周乃至数月的 Agent需要的记忆系统是随着体量增长依然有用的——而不只是在干净的 benchmark 数据集上表现良好。三、Agent Memory 是什么怎么用Agent Memory 是一个托管服务核心概念是记忆配置文件Profile通过名称寻址。一个 Profile 提供四个核心操作ingest批量摄入对话通常在上下文压缩时调用remember模型在运行中主动存储某条重要信息recall运行完整检索管道返回合成的自然语言答案forget标记某条记忆为过时或错误代码层面非常简洁constprofileawaitenv.MEMORY.getProfile(my-project);// 摄入对话awaitprofile.ingest([{role:user,content:用 React 和 TypeScript 初始化项目。},{role:assistant,content:完成已构建 React TS 项目。},{role:user,content:用 pnpm不要 npm。默认开启暗色模式。},],{sessionId:session-001});// 主动记录一条信息awaitprofile.remember({content:API 速率限制在 4 月 10 日事故后提升至 10,000 req/s。,sessionId:session-001,});// 检索constresultsawaitprofile.recall(用户偏好哪个包管理器);console.log(results.result);// 用户偏好 pnpm 而非 npm。Agent Memory 通过 Cloudflare Worker 的 Binding 访问也提供 REST API 供运行在 Workers 之外的 Agent 使用。如果你在用 Cloudflare Agents SDKAgent Memory 可以作为 Sessions API 中记忆部分的参考实现无缝接入。四、它能用在哪些场景无论你是在构建 Claude Code、OpenCode 这样有人类参与的编程 Agent还是在运行完全自主的后台 AgentAgent Memory 都可以作为持久记忆层无需改动 Agent 的核心循环。记忆配置文件不必属于单个 Agent。工程师团队可以共享一个记忆配置文件这样一个人的编程 Agent 学到的知识——编码规范、架构决策、口口相传的部落知识——就能供团队所有人的 Agent 使用。代码审查机器人和编程 Agent 可以共享记忆让审查反馈影响未来的代码生成。Agent 积累的知识不再是转瞬即逝的而是团队持久的资产。五、技术架构两条管道摄入管道Ingestion Pipeline第一步是确定性 ID 生成。每条消息获得一个基于内容寻址的 ID——对 session ID、角色和内容做 SHA-256 哈希后截断到 128 位。同一段对话被重复摄入时每条消息都会解析到同样的 ID使重复摄入具有幂等性。接下来提取器并行运行两轮完整轮将消息按约 1 万字符分块并发处理同时进行相对日期转绝对日期的解析“昨天变成2026-04-14”细节轮专门针对具体数值——名称、价格、版本号、实体属性——这些内容在宽泛的提取中容易被遗漏。两路结果最终合并。验证器对每条提取的记忆运行 8 项检查覆盖实体同一性、对象同一性、位置上下文、时间准确性、组织上下文、完整性、关系上下文以及推断的事实是否真正被对话支持。每条记忆会被通过、修正或丢弃。验证通过后记忆被分类为四种类型事实Facts当下为真的稳定知识如项目使用 GraphQL事件Events在特定时间发生的事如一次部署或一个决策指令Instructions描述如何做某事如流程、工作手册任务Tasks当前正在进行的工作天然是短暂的事实和指令使用主题键进行键控。当一条新记忆与已有记忆的主题键相同时旧记忆被取代而非删除形成一条有前向指针的版本链。任务则完全不进入向量索引仅通过全文搜索可以发现这样可以保持向量索引的精简。向量化在后台异步完成。嵌入文本会把分类阶段生成的 3-5 个搜索查询拼接到记忆内容前以弥合记忆写入方式陈述式“用户偏好暗色模式”与搜索方式疑问式“用户想要什么主题”之间的语义差距。检索管道Retrieval Pipeline开发过程中Cloudflare 发现没有任何单一检索方法对所有查询都最有效因此并行运行多种方法后融合结果。五路检索并发执行基于 Porter 词干算法的全文搜索、精确事实键查找、原始消息搜索、直接向量搜索以及 HyDE 向量搜索将查询先转化为假设的答案形式再做向量匹配对于抽象或多跳查询尤其有效。五路结果使用 RRFReciprocal Rank Fusion融合按来源信号强度加权打分精确主题键命中权重最高全文搜索、HyDE 向量和直接向量次之原始消息命中权重最低作为安全网。分数相同时按时间新旧排序越新的结果排得越靠前。有一个细节值得关注时间计算通过正则表达式和算术运算确定性地处理而不交给 LLM 来做——因为模型在日期数学上并不可靠。六、底层基础设施Agent Memory 是一个 Cloudflare Worker协调多个子系统Durable Object 存储原始消息和分类好的记忆Vectorize 提供向量搜索Workers AI 运行 LLM 和嵌入模型。每个记忆配置文件对应自己的 Durable Object 实例和 Vectorize 索引租户之间数据完全隔离。模型选型上有一个有趣的发现更大、更强大的模型并不总是更好。提取、验证、分类和查询分析默认使用 Llama 4 Scout17B16 专家 MoE合成回答使用 Nemotron 3120B MoE激活参数 12B。Scout 高效完成结构化分类任务Nemotron 更大的推理能力提升了自然语言回答的质量。合成阶段是唯一一个参数越多越有帮助的地方其余阶段小模型在成本、质量和延迟之间取得了更好的平衡。七、Cloudflare 内部是怎么用的Cloudflare 内部将 Agent Memory 接入了编程 Agent 工作流。共享记忆配置文件带来了一个不那么明显但很实用的好处团队共用一个 Profile 后Agent 知道团队其他成员已经学到了什么——它可以不再重复问已经被回答过的问题不再重复犯已经被纠正过的错误。在代码审查场景最有价值的能力是学会闭嘴——审查机器人记住了某条评论在上次审查中并不适用或者某个写法被标记过但作者有充分理由保留了它于是不再重复提出。审查随时间变得更少噪音而不只是更聪明。八、数据主权承诺随着 Agent 越来越有能力、越来越深度嵌入业务流程它们积累的记忆本身就成了有价值的资产——不只是运行状态而是花费了真实成本建立起来的机构知识。Agent Memory 是托管服务但数据属于你。每条记忆都可以导出Cloudflare 承诺确保 Agent 在平台上积累的知识在你需要离开时可以带走。九、总结Agent Memory 试图解决的问题其实很基础Agent 的价值不应该随着一次对话的结束而归零。从摄入管道的并行提取与多级验证到五路检索融合的 RRF 排序再到四类记忆的分层管理这套架构的核心逻辑是——让 Agent 记得住什么重要、忘掉什么过时而不是让开发者自己去管理这套复杂的记忆逻辑。目前 Agent Memory 处于私有 Beta 阶段感兴趣可以前往 Cloudflare 官网申请加入候补名单。原文链接https://blog.cloudflare.com/introducing-agent-memory/

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价