全球AI热点
Memory 记忆设计讨论:Agent Memory 到底应该是什么?
Memory 记忆设计讨论:Agent Memory 到底应该是什么? – 杜文龙 – 博客园
第一篇不急着讨论某个框架,也不急着选择数据库。先把一个更基础的问题说清楚: Agent Memory 到底应该是什么?
Agent Memory 的数据模型:Event、Evidence、Candidate 与 Memory Fact
我以前也容易把 Agent Memory 理解成两件事:保存聊天记录,或者接入一个向量数据库。
Agent 在下一次工作时,能不能找回正确的信息,知道这些信息是否仍然有效,并且能够继续完成任务。
这句话看起来很简单,但 Agent 至少需要知道:上次计划去哪,出行日期有没有变化,预算是多少,同行人是谁,已经看过哪些方案,哪些偏好是长期的,哪些只是这一次的临时要求,以及上次任务究竟做到哪一步。
Agent Memory 是一套把历史事件、事实、偏好、任务状态和证据来源组织成可信上下文的能力,让 Agent 在正确范围内记住正确的信息,并在需要时找回来。
聊天记录当然有价值,它是最重要的原始材料之一。但原始材料和可继续使用的记忆不是一回事。
如果系统把所有句子放在一个“聊天记录”里,下一次只能重新让模型阅读和猜测。如果系统把它们整理成带有范围、时间和来源的结构化信息,Agent 才能更可靠地继续工作。
因此,Memory 不是把聊天记录复制到另一个表里,而是对历史信息进行整理、筛选、标注和治理。
没有来源、范围和版本的摘要,可能比原始对话更危险,因为它看起来更像一个确定事实。
一个可信的 Memory 不只保存“内容”,还要保存内容的上下文:谁说的、什么时候说的、适用于什么事情、是否已经被更新、是否需要用户确认。
这些信息描述的是任务当前做到哪一步。它们应该由任务运行状态来管理,而不是藏在一条语义记忆里。
Memory 可以告诉 Agent 用户通常偏好可取消的酒店;任务状态则要明确告诉 Agent 当前这个任务是否已经选定酒店、是否等待用户确认。
这两个概念混在一起,就容易出现两类错误:把一次任务的临时状态误认为长期偏好,或者把长期偏好误当成当前任务已经完成的步骤。
Memory 提供历史依据和连续性,Task Runtime 负责当前任务怎么继续,权限和回执负责动作是否有资格执行、是否真的成功。
系统先接收发生过的事情,比如用户说了一句话、修改了预算、查看了某个方案,或者外部系统返回了结果。
这一步的重点不是“尽量多收集”,而是明确数据来源和用户授权。系统不能默认读取所有设备、文件和应用。
比如从多次选择中发现“用户通常优先直飞”,或者从当前对话中发现“这次不要安排晚于晚上九点的航班”。
这里的结果只能叫 Candidate,也就是候选记忆。模型认为某件事可能成立,不代表它已经是系统可以长期相信的事实。
系统需要判断候选的来源、作用范围、有效时间、敏感程度,以及它是否和已有内容冲突。
如果用户以前说过“预算不超过 8000 元”,现在又说“这次预算可以到 10000 元”,系统不能简单地让两条记忆同时生效。
原始事件、证据、长期事实、偏好和任务状态应该分开保存。它们的生命周期和读取方式不同。
当用户再次提出请求时,系统先确认用户、任务和范围,再读取当前有效的任务状态和事实,最后用关键词、向量和时间等方式补充相关内容。
记忆不是写入之后永远不变。用户可以修改、暂停或删除它,新的证据也可能替代旧版本。
Evidence 记录这条信息来自哪里,可以是某次对话、某个文档、一个表单或外部系统的返回结果。
Candidate 是模型或规则提取出的可能记忆。它还没有通过治理,不能直接当成正式事实。
Memory Fact 是经过判断后,系统允许后续使用的事实或偏好。它需要带来源、作用域、版本和有效时间。
最容易犯的错误,就是把 Candidate 直接写成 Memory Fact。模型说“用户可能喜欢早班机”,不等于系统就应该永久相信这件事。
这条链路说明,Memory 并不是一个孤立组件。它需要和任务运行、权限控制、动作执行以及结果回执配合起来。
先让系统能够跨会话找回事实、证据和任务状态,重点验证来源、作用域、跨任务隔离和用户纠错。
最后让任务能够跨时间、跨设备和跨应用继续,但关键动作仍然需要当前授权,并以外部系统的真实回执作为完成依据。
这三步不适合颠倒。没有稳定的来源和任务状态,个性化只会放大错误;没有准确的事实和版本,跨设备执行就不可靠。
在正确范围内记住正确的信息,在需要时把它找回来,并且允许用户理解、纠正和控制它。
后面的三篇文章会继续把这个判断拆开:为什么向量数据库不等于 Memory,这些数据对象如何设计,以及权限、删除、版本和回执应该放在哪些控制点上。
posted @ 2026-09-07 20:05 杜文龙 阅读( 3830 ) 评论( 9 ) 收藏 举报
浙公网安备 33010602011771号 浙ICP备2021040463号-3
出处:https://www.cnblogs.com/duwenlong/p/22879534(Hacker News 热度榜第 6 名 · 热度 94 · 讨论 0)
西秦记