资讯详情

【多论文阅读笔记】下一阶段,Agent记忆关注什么能力?

📅 2026/10/26 18:03:56 | 华诺云谱 👁 阅读
【多论文阅读笔记】下一阶段,Agent记忆关注什么能力?
之前做了一个 position就是下一阶段Agent 记忆系统应该考虑的核心目标是保持 Agent 运行态的心流。而【心流】就是Agent运行中已有信息能够接近无损接入的状态——即像一个深入思考某事的人类一样大脑在运行过程中能够平滑、无损地调取已运算出的结果或已知知识以帮助当前思考的人的注意力专注于思考的目标上。要想达到这种状态就要满足当信息在运行态【应被取用】时能够接近无损且无缝地【放入】当前 context 里。基于这个立场我最近看了不少工作光 9 月份 Arxiv 上带 Agent Memory 的工作就有大几十篇但收获寥寥。与我的期望比较相似的 Benchmark 与测评工作最终只留下了这三个LoCoMo-Plus、TriggerBench 和 EvalMem。LoCoMo-Plus: Beyond-Factual Cognitive Memory Evaluation Framework for LLM Agents重点测的是什么——认知记忆LoCoMo是引用率很高的Benchmark了。作为LoCoMo的后代,LoCoMo-Plus把测试的重点做了调整 待记忆信息上一段对话里隐含的用户状态、目标、偏好、价值观、因果背景 待使用场景上在未来逻辑相关但文字表面无关的场景中。作者认为 前作LoCoMo测的是事实重现作者认为这是Level-1 事实记忆而当前LoCoMo-Plus测试的这些是Level-2 认知记忆。更进一步其实要说清楚的是虽然LoCoMo-Plus这个分级的逻辑我很认同但跟认知心理学中普遍被记忆系统借用的记忆概念并无关系。被借用比较多的认知心理学原理是Tulving的三分类- 情景记忆 带着时间和地点回忆个人经历——「记得上周三在哪儿吃的饭」。主角是你自己有具体时空坐标。- 语义记忆 抽掉了时空的一般知识——「知道北京是中国的首都」。答得出来但不「记得」是什么时候学的。- 程序记忆 通过练习长在身上的技能——骑自行车、弹琴。会做但往往说不出自己是怎么做的。数据长什么样先看LoCoMo-Plus再看前作LoCoMo。LoCoMo-Plus 的一例与前作一样测试场景还是 模型来扮演一段对话中的一个角色这里就是 B这个人被测试的记忆系统负责给这个扮演B的人提供记忆。1cue约束埋在中段某一场对话里——即后续要被用到的认知记忆ASince my cousin got diagnosed with Type 2 diabetes, I cut sugary drinks completely out of my diet.BThat family scare clearly changed your habits.说的是表亲确诊糖尿病他把含糖饮料彻底戒了。2trigger需要使用该认知记忆的来回答的一句话A约五个月后Its strange, I barely recognize the person who used to grab whatever sounded good without thinking about long-term consequences.说的是他回头看几乎认不出从前那个想吃什么就吃什么的人。3模型拿到的任务描述官方原文Your task: This is a memory-aware dialogue setting. You are continuing or reflecting on a prior conversation. Show that you are aware of the relevant memory or context from the evidence when you respond; your answer should naturally connect to or acknowledge that context.这是一个「记忆感知」的对话场景你在延续或回顾之前的一段对话回应时要表现出你知道 evidence 里那段相关的记忆或上下文并自然地接上或承认它。4判分官方原文Judge whether the Model Prediction considers or is linked to the Evidence. If there is a clear connection, the answer is correct (score 1); if not, it is wrong (no score).打分的是个模型手上只有 cue 和被测模型回的那句连 trigger 都不给它有联系记 1 分没有记 0 分。LoCoMo 的一例官方数据 conv-26single-hop1cue这里就是明示信息MelanieThanks, Caroline! The event was really thought-provoking. Im starting to realize that self-care is really important. Its a journey for me, but when I look after myself, Im able to better look after my family.2trigger也是明文问实体相关信息What did Melanie realize after the charity race?3模型拿到的任务描述官方原文Answer the following question based on the conversation above.4判分官方原文You are a Fact-Checking or Commonsense Judge. Your task is to compare the prediction with the reference answer using external knowledge where needed.Labels: “correct”: exact match or sound inference; “partial”: minor inaccuracies or incomplete reasoning; “wrong”: factually incorrect or contradicts commonsense.打分的是个模型手上有问题、参考答案、被测模型回的那句外加一段相关证据答得对上、或者能合理推出来记 correct沾到边但没答全记 partial答错或者跟常识顶上了记 wrong。从以上实例其实可以清楚的看到LoCoMo-Plus是如何检测“认知记忆”这一点的。数据集构建步骤构造走六步§4、Figure 3生成 cue 对话LLM 写两行短对话把状态 / 目标 / 偏好 / 约束 / 价值观自然地藏进去不点明。prompt 明文要求 A 的那行必须含一个「独特、便于回忆」的记忆锚点原文MEMORABLE and RECALLABLEdistinctive detailB 只需一句自然反应收尾。人工筛「值得记」只留持久或约束行为的、不能靠局部上下文推出来的、记住了对助手有帮助的。生成 trigger query要求正确答案依赖 cue、与 cue 表面相似度低、单看多解同时给一个时间间隔 t。prompt 明文要求每条 cue 配五个 trigger、各自代表不同的认知角度、要「制造冲突或对比」create some conflict or contrast、避免复用 cue 里的名词动词——并直接写明目标人能凭记忆想起按相似度检索的模型捞不到。语义过滤用 BM25 与 MPNet 相似度剔掉「cue 被重复 / 被改写 / 能从 query 单独恢复」的配对防靠表面重叠抄近路。人工再验确认做出有用的回答必须真的回忆并应用那条约束。插进 LoCoMo 轨迹按 t 把 cue 插在中段、trigger 放在后面中间隔若干轮无关内容和时间。为了避免trigger和cue之间的关系过于意识流或者不太实际作者对 trigger 和 cue 之间的关系做了一个约束——必须属于以下四类之一。causal早先的原因或条件影响后来的事件state身体或情绪状态影响之后的行为goal长期意图或计划影响当下的选择value信念或价值观塑造之后的反应。这层切分确实枚举到了一些个人助理Agent所面对的常见场景不过也有点小问题causal这一分类的歧义它在这里的指的是「先前发生的事对后来有影响」不是规律性、公理性的「因果」。定义原文的用词是 earlier 和 influence跟 GPT 里的 causal mask、分布式系统里的 causal order 是同一模式只借「因先于果」的时间方向不保证真的具备因果性。简评方向很好有个小缺陷。一般我们做记忆系统的测评会有两类测评一类是关于 【用没用上】的一类是关于【是不是瞎用】的。LoCoMo-Plus不考虑瞎用的情况也就是忽略了两种典型错误其一、幻觉即没有的事模型也胡诌一番其二、认知错配即当前应该使用 A记忆但记忆系统让模型认为应该使用B记忆。后者是在当前大部分Agent系统已经广泛的建立了记忆系统后更值得观察的一项。TriggerBench: Investigating Prospective Memory for LLMs重点测的是什么——前瞻记忆TriggerBench也借用了认知心理学中的一路关于记忆的定义Meacham Leiman1982定义了【前瞻记忆】这个特定类型 它有两个要件其一、记得要做什么 其二、记得在该做的那一刻自己发得动 时机这条才是前瞻独有的两个简单的例子作为一个【个人助理 Agent】每天中午都要记得提醒用户吃 ABC 三种药用户下车时要提醒他别忘了拿之前放进后备箱的行李。简单说就是Reminder 这类记忆需求。数据长什么样1cue-线索句用户第一次去上大提琴课打车过去琴太大塞不进后座他和司机把琴放进了后备箱。2中间隔开最后一句才是 trigger中间若干轮与琴无关的话比如司机跟他聊入门课上老师一般会讲什么、问他学琴多久了、吐槽今天路上堵车甚至聊到天气和晚饭吃什么——这些闲聊和「琴在后备箱」这件事毫无关系纯粹是为了把约束和触发句在时间和话题上都拉开距离。最后一句才是 triggerIve arrived now, and Im getting ready to step out of the taxi.——用户到目的地了正要下车。这句话本身完全不提琴、不提后备箱表面上看跟前面的约束没有任何关联但恰恰是「下车」这个动作让「琴还在后备箱里」这件事变得相关了如果模型还记得约束就应该在这一刻主动提醒用户拿琴如果它只靠当前这句话的字面意思作答就根本不会想到琴的事。这就是前瞻记忆和普通事实记忆最本质的区别——事实记忆是「有人问你答得出来」前瞻记忆是「没人问你自己得想起来该出手」。axi.3模型拿到的任务描述官方原文节选Table 12 的 BLENDED system promptYou are a helpful conversational assistant. Respond naturally to the user’s message.[…]Pay attention to things or rules theuser mentioned earlier that could become relevant now. For example, an object left somewhere they might forget, a time commitment that is approaching that the user might forget, a requirement or rule that is about to be violated, or an unfinished task that the user might forget resuming after sudden interruptions. If the current situation calls for it, mention it in your reply — a heads-up remind or intervention is better than letting the user forget. Do not repeat the same reminder if you have already brought it up.任务说明用户早前提过、现在可能变得相关的事要留意该出手就提醒一句提醒过就别重复。4判分模型该做的动作主动提醒他把琴从后备箱里拿出来——Gold Intent 原文Remind the user to take the cello out of the trunk when exiting the taxi.。模型回复里没有这个就算错。另外Benchmark设计了几个对比组。看下面构建数据的逻辑。怎么构建数据作者把前瞻记忆的待测类型分成了5个类 State-Tracking东西放在哪儿、什么状态被改了 Temporal Grounding定时提醒 Logical Adherence作者瞎整的大词就是前面用户要求在做完A 后 就要做 B后续在对话中显示A 确实做完了要求 Agent 想起来做 B Attention Recovery被打断后接着做 Safe Coding专业写代码场景里的安全漏洞。具体步骤是1手工产生meta题。作者手工写了 82 道题每道确定四个要件① 约束——琴被放进了后备箱② 到期的trigger——用户到地方要下车了③ 该做的动作——提醒他拿琴④ 判分要认的答案——琴、后备箱这时还没有对话只有骨架。再让 LLM 照这 82 道的样子扩量人工再改和删搞到 488 道。2把骨架展些成一段长对话。要做到的是※ 约束在前面的对话里被自然说出来※ 中间插十几轮跟它无关的闲聊司机聊老师上课会讲什么※ 触发句放在最后。铺完平均 16.4 轮、约 2,500 个 token。3从同一段对话改出两种对照测试版本。※ 一种是增加其他方向的混淆触发句后面再塞一个问别的事情的问题比如要下车了应该触发题型拿行李了问Agent要不要顺路给老师买束花触发句本身一字不改测的是被别的事岔开时还记不记得。※ 另一种是用户自己想起来了中间加一句让风险提前消失用户自己说“司机刚提醒我拿琴了”这时模型应该该不出手一提醒了反而算错。4三个质检①能不能答把无关闲聊全删掉只留约束和触发两句让 GPT-4.1 去答这都答不出来说明题目写坏了有歧义人工再改修不好整条删。——不过我好奇干嘛不填充前就直接自动查②是不是有记忆才能答的问题只把触发那一句给LLM 看 LLM 能不能直接答对如果能就删掉。③ Trigger句和线索句尽量不要出现相同的词汇。5【对话中塞入更长的上下文】【明文询问线索句】 这两个操作形成新样本作为对比组1-4步生成的题目都在 2,500 个 token 左右为了排除Agent没有能力找到线索和Agent想不起来用线索作者做了这样一种对比样本针对同一道题在对话上下文中多塞4Wtoken 并在Trigger句的位置直接换成问线索句的答案比如 那个琴上车放后备箱的例子里问 “我把琴放哪儿了”6判分。① Agent 回答 Trigger 句里是否包含要求的回忆内容比如琴和后备箱② 增加混淆组也是跟① 一样的判别标准③ 用户自己想起来组 回答到了①的答案反而算错因为不需要提醒了。④ 长对话对比组 跟①一样简评其一、作者设计的对比组还挺多的尽力 cover 了各种可能的逻辑漏洞这很好其二、作者在这里设计的【前瞻记忆】测试场景比较接近 Know-How 需要的模式——目标跟踪状态保持。比如“被打断后接着做”这类场景一个特化的设计是很容易跟住这类情况的——这也是当前很多记忆系统停留在的境地。但如果是广泛know-how 上的“目标跟踪状态保持”的结构呢很容易做得结构很重耗时很久。不做状态保持的设计在事后启动检索最大的问题就是不知道应该启动检索。不知道应该搜索什么。EvalMem: An Operation-Level Diagnostic Framework for Long-Term Memory Systems一句话总结作者把记忆系统的失败分成三种 编码把信息写进记忆库 检索按问题把相关记录取回来 生成用取回的证据作答经过在多个 Benchmark 和记忆系统上的测试作者认为检索是当前被测的记忆系统主要的问题。 这里有几个小问题 编码环节本身就影响检索查得率比如我自己的记忆系统会加很多 tag为的就是同时保证保真存储和便于查得但作者做了一个基于【事实记忆】层面的取舍——主要检查 写没写进去写进去的是否清楚正确。 检索这一步看似是一个环节但工业设计上往往是 2-3 步。我自己的记忆系统是把检索拆成3 步需求预测 ➡️ 记忆检索 ➡️ 记忆推荐过滤和选优作者这里关注的是结果层即——我不管你用什么方法反正记忆数据在库里你找到没有找到了是不是排在前面排在 top-6 以外一样算失败。好处是问题很纯净坏处就是没有对常见的记忆分析检索比如我的需求预测能力进行评价也忽略了不少系统其实都考虑了检索后过滤这点有点过度放大系统缺陷。当然这是作者做的取舍增加环节也要考虑被测的大部分系统能不能支持结果解读是否公平等。我认为作者的取舍是有道理的这里是要提醒读结果的时候要注意这点。作者关注的问题类型编码的问题该记的事实没进库或者进了库也不能用——没写进去、写成一个模糊的值比如只剩一个代词、值写错还有把不该有的假事实也写进去了。检索的问题事实明明在库里系统自己取不回来——压根没取到、取到了但排得太靠后、取到了但被无关内容稀释以及在没证据的题上取回一条看着相关、其实误导的记录。生成的问题完整证据已经摆在眼前模型还是答错——该拒答却硬答、无视证据靠自己的知识答、读了证据但推理错。测评结果测试 setup作者在 3 个 benchmark 上跑了 7 个记忆系统benchmarkLoCoMo1986 题、LongMemEval-S500 题、作者自建的动态版 DynaMem-Bench962 题后面说这个Bench是如何设计的7 个记忆系统TiMem、O-Mem、EverMemOS、MemOS、MemBox、MemoryOS、GAM记忆系统配套的LLMgpt-4o-minigpt-4.1 和 Qwen3-30B结果表作者测的 locomo 的结果是这样的。 很难相信现在还有人能做出这种丑图来就是我因为作者把失败类型写成了缩写直接写图上比较好理解我就这么丑这写上了……上表中每一栏的最右一列就是这个环节的总失败占比。另外这个失败占比是事后才做的一道检查结果是有偏的。即即便过程中有瑕疵但 locomo 的检查过了那也是不算占比的。简评问题的分类可以面向记忆系统设计的整体理念而不是现有的部分系统形态。诚然要完成 eval 工作确实要在各个系统之间闪转腾挪但终究做这个工作的一部分贡献就是研究的 position到底什么是值得继续做的。这点对我来说是个遗憾——作者做的工作不少差这么一点点启发性。数据占比是从占失败比例出发的这点不利于作为后续记忆系统测评工作的指导我是认为做 Eval 工作的论文应该有这个初衷小瑕疵被测的七个系统里没有最有名的那几个。Mem0、MemGPTLetta、Zep、A-Mem 都不在名单里
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑