巩固算法
状态:未实现(规划中)。
soul-tune中ConsolidateSuite为占位 stub (case_count = 0、run_case恒返回未通过),运行时无 consolidate 算法模块。
1. 设计愿景(源自旧文档)
记忆的整合与巩固是系统动态演化的基础,与检索同等重要:
- 整合:将多个类似描述合并为同一记忆节点,并建立记忆之间的联系。
- 巩固(短期 → 工作):滑动窗口中的短期记忆(含摘要标记)经 LLM 分析拆解为多个 记忆节点,与激活频率较高的记忆关联,并执行 LTP/LTD 调整连接强度。
- 巩固(工作 → 长期):把有更新的工作记忆写入长期存储(2025-10 曾注:先直接写库, 后续再说——当前无数据库,此项整体搁置)。
2. 当前实现状态
| 组件 | 状态 |
|---|---|
| 滑动窗口摘要标记(每 capacity 条标记一次,滑出即摘要) | ✅ 已实现(SlidingWindow) |
活跃记录(Record,检索激活追踪) | ✅ 已实现(record.rs) |
| LLM 拆解摘要为记忆节点并建链接 | ❌ 未实现 |
| 共激活 LTP/LTD 连接强度调整 | ❌ 未实现 |
| 工作 → 长期持久化 | ❌ 未实现(无数据库) |
| 评测框架 | ConsolidateSuite stub(0 用例) |
3. 相关设计约定
- 状态机:巩固等定期任务仅在
WorkingState::Idle时允许执行(检索工作时不打扰)。 - 连接强度:
MemoryLink.intensity(f64,默认 1.0)是共激活/LTP-LTD 调整的载体; 遗忘侧的边衰减已有edge_decay_intensity(见 遗忘算法)。 - 巩固产生的新节点应生成遗忘遮罩(旧设计约定,随巩固一并实现)。
该模块依赖数据库路线的
feature/consolidate分支(未合并),现被无数据库路线取代, 实际落地优先级较低。详见 研究笔记-分支概览。