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
4.4 KiB
4.4 KiB
记忆与个性化技术方案建议(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 动态判断是否写入记忆
建议:规则优先 + 模型辅助
流程示例:
- 命中规则(如完整阅读/重复播放)→ 进入候选
- LLM 抽取结构化信息 + 置信度
- 置信度不足 → 不写入
优点
- 避免模型“乱记忆”
- 降低噪声,提高记忆质量
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. 关键产品问题(需明确)
- 记忆是否可编辑
- 家长是否能查看、修改、删除系统记忆?
- 跨孩子隔离
- 同账号多孩子的记忆是否完全隔离(推荐隔离)
- 隐私与合规
- 哪些数据进入记忆?是否脱敏?是否加密?
- 性能与成本
- RAG 查询是否影响生成时延?
- 是否需要缓存与批量检索?
- 效果评估
- 记忆是否提高故事满意度?
- 需要 A/B 或指标体系吗?
8. 推荐实施路线
v1(1-2 个月)
- DB 记忆为主,RAG 只做轻量补充
- 引入时序衰减
- 记忆来源:用户显式输入 + 行为日志
v2(2-3 个月)
- 引入 Agent 记忆抽取与置信度
- 记忆管理界面(家长可编辑)
- 更精细的个性化推荐
9. 需要确认的决定点
- 是否采用混合方案(DB + RAG)
- RAG 的检索范围(故事摘要 / 行为摘要 / 成就)
- 记忆分层与衰减规则
- Agent 记忆写入规则与阈值
- 家长可见/可控的记忆管理策略
如确认以上方向,我可以进一步输出:
- PRD 里的“记忆系统”完整章节
- 数据模型(含字段 + 时序衰减)
- 交互与界面草案
- 后端实现拆解(任务清单 + 里程碑)