← 关联知识节点:记忆机制:auto memory、三级记忆与持久化
交互工具 · 直觉

记忆召回调参

记忆召回管线四步:键位隔离 → 双路检索 → MMR 去重 → 时间衰减,守住「准、不重、够新」三条底线。挑下一条注入记忆时,MMR 同时要求「与查询相关」和「与已选中条目不重复」,两股力量按 λ 权衡——拧 λ 和半衰期,看 8 条候选的注入名单怎么实时洗牌:哪条被挤、哪条沉底、哪条怎么都拧不进来。

纯前端算真实数学:MMR 为 Carbonell & Goldstein 贪心式 λ·rel − (1−λ)·max sim(文章 mmr_diversify(hits, lam=0.7) 同式),相关分与相似度取自预设 2D 单位向量;时间衰减 0.5^(年龄/半衰期) 为演示口径(文章只定「新记忆靠前」的行为,未给公式);键位隔离在候选池结构上挡死租户外条目,零 API、零随机。

攒了几百条记忆之后,每轮只注入 top-k 条——哪些进名单,λ 与 半衰期 说了算:MMR 按 λ·相关−(1−λ)·冗余 挑「与查询相关且互不重复」的条目, 时间衰减把新记忆往前顶。拧两个旋钮,亲手把「准、不重、够新」三条底线逐条守住或打破—— 键位圈外的记忆则任何参数都拧不进来。
准 · 名单最高相关
0.98
注入 3 条 · 候选 7 条
不重 · 名单内最大相似
1.00
近重复并存 → λ 往小拧
够新 · 名单平均年龄
36 天
1 条 60 天以上旧条目

候选记忆名单 · 部署网关要改什么

注入 top-3 落选 键位隔离
注入 #1项目事实网关超时统一设 30 秒8 天前写入

8 天前写入 · 现役项目事实

相关分
0.97
与已选最大相似
0.89
MMR 分
0.41
衰减后得分
0.373
注入 #2项目事实网关转发规则写在 nginx.conf10 天前写入

10 天前写入 · 现役项目事实

相关分
0.97
与已选最大相似
1.00
MMR 分
0.38
衰减后得分
0.340
注入 #3过期条目旧约定:网关走 8080 端口90 天前写入

端口早已改掉——约定变更时该覆盖旧条目,它没退休

相关分
0.98
与已选最大相似
0.00
MMR 分
0.68
衰减后得分
0.242
落选重复表述nginx.conf 里 server 块配转发45 天前写入

与上一条同一件事的两种表述(近重复对)

相关分
0.97
与已选最大相似
1.00
MMR 分
0.38
衰减后得分
0.226
落选项目事实接口统一用 /api/v2 前缀15 天前写入

文章开场的那条约定

相关分
0.74
与已选最大相似
0.89
MMR 分
0.25
衰减后得分
0.213
落选用户偏好代码注释用中文2 天前写入

跟人走的用户偏好(全局作用域)

相关分
-0.09
与已选最大相似
0.60
MMR 分
-0.24
衰减后得分
-0.236
落选无关琐事明日站会改到上午十点1 天前写入

新鲜但无关——写入判断本不该收它

相关分
-0.64
与已选最大相似
0.82
MMR 分
-0.70
衰减后得分
-0.688
已隔离租户外网关统一走 /api/gx/v3 前缀globex::api

租户 globex 的记忆——键位圈外,不进候选池

相关分
0.98
与已选最大相似
—
MMR 分
—
衰减后得分
—

session_key 圈外(当前 acme::api):检索第一步就被键位圈死,相关分再高也没有 MMR 名次。

拧 λ:往 1 拧纯看相关(近重复条目一起挤进名单),往 0 拧只看互异(再相关也因重复被挤出);拧半衰期:越短旧条目沉得越快。

查询换个查询,名单大换血
λ 相关 ⇄ 冗余0.70

MMR 权重:1·相关 − 0.30·冗余;文章口径 λ=0.7

时间衰减半衰期60 天

衰减 = 0.5^(年龄/半衰期):60 天前的记忆分数减半

top-k 注入条数3 条

每轮注入消息流的记忆条数——预算防线,注入多不等于答得好

MMR 为 Carbonell & Goldstein 贪心式(文章 mmr_diversify(hits, lam=0.7) 同式,已选为空时冗余项取 0); 时间衰减的「指数半衰期」为演示口径——文章只定「新记忆靠前」的行为,未给公式;相关分与相似度取自预设 2D 单位向量(真实系统是 embedding 余弦)。

MMR = λ·rel − (1−λ)·max sim(候选, 已选),衰减 = 0.5^(年龄/半衰期),注入 = MMR×衰减 的 top-k

手感预设,点一下复现

准而不重没守住:名单里并存着相似度 1.00 的两条记忆——把 λ 往小拧,MMR 会把重复的那条挤出去。「够新」没守住:1 条 60 天以上的旧条目还在名单(最老 90 天)——半衰期拧小,旧条目会沉底。键位隔离恒成立:globex::api 的「网关统一走 /api/gx/v3 前缀」相关分 0.98,比名单里 2 条都高也进不来——隔离在检索最前,与任何参数无关,事后过滤漏网即事故。