# DreamWeaver 求职版 Demo 包装 这份文档用于演示前 5 分钟快速准备,也可以作为面试官追问时的项目导航。 --- ## 1. 一句话定位 DreamWeaver 是面向 3-8 岁亲子场景的个性化 AI 绘本与陪伴式讲述产品。它把孩子档案、故事宇宙、故事生成、绘本插图、语音缓存、阅读事件和成长记忆串成一个可恢复的阅读闭环。 --- ## 2. 演示前检查 ```bash docker compose up -d --build ./scripts/demo_smoke.sh ``` 需要验证语音链路时: ```bash SMOKE_AUDIO=1 ./scripts/demo_smoke.sh ``` 演示入口: - 用户端:`http://localhost:52080` - 本地登录:`http://localhost:52080/auth/dev/signin` - 管理端:`http://localhost:52888` - 后端健康:`http://localhost:52000/health` --- ## 3. 主演示路径 1. 使用本地登录进入用户端。 2. 创建普通故事,说明主内容优先可读。 3. 打开故事详情页,展示 `partial_ready`、封面补全、音频缓存状态和生成轨迹。 4. 补全封面或音频,说明资产失败不会覆盖正文。 5. 创建绘本,进入绘本阅读器。 6. 刷新页面或重新进入绘本,说明按 ID 恢复和阅读位置恢复。 7. 回到故事库,展示跨故事 Provider 运营摘要。 8. 打开孩子时间线,展示阅读事件和记忆沉淀。 --- ## 4. 面试讲解锚点 - **产品判断**:求职版不追求功能越多,而是围绕亲子阅读闭环收敛。 - **AI 不确定性处理**:主内容和资产拆开,图片/音频失败不阻塞阅读。 - **Provider 产品化**:用户看到稳定能力,系统内部用 Capability / Provider / Adapter / Routing Policy 管供应链。 - **可观测性**:generation job/event 让生成过程、失败恢复和 Provider 成本可解释。 - **可继续生产化**:统一生成已经迁移到 worker,前端轮询和任务事件模型也已打通,下一步是补取消/重试队列和更完整监控。 --- ## 5. 失败预案 | 风险 | 现场处理 | | --- | --- | | TTS 网络失败 | 说明音频是可恢复资产,展示缓存状态或跳过语音 | | 图片生成失败 | 展示 `degraded_completed` 与资源重试 | | Docker 冷启动慢 | 演示前先跑 smoke 并保持容器运行 | | Provider 追问过深 | 回到 Capability / Provider / Adapter / Routing Policy 四层解释 | | 生产化追问 | 说明下一步是取消/重试队列、监控告警、密钥治理和 Provider analytics 扩展 |