#630·memU

特性: 检索分数的时间衰减

作者: skylabby创建于 2026年8月7日更新于 2026年8月11日

-- -- . . . 标题: "Feature: Timoral 衰变用于检索分数" 标签: ["增强","记忆"]. -- -- . . .

□ 问题

memU的检索不分年龄对所有片段一视同仁. 6个月前的一个事实,即0.82的相似性得分高于昨天的0.81,即使旧事实已被取代。

** 生产用途的真正例子(赫尔姆斯剂,235个部分,每天使用7周):**

当询问"homelab服务器的SSH密码"时,memU会返回关于SSH证书的片段. 它们都来自同一进口日期(2026-07-31),因此它们的时间重量相同. 但在实际操作中,密码会改变,主机会退役,偏好会逐渐演变. 没有时间信号,陈旧的信息就与当前信息平等竞争.

** 在使用六个月后:** 取回商店会包含关于已不存在的主机的事实,已经旋转过的密码,以及用户从此改变的偏好. 每一个这些僵化的事实,对于相关的询问,仍然会得到高的相似分数,挤出更新的,正确的信息.

□ 建议的解决办法

在检索查询中添加一个可选的“recency bias”参数,该参数将指数衰减适用于基于分龄的类似分数:

已调整 分数 = 相似度 分数 × 0.5^ (年龄 日 / 半衰期 日)
  • 默认`半衰期'=0'(残疾——现有用户的行为不变)
  • 通过`MEMU-RECENCY-HALF-LIFE' env var,实现人均检索或全球检索
  • 应用在向量存储层的查询时间(而不是作为后处理),从而影响哪个区段进入上-N,而不仅仅是其最终排名

一个原型包装器(仅后处理,并带有所隐含的限制)证实了这个概念的作品:在60天的半衰期,7天的分会获得0.922×的乘以,而排名保持稳定. 在180天时,同一段将降至0.77×.

□ 执行说明

  • ** 何处:** `Memory Service. depressive retrieve ()' 或基本的向量存储查询
  • ** 费用:** 每个候选部分乘以一-可忽略不计
  • ** 背向相容性:** 默认残疾(半衰期=0)
  • 相接表面: MEMU RECENCY HALF-LIFE'在config.env中,或Memu取回'上的`半生N'
  • ** 为什么查询时间,而不是索引时间:** 衰变曲线应为每个查询上下文的可捕性。 关于"二月到底发生了什么"的询问,希望比起"目前的设置是什么"来减少衰变.

□成功标准

在使用90天半衰期后:

  • 超过90天的部分按其原始相似性分数的50%加权
  • 上星期的片段加权为95%
  • 查询当前状况("我的SSH设置是什么")
  • 关于历史状态("旧防火墙配置是什么")的查询仍然有效(查询语义自然符合更老的部分)
  • 没有可以衡量的延迟增加

内容来源: NevaMind-AI/memU