Files
dreamweaver/.claude/specs/memory-intelligence/MEMORY-PERSONALIZATION-TECHNICAL-REPORT.md
torin b8d3cb4644
Some checks are pending
Build and Push Docker Images / changes (push) Waiting to run
Build and Push Docker Images / build-backend (push) Blocked by required conditions
Build and Push Docker Images / build-frontend (push) Blocked by required conditions
Build and Push Docker Images / build-admin-frontend (push) Blocked by required conditions
wip: snapshot full local workspace state
2026-04-17 18:58:11 +08:00

178 lines
4.4 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.
# 记忆与个性化技术方案建议PRD 讨论稿)
> 目标:给 DreamWeaver 的“记忆与个性化”提供可落地的技术路径与产品取舍依据,用于 PRD 细化。
---
## 1. 总体结论(推荐方案)
**v1 推荐:混合方案(结构化 DB + 轻量语义检索)**
- **DB** 作为权威事实与可解释记忆(孩子档案、宇宙设定、成就、偏好权重)。
- **RAG** 用于非结构化内容(故事摘要、互动摘要、近期期望),辅助个性化提示词。
**原因**
- 纯 DB 可控但缺乏语义弹性;纯 RAG 难以稳定控制与审计。
- 混合方案能在“可解释 + 个性化”之间取到最佳平衡。
---
## 2. DB vs RAG技术与产品对比
### 2.1 DB结构化记忆
**适用内容**
- 孩子档案(基础信息)
- 兴趣标签与成长主题
- 故事宇宙设定(主角、世界观、常驻角色)
- 成就(可审核、可追溯)
**优点**
- 高可解释性
- 变更可追踪、可回滚
- 便于用户管理(家长可编辑)
**缺点**
- 灵活性不足
- 难以覆盖“隐性偏好”(比如叙事风格喜好)
### 2.2 RAG语义记忆
**适用内容**
- 故事摘要
- 互动摘要(“最近更喜欢冒险故事”)
- 非结构化日志
**优点**
- 具备语义召回能力
- 适合挖掘“隐含偏好”
**缺点**
- 可解释性弱
- 成本与性能压力大
- 隐私风险更高
---
## 3. 时序性与记忆衰减(建议必须有)
**核心观点**:孩子兴趣会随时间变化,必须引入时间衰减。
**做法建议**
- 所有记忆项带 `created_at` / `last_used_at`
- 引入权重衰减模型:
- 近 7 天:高权重
- 30 天:中权重
- 90 天:低权重
- 超过 90 天:降权或淘汰
**价值**
- 避免旧偏好过度影响新故事
- 体现成长与兴趣演变
---
## 4. 分层记忆(建议引入)
建议采用三层结构:
### 4.1 短期记忆Session
- 当前生成上下文(关键词、选定档案/宇宙)
- 生命周期:仅本次请求有效
### 4.2 中期记忆(近期偏好)
- 最近 5-10 次故事生成/阅读偏好
- 生命周期30-60 天
### 4.3 长期记忆(稳定事实)
- 档案、宇宙、核心兴趣
- 生命周期:长期可编辑
**价值**
- 既保留稳定设定,又能捕捉近期变化
---
## 5. Agent 动态判断是否写入记忆
**建议:规则优先 + 模型辅助**
流程示例:
1. 命中规则(如完整阅读/重复播放)→ 进入候选
2. LLM 抽取结构化信息 + 置信度
3. 置信度不足 → 不写入
**优点**
- 避免模型“乱记忆”
- 降低噪声,提高记忆质量
---
## 6. 推荐的记忆数据结构
### 6.1 结构化表DB
- `child_profiles`:基础信息、兴趣、成长主题
- `story_universes`:主角、角色、世界观、成就
- `reading_events`:阅读/跳过/重播行为日志
- `memory_items`抽象记忆表type, value, confidence, ttl
### 6.2 语义检索RAG
- 存储内容:故事摘要、成就摘要、行为总结
- 向量库:**pgvector**(成本低、易部署)
- 检索过滤:`child_id` / `universe_id` / 时间窗口
---
## 7. 关键产品问题(需明确)
1) **记忆是否可编辑**
- 家长是否能查看、修改、删除系统记忆?
2) **跨孩子隔离**
- 同账号多孩子的记忆是否完全隔离(推荐隔离)
3) **隐私与合规**
- 哪些数据进入记忆?是否脱敏?是否加密?
4) **性能与成本**
- RAG 查询是否影响生成时延?
- 是否需要缓存与批量检索?
5) **效果评估**
- 记忆是否提高故事满意度?
- 需要 A/B 或指标体系吗?
---
## 8. 推荐实施路线
### v11-2 个月)
- DB 记忆为主RAG 只做轻量补充
- 引入时序衰减
- 记忆来源:用户显式输入 + 行为日志
### v22-3 个月)
- 引入 Agent 记忆抽取与置信度
- 记忆管理界面(家长可编辑)
- 更精细的个性化推荐
---
## 9. 需要确认的决定点
- 是否采用混合方案DB + RAG
- RAG 的检索范围(故事摘要 / 行为摘要 / 成就)
- 记忆分层与衰减规则
- Agent 记忆写入规则与阈值
- 家长可见/可控的记忆管理策略
---
如确认以上方向,我可以进一步输出:
- PRD 里的“记忆系统”完整章节
- 数据模型(含字段 + 时序衰减)
- 交互与界面草案
- 后端实现拆解(任务清单 + 里程碑)