记忆去重与强化
Memory Deduplication & Reinforcement
通过内容哈希去重和强化计数实现记忆的自然遗忘与巩固
子问题
1.内容哈希去重
2.强化计数追踪
3.时间衰减评分
4.Salience 综合排序
5.多存储后端的去重一致性(InMemory/SQLite/PostgreSQL)
6.工具调用记录的独立去重策略(MD5 call_hash)
7.哈希归一化边界(空格/大小写 vs 语义等价)
各项目的解法1 solutions
Signals
横向对比
| 维度 | memU |
|---|---|
| 去重策略 | SHA256(type:normalized_summary) 截取 16 字符,写时哈希查重 |
| 强化机制 | reinforcement_count 递增 + last_reinforced_at 时间戳更新 |
| 评分公式 | similarity × log(count+1) × exp(-0.693 × days/half_life) |
| 衰减模型 | 指数半衰期衰减,默认 30 天,可配置 recency_decay_days |
| 存储方式 | extra JSON 字段存储元数据,不修改核心 schema |
| 多后端支持 | InMemory/SQLite/PostgreSQL 三后端一致实现 |
最佳实践
1.使用 log(count+1) 阻尼强化因子防止高频记忆垄断,配合指数衰减实现自然遗忘
2.将去重元数据存入 extra JSON 字段而非新增列,避免 schema migration
3.对 tool 类型记忆跳过去重,保留每次调用的完整历史
4.用 type 前缀区分哈希命名空间,防止跨类型误判