Files
JARVIS/development-doc/plan/memory-update/README.md

156 lines
7.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Jarvis Memory 升级计划索引
本目录用于存放 Jarvis 记忆系统的分阶段升级规划文档。
## 文档说明
| 文件 | 说明 |
|------|------|
| `README.md` | 总览、阶段关系、实施顺序 |
| `phase-m-0-current-state.md` | 当前现状、问题、目标架构 |
| `phase-m-1-importance-scoring.md` | 重要性评分系统 |
| `phase-m-2-forgetting-system.md` | 遗忘曲线系统 |
| `phase-m-3-proactive-reminder.md` | 主动提醒系统 |
| `checklist.md` | 执行清单 |
## 推荐阅读顺序
1. 先读 `phase-m-0-current-state.md`
2. 再按顺序阅读 phase m-1 ~ m-3
3. 实施时严格按阶段推进
4. 参考 `checklist.md` 进行任务追踪
---
## 总体升级原则
1. **频率追踪** - 每次交互更新记忆频率
2. **重要性分层** - 高频/情绪/影响面 → 重要记忆
3. **遗忘曲线** - 低频记忆自然衰减
4. **主动关心** - 定期生成提醒,而非被动响应
5. **可独立推进** - Phase M 可与 Agent Phase 1-5 并行
---
## 阶段总览图
```
M.0 ──────────────────────────────────────────────────────────────┐
│ 现状与目标 │
│ - 当前记忆架构分析 │
│ - 短板识别 │
│ - 拟人记忆目标 │
└────────────────────────────────────────────────────────────────────┘
M.1 ──────────────────────────────────────────────────────────────┐
│ 重要性评分系统 │
│ - MemoryFrequencyTracker (频率追踪) │
│ - EmotionAnalyzer (情绪分析) │
│ - ImpactScorer (影响面评估) │
│ │
│ 核心文件: services/memory/importance_scorer.py │
│ 工作量: 4 天 │
└────────────────────────────────────────────────────────────────────┘
M.2 ──────────────────────────────────────────────────────────────┐
│ 遗忘曲线系统 │
│ - ForgettingCurve (遗忘曲线) │
│ - MemoryDecay (记忆衰减) │
│ - ReinforcementTrigger (强化触发) │
│ │
│ 核心文件: services/memory/forgetting_curve.py │
│ 依赖: M.1 │
│ 工作量: 3 天 │
└────────────────────────────────────────────────────────────────────┘
M.3 ──────────────────────────────────────────────────────────────┐
│ 主动提醒系统 │
│ - DailyDigestGenerator (每日摘要) │
│ - ReminderScheduler (提醒调度) │
│ - ProactiveMemoryInformer (主动提醒) │
│ │
│ 核心文件: services/memory/proactive_reminder.py │
│ 依赖: M.1, M.2 │
│ 工作量: 5 天 │
└────────────────────────────────────────────────────────────────────┘
```
---
## 核心借鉴
| 借鉴点 | 来源 | 难度 |
|--------|------|------|
| 频率追踪 | 儿童认知发育模型 | 🟢 低 |
| 艾宾浩斯遗忘曲线 | 心理学研究 | 🟢 低 |
| 重要性评分 | Jarvis 自身需求 | 🟡 中 |
| 主动提醒 | 儿童认知发育模型 | 🟡 中 |
**注:本升级不借鉴 VCPToolBox因为 VCPToolBox 解决的是「检索精度」问题,而本升级解决的是「记忆价值判断」问题。**
---
## 实施顺序
```
M.0 → M.1 → M.2 → M.3
│ │ │
│ │ └── 主动提醒系统
│ └── 遗忘曲线系统
└── 现状与目标
```
**注意:** M.1 是基础M.2 和 M.3 都依赖 M.1。
---
## 文件变更追踪
| Phase | 新增文件 | 修改文件 |
|-------|---------|---------|
| M.1 | `services/memory/importance_scorer.py`, `services/memory/frequency_tracker.py`, `services/memory/emotion_analyzer.py`, `tests/test_importance_scorer.py` | `models/memory.py`, `services/memory_service.py` |
| M.2 | `services/memory/forgetting_curve.py`, `tests/test_forgetting_curve.py` | `models/memory.py`, `services/memory_service.py` |
| M.3 | `services/memory/daily_digest.py`, `services/memory/reminder_scheduler.py`, `tests/test_proactive_reminder.py` | `services/memory_service.py`, `services/scheduler_service.py` |
---
## 与 Agent Phase 1-5 的关系
| Agent Phase | Memory 协作内容 |
|-------------|----------------|
| Phase 1 | Memory 追踪用户交互频率 |
| Phase 2 | Memory 服务被 Librarian Agent 调用 |
| Phase 3 | 支持动态协作时的记忆共享 |
| Phase 4 | Memory 重要性可视化 |
| Phase 5 | 高级记忆关联分析 |
| **Phase M** | **独立 Memory 升级路径,可与 Phase 1-5 并行推进** |
---
## 注意事项
| 注意事项 | 说明 |
|---------|------|
| M.1 是基础 | M.2 和 M.3 都依赖 M.1 的重要性评分 |
| 渐进式遗忘 | 不是删除,是降权和归档 |
| 主动提醒需用户授权 | 提醒推送需要用户明确开启 |
| 不改变现有检索逻辑 | Memory 升级是独立于 RAG 的 |
---
## 目标:拟人化记忆
```
现在的 Jarvis:
用户问什么Jarvis 答什么,不问就不说
升级后的 Jarvis:
- 知道什么对你重要(频率+情绪+影响面)
- 知道什么是你的痛点(反复问的问题)
- 会主动提醒你关心的事(不是等用户问)
- 知道什么可以忘记(低频记忆自然衰减)
```