#0128 AI Agent 的记忆该不该有保质期?——我给记忆加了置信度

type
Post
status
Published
date
Feb 21, 2026
slug
30ea745569bb81338344e5ec9f1941c9
summary
你的 AI Agent 记住了你说的每一句话。 但问题来了:三个月前你随口说的一句"我喜欢吃辣",和昨天你认真讨论的一个投资决策,在 Agent 眼里权重一样吗? 如果一样,那就有问题了。
tags
AI Agent
记忆系统
置信度
category
AI/技术
icon
password

AI Agent 的记忆该不该有"保质期"?——我给记忆加了置信度

你的 AI Agent 记住了你说的每一句话。
但问题来了:三个月前你随口说的一句"我喜欢吃辣",和昨天你认真讨论的一个投资决策,在 Agent 眼里权重一样吗?
如果一样,那就有问题了。

记忆不是仓库,是活的

大部分 AI Agent 的记忆方案是这样的:用户说了什么 → 存进向量数据库 → 搜索时按语义相似度返回。
听起来合理。但用了几周你就会发现:搜"我的投资策略",返回的前三条可能是:你三个月前的一条随口吐槽、一条过时的市场判断、一条已经被推翻的结论。
问题不在搜索,在于所有记忆都被当成同等可信
这和人脑完全不同。你的大脑会自动做一件事:遗忘。不是丢失,是降权。一个记忆如果长时间没被调用、没被验证、没被强化,它的"可信度"会自然衰减。
我决定给 AI Agent 的记忆系统也加上这个机制。

置信度是什么?

每条记忆除了内容本身,额外带一个 0~1 的浮点数:confidence
  • 1.0 = 绝对可信(CEO 亲口确认的核心偏好)
  • 0.85 = 高可信(手动录入或系统迁移的事实)
  • 0.5 = 一般(自动从日志提取的条目)
  • < 0.1 = 几乎不可信 → 自动清除
这个数字不是静态的。它会变。

三个机制让置信度动起来

机制一:来源定价

不同来源写入的记忆,起始置信度不同:
  • 用户明确确认的记忆 → 0.95(最高起点)
  • 手动迁移/录入 → 0.85
  • 自动从日志提取 → 0.50(毕竟是机器判断,可能有误)
为什么这么设计?因为你亲口说"我只买比特币",和 Agent 从你的一段对话里推测"用户可能偏好比特币",可信度天然不同。

机制二:时间衰减

60 天内没被任何搜索命中过的记忆,置信度开始衰减。
每次衰减乘以 0.95。听起来很温和,但连续几轮之后:
  • 第 1 轮:0.85 → 0.81
  • 第 5 轮:0.85 → 0.66
  • 第 10 轮:0.85 → 0.54
  • 第 20 轮:0.85 → 0.36
大约半年不用的记忆,置信度会从"高可信"降到"低可信"。如果继续不用,最终跌破 0.1 被自动清除。
但有个例外:P0 级记忆永不衰减。 你的核心身份、核心偏好、安全红线——这些是"刻在骨子里"的,不管多久不翻出来用,它们都不能被遗忘。

机制三:访问增强

每次 memory_search 命中一条记忆,那条记忆的 last_accessed 时间戳更新,access_count +1。
这意味着:经常被搜到的记忆,衰减计时器不断重置,永远不会过期。
这就像人脑的"反复回忆"效应——你经常想起的事情,记得越来越牢。

跑了 22 天,数据说了什么

系统上线后我做了一次全面审计,结果挺有意思的:
83 条记忆的置信度分布:
  • 高置信度(≥0.8):67 条 —— 全是迁移过来的老记忆
  • 中置信度(0.4-0.79):16 条 —— 全是自动提取的新记忆
  • 低置信度(<0.4):0 条 —— 还没有记忆衰减到这个程度
最扎心的数据:83 条里只有 5 条被搜索访问过。
78 条记忆从写入那天起就没被碰过。
这说明什么?说明我的 Agent 目前绝大部分时候还在靠"工作记忆"(MEMORY.md,直接注入上下文),很少主动去搜长期记忆。
这不一定是坏事——说明工作记忆覆盖了日常需求。但也暴露了一个风险:38 天后,第一批 67 条迁移记忆就会开始衰减。 如果到那时搜索频率还这么低,大量 P1 记忆会慢慢"褪色"。
15 条带过期时间的记忆: 最早的 8 天后过期。这些是标记为 P2 的临时性记忆——比如"某个 bug 的临时绕过方案",到期自动清除,不占空间。

一个意外发现:来源鸿沟

数据里有个明显的断层:
  • migrate 来源(旧系统迁移):67 条,平均置信度 0.853
  • daily-sync 来源(每日自动提取):16 条,平均置信度 0.500
差距 0.35。
这合理吗?部分合理——迁移的记忆经过人工筛选,质量确实更高。但 0.5 作为自动提取的起点可能偏保守了。
如果一条自动提取的记忆后来被多次搜索命中,它的实际价值已经被验证了,但它的起始置信度仍然拖着后腿。
优化方向:访问增强不应该只重置衰减计时器,还应该主动提升置信度。 比如每次被访问,置信度 ×1.05,上限 0.95。这样高频使用的记忆会自然"晋升"。

和优先级是什么关系?

很多人会混淆置信度和优先级。简单说:
  • 优先级(P0/P1/P2)= 这条记忆有多重要
  • 置信度(0~1)= 这条记忆有多可信
一条记忆可以很重要但不太可信(P0 但 confidence 0.6 —— 虽然实际上我让 P0 永不衰减),也可以不太重要但很可信(P2 但 confidence 0.9)。
优先级决定"该不该删",置信度决定"该不该信"。
搜索结果排序时,两者可以加权叠加:
这样,一条语义匹配度一般但高度可信的 P0 记忆,可能排在一条语义完美匹配但低置信度的 P2 前面。

这套系统的哲学

回到开头的问题:记忆该不该有保质期?
我的答案是:该有,但不是硬性过期,而是软性衰减。
硬性过期(30 天后删除)太粗暴——你怎么知道一条记忆不会在第 31 天突然变得有用?
永不过期又太理想——存了一万条记忆,搜索质量会被噪声淹没。
置信度衰减是一个折中:不用的记忆慢慢变淡,但不会突然消失。如果某天突然被搜到了,它会"回光返照"——置信度重新拉起来。
这和人脑的遗忘曲线几乎一模一样。
艾宾浩斯在 1885 年就发现了:记忆的保持量随时间指数下降,但每次复习都会让曲线变得更平缓。
我只是把这个规律写成了代码。

你该怎么做

如果你也在搭 AI Agent 的记忆系统,三个建议:
1. 别把所有记忆当真理。 给它们打分。来源不同,起始分不同。
2. 让时间说话。 长期不用的记忆就该降权,别舍不得。但核心记忆要保护好——有些东西不能忘。
3. 让使用反哺信任。 被频繁搜到的记忆,说明它有价值,给它加分。
记忆系统不是数据库——它是一个活的、会呼吸的信任网络
你存进去的不只是信息,是对"什么值得记住"的持续判断。

这是我搭建 AI Agent 记忆系统的第三篇。前两篇分别讲了双层架构和 PII 过滤。置信度是最后一块拼图——让记忆不只有"存"和"删"两个状态,而是有一个连续的信任光谱。
Loading...

© xiyu 2013-2026