126 lines
4.8 KiB
Markdown
126 lines
4.8 KiB
Markdown
# Phase M.0:Memory 现状与目标
|
||
|
||
日期:2026-04-04
|
||
状态:已完成
|
||
升级方向:拟人化记忆系统
|
||
|
||
---
|
||
|
||
## 1. 本阶段目的
|
||
|
||
本文件用于统一背景认知,明确:
|
||
|
||
- Jarvis 当前记忆系统处于什么水平
|
||
- 主要短板是什么
|
||
- 为什么要升级
|
||
- 升级后的目标形态是什么
|
||
|
||
---
|
||
|
||
## 2. 当前 Jarvis Memory 架构
|
||
|
||
### 2.1 核心流程
|
||
|
||
```
|
||
用户对话 → MemoryService → Mem0 (facts/preferences/goals)
|
||
→ BrainService → BrainMemory
|
||
→ SQLite (memory_summaries)
|
||
```
|
||
|
||
### 2.2 核心文件
|
||
|
||
| 文件 | 职责 |
|
||
|------|------|
|
||
| `backend/app/services/memory_service.py` | 三层记忆管理 |
|
||
| `backend/app/services/brain_service.py` | Brain 学习与回忆 |
|
||
| `backend/app/models/memory.py` | MemorySummary, UserMemory 模型 |
|
||
| `backend/app/models/brain.py` | BrainEvent, BrainMemory, BrainTag 模型 |
|
||
|
||
---
|
||
|
||
## 3. 当前能力矩阵
|
||
|
||
| 能力 | 状态 | 说明 |
|
||
|------|------|------|
|
||
| 短期记忆 | ✅ | messages 表存储当前会话 |
|
||
| 中期记忆 | ✅ | memory_summaries 跨会话摘要 |
|
||
| 长期记忆 | ✅ | Mem0 facts/preferences/goals |
|
||
| 记忆检索 | ✅ | Mem0 语义搜索 + SQLite LIKE |
|
||
| 记忆重要性 | ❌ | 无重要性评分 |
|
||
| 频率追踪 | ❌ | 无频率统计 |
|
||
| 遗忘机制 | ❌ | 存了就不删 |
|
||
| 主动提醒 | ❌ | 完全被动响应 |
|
||
|
||
---
|
||
|
||
## 4. 当前短板
|
||
|
||
| 短板 | 严重程度 | 影响 |
|
||
|------|----------|------|
|
||
| 无重要性评分 | 🔴 高 | 无法区分重要/不重要记忆 |
|
||
| 无频率追踪 | 🔴 高 | 反复出现的痛点无法识别 |
|
||
| 无遗忘机制 | 🟡 中 | 存储无限增长,冷门知识占空间 |
|
||
| 无主动提醒 | 🔴 高 | 用户不问就不说,不像助理 |
|
||
| 无情绪感知 | 🟡 中 | 无法区分用户急/重要的表达 |
|
||
|
||
---
|
||
|
||
## 5. 目标架构
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────┐
|
||
│ 用户对话输入 │
|
||
└─────────────────────────┬───────────────────────────────────┘
|
||
│
|
||
┌───────────┴───────────┐
|
||
│ Importance Scorer │ ← M.1 新增
|
||
│ - 频率 (你提几次了) │
|
||
│ - 情绪 (急/重要/困扰) │
|
||
│ - 影响面 (关联多少) │
|
||
│ - 时间 (最近/当时) │
|
||
└───────────┬───────────┘
|
||
│
|
||
┌────────────────┼────────────────┐
|
||
▼ ▼ ▼
|
||
┌───────────┐ ┌───────────┐ ┌───────────┐
|
||
│ 高优先级 │ │ 中优先级 │ │ 低优先级 │
|
||
│ (主动提醒)│ │ (记住) │ │ (归档) │
|
||
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
|
||
│ │ │
|
||
▼ ▼ ▼
|
||
形成观点 选择性回忆 自然遗忘
|
||
主动提醒 需要时召回 (降权归档)
|
||
```
|
||
|
||
---
|
||
|
||
## 6. 与 VCPToolBox 的关系
|
||
|
||
| VCPToolBox 能力 | 本升级是否借鉴 | 理由 |
|
||
|-----------------|---------------|------|
|
||
| TagMemo 向量检索 | ❌ 不借鉴 | 你需要的是「记住什么」,不是「检索更准」 |
|
||
| LIF 脉冲扩散 | ❌ 不借鉴 | 同上 |
|
||
| EPA 语义分析 | ❌ 不借鉴 | 同上 |
|
||
| 频率追踪 | ✅ 参考 | 这是你核心需要的,VCPToolBox 没有,自己设计 |
|
||
|
||
**结论:VCPToolBox 解决的是「知识管理」,本升级解决的是「记忆价值判断」,是两个不同的问题。**
|
||
|
||
---
|
||
|
||
## 7. 升级后的直观改变
|
||
|
||
| 现在 | 升级后 |
|
||
|------|--------|
|
||
| 问 3 次同一个问题,Jarvis 每次都当新问题 | 第 2 次就记住,第 3 次能说"你之前问过..." |
|
||
| 很少用的知识自动沉底 | 低频知识自动归档,需要时能恢复 |
|
||
| 你问"明天干嘛" → 只能看日程 | 主动说"你昨天说想换工作,提醒你查一下 JD" |
|
||
| 告诉 Jarvis 的事可能下次就忘了 | 重要的事主动记,冷门的事知道就行 |
|
||
|
||
---
|
||
|
||
## 8. 本阶段产出要求
|
||
|
||
- [x] 团队对 Jarvis 当前记忆问题和目标方向达成一致
|
||
- [x] 明确了与 VCPToolBox 的关系(不借鉴 VCPToolBox)
|
||
- [x] 后续 phase 文档能够在这个认知基础上展开
|