2746 lines
34 KiB
Markdown
Executable File
2746 lines
34 KiB
Markdown
Executable File
# 系统 B 完整项目落地需求设计文档 V2
|
||
|
||
## 项目名称
|
||
|
||
**AI 多人生主题写真 / 韩漫 / 纪念视频生成系统**
|
||
|
||
简称:
|
||
|
||
```text
|
||
系统 B
|
||
真人照片 → 多人生主题 → 多世界模板 → 韩漫写真 / 纪念视频
|
||
```
|
||
|
||
---
|
||
|
||
# 0. 文档说明
|
||
|
||
本文档是系统 B 的 V2 版本,是在 V1「真人照片 → 婚礼韩漫 / 视频」基础上升级后的完整落地需求设计。
|
||
|
||
V2 的核心变化:
|
||
|
||
1. 不再只做婚礼,而是升级为多人生主题平台。
|
||
2. 第一阶段仍然主打婚礼、恋爱纪念、银婚金婚、情侣写真、个人形象。
|
||
3. 后续可以扩展到家庭全家福、宝宝百日、儿童成长、闺蜜写真、亲子纪念等。
|
||
4. 技术上按独立系统 B 开发,但保留后续与系统 A 合并的公共架构。
|
||
5. 模型策略按高质量优先,但所有模型都必须通过 Provider 抽象层管理,不写死单一模型。
|
||
|
||
V3 增量说明:
|
||
|
||
```text
|
||
系统 B V2 可稳定覆盖写真图集和图片纪念视频。
|
||
如果目标升级为“真人会动、有表情、有动作、像抖音短剧/真人纪念电影”,开发必须按 V3 真人动态视频版执行。
|
||
```
|
||
|
||
V3 不推翻 V2,而是在 V2 上新增:
|
||
|
||
- 四档输出模式:高清写真图集、图片纪念视频、动态写真视频、AI 真人动态视频。
|
||
- 真人身份锁定:身份锚点图、本人相似度评分、人脸一致性质检。
|
||
- 动作与视频片段:动作模板、关键帧、图生视频片段、片段质检、片段重试。
|
||
- 可选口型链路:LipSyncTask、音频对齐、失败回退到旁白字幕版本。
|
||
- 国内短剧向 VideoProvider:MiniMax Hailuo、阿里 Wan、Vidu、Seedance、Kling、Runway。
|
||
- 更严格肖像合规:未成年人保护、公开案例二次授权、原图私密存储、后台访问审计。
|
||
- 更强成本控制:按片段秒数、分辨率、候选数、重试、口型和人工审核估算成本。
|
||
|
||
后续开发主依据:
|
||
|
||
```text
|
||
00_系统B升级说明_真人动态视频.md
|
||
01_系统B总需求文档_v3_真人动态视频版.md
|
||
```
|
||
|
||
本 V2 文档作为历史基础和非动态视频链路参考保留。
|
||
|
||
---
|
||
|
||
# 1. 重新审核后的关键修正
|
||
|
||
## 1.1 不能只叫婚礼系统
|
||
|
||
V1 的方向可行,但过于偏婚礼。
|
||
|
||
V2 正式改成:
|
||
|
||
```text
|
||
真人照片驱动的 AI 多人生主题定制影像平台
|
||
```
|
||
|
||
婚礼只是第一个重点场景,不是系统上限。
|
||
|
||
底层业务对象不能叫 `WeddingProject`,应该统一叫:
|
||
|
||
```text
|
||
Project
|
||
LifeTheme
|
||
WorldTemplate
|
||
SceneTemplate
|
||
ShotTemplate
|
||
PersonProfile
|
||
RenderTask
|
||
Asset
|
||
Order
|
||
RevisionRequest
|
||
```
|
||
|
||
这样以后扩展宝宝百日、儿童成长、全家福时,不需要重构核心业务。
|
||
|
||
---
|
||
|
||
## 1.2 用户流程顺序修正
|
||
|
||
正式版推荐流程:
|
||
|
||
```text
|
||
首页浏览
|
||
→ 登录
|
||
→ 创建项目
|
||
→ 选择人生主题
|
||
→ 选择套餐
|
||
→ 选择视觉风格
|
||
→ 选择世界观
|
||
→ 选择场景
|
||
→ 上传照片
|
||
→ 授权确认
|
||
→ 照片质检
|
||
→ 建立人物档案
|
||
→ 填写定制信息
|
||
→ 生成创作方案
|
||
→ 成本锁定 / 支付
|
||
→ 生成预览
|
||
→ 用户确认
|
||
→ 正式高质量生成
|
||
→ 质检
|
||
→ 视频合成
|
||
→ 人工审核
|
||
→ 用户确认
|
||
→ 交付下载
|
||
```
|
||
|
||
原因:
|
||
|
||
- 用户先看主题和模板,更容易转化。
|
||
- 真正进入高成本生成前,必须完成照片质检、授权和支付。
|
||
- 预览阶段要控制成本,正式阶段再使用最高质量生成。
|
||
|
||
---
|
||
|
||
## 1.3 必须加入支付、额度、成本锁定
|
||
|
||
如果使用高质量模型,成本会明显增加。
|
||
|
||
系统必须加入:
|
||
|
||
```text
|
||
套餐价格
|
||
用户余额 / 订单支付
|
||
预览额度
|
||
正式生成额度
|
||
重试次数
|
||
修改次数
|
||
成本日志
|
||
```
|
||
|
||
正式生成前必须满足:
|
||
|
||
```text
|
||
照片合格
|
||
授权已确认
|
||
订单已支付 / 额度已冻结
|
||
创作方案已确认
|
||
```
|
||
|
||
否则禁止进入高成本生成流程。
|
||
|
||
---
|
||
|
||
## 1.4 必须加入隐私授权与肖像授权
|
||
|
||
用户上传真人照片,必须有授权流程。
|
||
|
||
上传照片前必须勾选:
|
||
|
||
```text
|
||
我确认拥有上传照片的合法使用权
|
||
我确认已获得照片中人物授权
|
||
我授权平台为本次项目生成图片和视频
|
||
我知道作品默认不公开展示
|
||
如涉及未成年人,我确认我是监护人或已获得监护人授权
|
||
```
|
||
|
||
公开案例必须单独授权,不能默认展示。
|
||
|
||
---
|
||
|
||
## 1.5 必须加入内容审核
|
||
|
||
系统要审核:
|
||
|
||
```text
|
||
上传照片
|
||
用户自定义文案
|
||
生成 Prompt
|
||
生成图片
|
||
生成视频封面
|
||
最终视频
|
||
```
|
||
|
||
审核模块必须从第一版就设计进去,至少保留接口和状态。
|
||
|
||
---
|
||
|
||
## 1.6 不能把视频模型写死
|
||
|
||
你选择高质量模型没问题,但视频模块一定要抽象成:
|
||
|
||
```text
|
||
VideoProvider
|
||
```
|
||
|
||
原因:
|
||
|
||
- 视频模型更新快。
|
||
- API 生命周期可能变化。
|
||
- 成本和速度差异大。
|
||
- 商业系统必须允许切换供应商。
|
||
|
||
所有模型都要通过 Provider 配置,不要硬编码。
|
||
|
||
---
|
||
|
||
## 1.7 必须加入任务幂等和失败恢复
|
||
|
||
AI 生成链路很长:
|
||
|
||
```text
|
||
照片检测
|
||
人物档案
|
||
方案生成
|
||
预览图
|
||
正式图
|
||
视频片段
|
||
音频
|
||
字幕
|
||
合成
|
||
审核
|
||
```
|
||
|
||
任意一步失败,都不能让整个项目废掉。
|
||
|
||
每个任务必须有:
|
||
|
||
```text
|
||
task_id
|
||
status
|
||
retry_count
|
||
max_retry
|
||
input_hash
|
||
provider_request_id
|
||
error_code
|
||
error_message
|
||
can_resume
|
||
```
|
||
|
||
同一个任务重复提交,不能重复扣费,必须支持幂等。
|
||
|
||
---
|
||
|
||
# 2. 最终产品定位
|
||
|
||
## 2.1 产品一句话
|
||
|
||
用户上传真人照片,选择人生主题、世界观、场景和风格,系统生成专属韩漫写真、国风写真、多世界穿越纪念视频。
|
||
|
||
---
|
||
|
||
## 2.2 第一阶段主打场景
|
||
|
||
第一阶段重点做 5 类:
|
||
|
||
```text
|
||
结婚纪念
|
||
恋爱纪念
|
||
父母银婚金婚
|
||
情侣写真
|
||
个人形象定制
|
||
```
|
||
|
||
这 5 类最适合变现,也最适合做案例展示。
|
||
|
||
---
|
||
|
||
## 2.3 后续扩展场景
|
||
|
||
后续可扩展:
|
||
|
||
```text
|
||
家庭全家福
|
||
宝宝百日
|
||
儿童成长
|
||
闺蜜写真
|
||
亲子纪念
|
||
生日纪念
|
||
毕业纪念
|
||
企业形象写真
|
||
节日主题写真
|
||
```
|
||
|
||
底层模板系统必须支持这些扩展。
|
||
|
||
---
|
||
|
||
# 3. 最高模型策略
|
||
|
||
## 3.1 模型使用原则
|
||
|
||
你选择「都使用最高质量」可以,但系统不能浪费成本。
|
||
|
||
建议策略:
|
||
|
||
```text
|
||
文字策划:最高推理模型
|
||
图像生成:最高图像模型,高质量档
|
||
视频生成:最高视频模型,但必须可替换
|
||
语音合成:稳定 TTS 模型
|
||
审核:文本 + 图片审核模型
|
||
```
|
||
|
||
---
|
||
|
||
## 3.2 Provider 配置建议
|
||
|
||
系统配置成:
|
||
|
||
```text
|
||
TextProvider:
|
||
quality: highest
|
||
|
||
ImageProvider:
|
||
quality: high
|
||
|
||
VideoProvider:
|
||
quality: highest
|
||
fallback: other_video_provider
|
||
must_be_replaceable: true
|
||
|
||
VoiceProvider:
|
||
quality: stable
|
||
|
||
ModerationProvider:
|
||
text_and_image: true
|
||
```
|
||
|
||
不要把具体模型名写死在业务代码中。
|
||
|
||
---
|
||
|
||
## 3.3 高质量模型不等于每一步都高成本
|
||
|
||
流程分为:
|
||
|
||
```text
|
||
方案阶段
|
||
预览阶段
|
||
正式阶段
|
||
返工阶段
|
||
交付阶段
|
||
```
|
||
|
||
正式图和正式视频用最高质量。
|
||
预览图可以:
|
||
|
||
- 少数量
|
||
- 低清
|
||
- 加水印
|
||
- 只生成关键场景
|
||
|
||
否则用户不确认就生成大量高清成品,成本会失控。
|
||
|
||
---
|
||
|
||
# 4. 系统总体架构
|
||
|
||
## 4.1 用户端
|
||
|
||
用户端使用:
|
||
|
||
```text
|
||
uni-app
|
||
```
|
||
|
||
支持:
|
||
|
||
```text
|
||
H5
|
||
微信小程序
|
||
后续 App
|
||
```
|
||
|
||
---
|
||
|
||
## 4.2 后台管理端
|
||
|
||
后台使用:
|
||
|
||
```text
|
||
Geeker-Admin
|
||
```
|
||
|
||
用途:
|
||
|
||
- 用户管理
|
||
- 项目管理
|
||
- 订单管理
|
||
- 模板管理
|
||
- 任务管理
|
||
- 案例管理
|
||
- 修改申请管理
|
||
- AI Provider 管理
|
||
- 日志管理
|
||
- 系统配置
|
||
|
||
---
|
||
|
||
## 4.3 后端
|
||
|
||
推荐:
|
||
|
||
```text
|
||
Node.js + NestJS
|
||
```
|
||
|
||
原因:
|
||
|
||
```text
|
||
适合异步任务编排
|
||
适合 BullMQ 队列
|
||
适合 WebSocket 进度推送
|
||
适合对接 uni-app 和后台
|
||
适合 AI Provider 抽象
|
||
```
|
||
|
||
Python 不作为主后端,但作为 AI Worker 辅助:
|
||
|
||
```text
|
||
照片质量检测
|
||
人脸角度检测
|
||
图像相似度检测
|
||
图片后处理
|
||
局部修复
|
||
视频辅助处理
|
||
```
|
||
|
||
PHP 不建议作为此系统主后端。
|
||
|
||
---
|
||
|
||
## 4.4 基础设施
|
||
|
||
```text
|
||
MySQL 8:业务数据
|
||
Redis:队列、缓存、锁
|
||
BullMQ:任务队列
|
||
MinIO:本地对象存储
|
||
FFmpeg:视频合成
|
||
Nginx:反向代理
|
||
PM2 / systemd:进程管理
|
||
Docker:建议使用,但第一版可选
|
||
```
|
||
|
||
---
|
||
|
||
# 5. 完整业务流程
|
||
|
||
## 5.1 游客浏览流程
|
||
|
||
```text
|
||
访问首页
|
||
→ 查看案例
|
||
→ 查看主题
|
||
→ 查看世界模板
|
||
→ 查看套餐
|
||
→ 点击开始制作
|
||
→ 登录 / 注册
|
||
```
|
||
|
||
游客可以看:
|
||
|
||
```text
|
||
首页
|
||
案例
|
||
套餐
|
||
玩法说明
|
||
FAQ
|
||
公开案例
|
||
```
|
||
|
||
游客不能:
|
||
|
||
```text
|
||
创建项目
|
||
上传照片
|
||
生成预览
|
||
下载作品
|
||
申请修改
|
||
```
|
||
|
||
---
|
||
|
||
## 5.2 用户正式制作流程
|
||
|
||
```text
|
||
登录
|
||
→ 创建项目
|
||
→ 选择人生主题
|
||
→ 选择套餐
|
||
→ 选择视觉风格
|
||
→ 选择世界观
|
||
→ 选择场景
|
||
→ 上传照片
|
||
→ 勾选授权协议
|
||
→ 照片质检
|
||
→ 人物身份建立
|
||
→ 填写定制信息
|
||
→ 生成创作方案
|
||
→ 用户确认方案
|
||
→ 支付 / 冻结额度
|
||
→ 生成预览图
|
||
→ 用户确认预览
|
||
→ 正式高质量生成图片
|
||
→ 图片质检
|
||
→ 生成音频 / 字幕
|
||
→ 视频合成
|
||
→ 最终质检
|
||
→ 人工审核
|
||
→ 用户确认成品
|
||
→ 下载交付
|
||
→ 项目归档
|
||
```
|
||
|
||
---
|
||
|
||
## 5.3 支付模式建议
|
||
|
||
### 模式 A:先支付后预览
|
||
|
||
适合标准套餐:
|
||
|
||
```text
|
||
选套餐
|
||
→ 支付
|
||
→ 生成预览
|
||
→ 确认
|
||
→ 正式生成
|
||
```
|
||
|
||
优点:避免白嫖预览。
|
||
|
||
### 模式 B:免费低清预览,正式生成前支付
|
||
|
||
适合引流:
|
||
|
||
```text
|
||
生成低清水印预览
|
||
→ 用户满意
|
||
→ 支付
|
||
→ 正式高清生成
|
||
```
|
||
|
||
建议第一阶段采用:
|
||
|
||
```text
|
||
登录用户每天可免费生成 1 次低清水印预览
|
||
正式生成必须支付
|
||
```
|
||
|
||
---
|
||
|
||
# 6. 人生主题设计
|
||
|
||
## 6.1 第一阶段主题
|
||
|
||
| 编码 | 名称 | 人物结构 | 输出建议 |
|
||
|---|---|---|---|
|
||
| wedding | 结婚纪念 | 双人 | 图集 / 视频 |
|
||
| love | 恋爱纪念 | 双人 | 图集 / 短视频 |
|
||
| silver_gold_wedding | 银婚金婚 | 双人 / 家庭 | 视频优先 |
|
||
| couple_portrait | 情侣写真 | 双人 | 图集优先 |
|
||
| personal_portrait | 个人形象定制 | 单人 | 图集 / 头像 / 短视频 |
|
||
|
||
---
|
||
|
||
## 6.2 第二阶段主题
|
||
|
||
| 编码 | 名称 | 人物结构 |
|
||
|---|---|---|
|
||
| family | 家庭全家福 | 多人 |
|
||
| baby_100_days | 宝宝百日 | 宝宝 / 父母 |
|
||
| child_growth | 儿童成长 | 儿童 |
|
||
| best_friends | 闺蜜写真 | 双人 / 多人 |
|
||
| parent_child | 亲子纪念 | 成人 + 儿童 |
|
||
| birthday | 生日纪念 | 单人 / 多人 |
|
||
|
||
---
|
||
|
||
## 6.3 主题必须决定的规则
|
||
|
||
每个主题必须配置:
|
||
|
||
```text
|
||
需要几个人
|
||
照片上传规则
|
||
可选世界观
|
||
可选场景
|
||
推荐风格
|
||
推荐文案
|
||
推荐视频节奏
|
||
是否允许公开案例
|
||
是否涉及未成年人
|
||
是否需要加强隐私提醒
|
||
```
|
||
|
||
例如宝宝百日、儿童成长、亲子纪念,都必须触发未成年人授权提示。
|
||
|
||
---
|
||
|
||
# 7. 世界观模板设计
|
||
|
||
## 7.1 世界观分类
|
||
|
||
```text
|
||
历史朝代系
|
||
仙侠修真系
|
||
未来科技系
|
||
趣味脑洞系
|
||
架空奇幻系
|
||
现代纪念系
|
||
家庭温情系
|
||
儿童童话系
|
||
```
|
||
|
||
---
|
||
|
||
## 7.2 第一阶段建议上线世界
|
||
|
||
第一阶段不要一次上太多,建议先做 20 个精品世界。
|
||
|
||
### 历史朝代系
|
||
|
||
```text
|
||
汉朝
|
||
唐朝
|
||
宋朝
|
||
明朝
|
||
清朝
|
||
民国
|
||
```
|
||
|
||
### 仙侠修真系
|
||
|
||
```text
|
||
仙宫大婚
|
||
宗门大典
|
||
桃花仙境
|
||
龙宫婚礼
|
||
凤族神婚
|
||
剑仙世界
|
||
```
|
||
|
||
### 未来科技系
|
||
|
||
```text
|
||
星际婚礼
|
||
月球基地
|
||
全息圣殿
|
||
未来都市
|
||
赛博城市
|
||
```
|
||
|
||
### 趣味脑洞系
|
||
|
||
```text
|
||
恐龙时代
|
||
海底王国
|
||
精灵森林
|
||
云端王国
|
||
```
|
||
|
||
### 现代纪念系
|
||
|
||
```text
|
||
现代婚礼
|
||
浪漫海边
|
||
城市夜景
|
||
花园仪式
|
||
```
|
||
|
||
---
|
||
|
||
## 7.3 世界模板字段
|
||
|
||
每个世界模板需要配置:
|
||
|
||
```text
|
||
world_id
|
||
world_code
|
||
world_name
|
||
category
|
||
cover_image
|
||
preview_video
|
||
description
|
||
supported_life_themes
|
||
supported_styles
|
||
prompt_base
|
||
costume_rules
|
||
scene_rules
|
||
color_rules
|
||
lighting_rules
|
||
negative_rules
|
||
is_premium
|
||
status
|
||
sort_order
|
||
```
|
||
|
||
---
|
||
|
||
# 8. 场景模板设计
|
||
|
||
## 8.1 场景不是图片,是可复用生产规则
|
||
|
||
每个场景包含:
|
||
|
||
```text
|
||
场景描述
|
||
服装约束
|
||
人物站位
|
||
镜头推荐
|
||
光影
|
||
氛围元素
|
||
可选特效
|
||
适用主题
|
||
适用风格
|
||
生成难度
|
||
成本等级
|
||
```
|
||
|
||
---
|
||
|
||
## 8.2 示例:明制婚礼
|
||
|
||
```text
|
||
世界:明朝
|
||
场景:
|
||
1. 王府喜堂
|
||
2. 花轿迎亲
|
||
3. 红绸长廊
|
||
4. 园林拜堂
|
||
5. 洞房花烛
|
||
6. 夜宴烟花
|
||
```
|
||
|
||
---
|
||
|
||
## 8.3 示例:修仙婚礼
|
||
|
||
```text
|
||
世界:仙宫大婚
|
||
场景:
|
||
1. 云海仙宫
|
||
2. 桃花林誓言台
|
||
3. 宗门大殿
|
||
4. 仙舟婚典
|
||
5. 凤凰环绕礼台
|
||
6. 星河天台
|
||
```
|
||
|
||
---
|
||
|
||
## 8.4 示例:未来科技
|
||
|
||
```text
|
||
世界:星际婚礼
|
||
场景:
|
||
1. 星舰大厅
|
||
2. 银河观景台
|
||
3. 全息圣殿
|
||
4. 月球基地礼堂
|
||
5. 光之穹顶
|
||
6. 星际花园
|
||
```
|
||
|
||
---
|
||
|
||
# 9. 视觉风格设计
|
||
|
||
## 9.1 第一阶段风格
|
||
|
||
```text
|
||
韩漫风
|
||
半写实写真风
|
||
国风插画风
|
||
电影写实风
|
||
```
|
||
|
||
---
|
||
|
||
## 9.2 推荐优先级
|
||
|
||
商业落地优先做:
|
||
|
||
```text
|
||
半写实写真风
|
||
韩漫风
|
||
国风插画风
|
||
```
|
||
|
||
电影写实风虽然高级,但最容易暴露人脸不像、手部异常、动态不自然的问题,所以放在高端套餐更合适。
|
||
|
||
---
|
||
|
||
# 10. 套餐设计
|
||
|
||
## 10.1 标准图集版
|
||
|
||
```text
|
||
适合:情侣写真、个人形象
|
||
主题:1 个
|
||
世界:1 个
|
||
场景:3 个
|
||
成品图:6-12 张
|
||
视频:无
|
||
修改:1 次小改
|
||
生成质量:高
|
||
```
|
||
|
||
---
|
||
|
||
## 10.2 短视频版
|
||
|
||
```text
|
||
适合:恋爱纪念、结婚纪念
|
||
主题:1 个
|
||
世界:1-3 个
|
||
场景:3-6 个
|
||
成品图:12-24 张
|
||
视频:30-60 秒
|
||
字幕:有
|
||
BGM:有
|
||
旁白:可选
|
||
修改:1 次小改
|
||
```
|
||
|
||
---
|
||
|
||
## 10.3 多世界纪念片
|
||
|
||
```text
|
||
适合:跨朝代婚礼、修仙+未来+古代穿越
|
||
主题:1 个
|
||
世界:5-10 个
|
||
场景:5-20 个
|
||
成品图:25-60 张
|
||
视频:1-3 分钟
|
||
字幕:有
|
||
BGM:有
|
||
旁白:有
|
||
片头片尾:有
|
||
修改:2 次
|
||
```
|
||
|
||
---
|
||
|
||
## 10.4 高端定制版
|
||
|
||
```text
|
||
适合:婚庆公司、影楼、金婚银婚、婚礼现场播放
|
||
主题:自由定制
|
||
世界:自由组合
|
||
场景:可定制
|
||
图片:高精修
|
||
视频:1-5 分钟
|
||
动态镜头:可选
|
||
人工审核:必须
|
||
修改:按订单配置
|
||
```
|
||
|
||
---
|
||
|
||
# 11. 用户端页面设计
|
||
|
||
用户端使用 uni-app。
|
||
|
||
## 11.1 首页
|
||
|
||
不需要登录。
|
||
|
||
模块:
|
||
|
||
```text
|
||
顶部 Banner
|
||
产品卖点
|
||
热门案例
|
||
热门人生主题
|
||
热门世界模板
|
||
套餐说明
|
||
制作流程
|
||
用户评价
|
||
FAQ
|
||
开始制作按钮
|
||
```
|
||
|
||
按钮:
|
||
|
||
```text
|
||
查看案例
|
||
用同款制作
|
||
选择主题
|
||
查看套餐
|
||
开始制作
|
||
联系客服
|
||
```
|
||
|
||
---
|
||
|
||
## 11.2 案例列表页
|
||
|
||
不需要登录。
|
||
|
||
筛选:
|
||
|
||
```text
|
||
人生主题
|
||
世界观
|
||
视觉风格
|
||
图集 / 视频
|
||
最新 / 热门
|
||
```
|
||
|
||
只展示用户授权公开的案例。
|
||
|
||
---
|
||
|
||
## 11.3 案例详情页
|
||
|
||
展示:
|
||
|
||
```text
|
||
案例视频
|
||
案例图集
|
||
使用主题
|
||
使用世界
|
||
使用风格
|
||
套餐推荐
|
||
同款制作按钮
|
||
```
|
||
|
||
---
|
||
|
||
## 11.4 登录注册页
|
||
|
||
支持:
|
||
|
||
```text
|
||
手机号验证码
|
||
微信授权
|
||
邮箱注册,后续可选
|
||
```
|
||
|
||
---
|
||
|
||
## 11.5 创建项目页
|
||
|
||
必须登录。
|
||
|
||
字段:
|
||
|
||
```text
|
||
项目名称
|
||
人生主题
|
||
作品用途
|
||
输出类型
|
||
```
|
||
|
||
作品用途:
|
||
|
||
```text
|
||
自己留念
|
||
送礼物
|
||
婚礼现场播放
|
||
小红书/抖音发布
|
||
父母纪念
|
||
```
|
||
|
||
---
|
||
|
||
## 11.6 主题选择页
|
||
|
||
字段:
|
||
|
||
```text
|
||
主题名称
|
||
主题封面
|
||
主题说明
|
||
适合人群
|
||
案例数量
|
||
是否推荐
|
||
```
|
||
|
||
---
|
||
|
||
## 11.7 套餐选择页
|
||
|
||
字段:
|
||
|
||
```text
|
||
套餐名称
|
||
价格
|
||
输出图片数量
|
||
输出视频时长
|
||
世界数量
|
||
场景数量
|
||
修改次数
|
||
是否人工审核
|
||
是否支持高级动态
|
||
```
|
||
|
||
---
|
||
|
||
## 11.8 风格选择页
|
||
|
||
字段:
|
||
|
||
```text
|
||
风格名称
|
||
预览图
|
||
适合主题
|
||
适合世界
|
||
是否高级风格
|
||
```
|
||
|
||
---
|
||
|
||
## 11.9 世界观选择页
|
||
|
||
支持:
|
||
|
||
```text
|
||
单世界
|
||
多世界
|
||
自由排序
|
||
同款案例选择
|
||
```
|
||
|
||
限制:
|
||
|
||
```text
|
||
标准图集:1 个世界
|
||
短视频:1-3 个世界
|
||
多世界纪念片:5-10 个世界
|
||
高端定制:按配置
|
||
```
|
||
|
||
---
|
||
|
||
## 11.10 场景选择页
|
||
|
||
展示结构:
|
||
|
||
```text
|
||
世界 A
|
||
场景 1
|
||
场景 2
|
||
场景 3
|
||
|
||
世界 B
|
||
场景 1
|
||
场景 2
|
||
```
|
||
|
||
每个场景展示:
|
||
|
||
```text
|
||
预览图
|
||
适合镜头数
|
||
是否支持视频动态
|
||
是否高级场景
|
||
```
|
||
|
||
---
|
||
|
||
## 11.11 照片上传页
|
||
|
||
根据主题动态变化。
|
||
|
||
### 双人主题
|
||
|
||
```text
|
||
男方照片:3-8 张
|
||
女方照片:3-8 张
|
||
双人合照:1-5 张,可选
|
||
```
|
||
|
||
### 单人主题
|
||
|
||
```text
|
||
本人照片:3-10 张
|
||
```
|
||
|
||
### 家庭主题
|
||
|
||
```text
|
||
每个成员至少 2-5 张
|
||
家庭合照 1-5 张
|
||
```
|
||
|
||
### 儿童 / 宝宝主题
|
||
|
||
```text
|
||
宝宝照片 3-10 张
|
||
父母照片可选
|
||
必须勾选监护人授权
|
||
```
|
||
|
||
---
|
||
|
||
## 11.12 授权确认页
|
||
|
||
必须有。
|
||
|
||
勾选项:
|
||
|
||
```text
|
||
我确认拥有上传照片的合法使用权
|
||
我确认已获得照片中人物授权
|
||
我授权平台为本次项目生成图片和视频
|
||
我知道作品默认不公开展示
|
||
如涉及未成年人,我确认我是监护人或已获得监护人授权
|
||
```
|
||
|
||
---
|
||
|
||
## 11.13 照片质检页
|
||
|
||
检测:
|
||
|
||
```text
|
||
清晰度
|
||
人脸完整度
|
||
光照
|
||
遮挡
|
||
角度
|
||
多人混入
|
||
重复图片
|
||
角色归属
|
||
疑似低质量
|
||
疑似过度美颜
|
||
```
|
||
|
||
状态:
|
||
|
||
```text
|
||
pass
|
||
warning
|
||
fail
|
||
```
|
||
|
||
fail 必须补图,warning 可继续但提示风险。
|
||
|
||
---
|
||
|
||
## 11.14 定制信息页
|
||
|
||
字段:
|
||
|
||
```text
|
||
人物姓名
|
||
关系类型
|
||
纪念日期
|
||
文案风格
|
||
一句话誓言
|
||
是否显示名字
|
||
是否显示日期
|
||
特别要求
|
||
是否允许公开展示
|
||
```
|
||
|
||
文案风格:
|
||
|
||
```text
|
||
浪漫
|
||
庄重
|
||
温馨
|
||
梦幻
|
||
史诗
|
||
搞笑
|
||
高级电影感
|
||
古风诗意
|
||
```
|
||
|
||
---
|
||
|
||
## 11.15 创作方案预览页
|
||
|
||
展示:
|
||
|
||
```text
|
||
作品标题
|
||
主题
|
||
风格
|
||
世界顺序
|
||
场景顺序
|
||
镜头数量
|
||
图片数量
|
||
预计视频时长
|
||
旁白草稿
|
||
字幕草稿
|
||
片头片尾文案
|
||
预计消耗额度
|
||
```
|
||
|
||
按钮:
|
||
|
||
```text
|
||
确认方案
|
||
修改世界
|
||
修改场景
|
||
修改文案
|
||
重新生成方案
|
||
取消项目
|
||
```
|
||
|
||
---
|
||
|
||
## 11.16 支付 / 额度确认页
|
||
|
||
字段:
|
||
|
||
```text
|
||
套餐价格
|
||
已用优惠
|
||
需支付金额
|
||
预览额度
|
||
正式生成额度
|
||
修改次数
|
||
预计成本说明
|
||
```
|
||
|
||
按钮:
|
||
|
||
```text
|
||
立即支付
|
||
使用余额
|
||
取消订单
|
||
```
|
||
|
||
---
|
||
|
||
## 11.17 预览生成页
|
||
|
||
展示:
|
||
|
||
```text
|
||
低清水印预览图
|
||
部分关键镜头
|
||
人物像不像反馈
|
||
风格是否满意
|
||
```
|
||
|
||
按钮:
|
||
|
||
```text
|
||
满意,进入正式生成
|
||
不满意,重新生成预览
|
||
修改模板
|
||
联系客服
|
||
```
|
||
|
||
---
|
||
|
||
## 11.18 生成进度页
|
||
|
||
用 WebSocket 或轮询。
|
||
|
||
状态节点:
|
||
|
||
```text
|
||
项目已创建
|
||
照片检测完成
|
||
人物档案建立中
|
||
方案生成中
|
||
等待方案确认
|
||
预览生成中
|
||
等待预览确认
|
||
正式图生成中
|
||
图片质检中
|
||
音频生成中
|
||
字幕生成中
|
||
视频合成中
|
||
人工审核中
|
||
等待用户确认
|
||
已完成
|
||
```
|
||
|
||
---
|
||
|
||
## 11.19 成品确认页
|
||
|
||
展示:
|
||
|
||
```text
|
||
成品视频
|
||
成品图集
|
||
封面图
|
||
有字幕版本
|
||
无字幕版本
|
||
下载入口
|
||
剩余修改次数
|
||
```
|
||
|
||
按钮:
|
||
|
||
```text
|
||
确认完成
|
||
申请修改
|
||
下载视频
|
||
下载图片
|
||
删除作品
|
||
授权公开为案例
|
||
```
|
||
|
||
---
|
||
|
||
## 11.20 修改申请页
|
||
|
||
修改分级:
|
||
|
||
```text
|
||
小改
|
||
中改
|
||
大改
|
||
```
|
||
|
||
小改:
|
||
|
||
```text
|
||
改名字
|
||
改日期
|
||
改字幕
|
||
换音乐
|
||
改片尾文案
|
||
```
|
||
|
||
中改:
|
||
|
||
```text
|
||
替换个别图片
|
||
重做 1-2 个场景
|
||
调整部分镜头
|
||
```
|
||
|
||
大改:
|
||
|
||
```text
|
||
换整体风格
|
||
换全部世界
|
||
重建人设
|
||
整条视频重做
|
||
```
|
||
|
||
大改必须重新计费。
|
||
|
||
---
|
||
|
||
# 12. 后台管理端设计
|
||
|
||
后台使用 Geeker-Admin 二开。
|
||
|
||
## 12.1 仪表盘
|
||
|
||
指标:
|
||
|
||
```text
|
||
今日订单数
|
||
今日支付金额
|
||
今日生成项目数
|
||
今日完成项目数
|
||
失败任务数
|
||
待审核项目数
|
||
待处理修改数
|
||
AI 调用成本
|
||
存储占用
|
||
热门主题排行
|
||
热门世界排行
|
||
转化率
|
||
```
|
||
|
||
---
|
||
|
||
## 12.2 用户管理
|
||
|
||
字段:
|
||
|
||
```text
|
||
用户 ID
|
||
昵称
|
||
手机号
|
||
微信 openid
|
||
注册时间
|
||
项目数
|
||
订单数
|
||
消费金额
|
||
状态
|
||
```
|
||
|
||
---
|
||
|
||
## 12.3 项目管理
|
||
|
||
字段:
|
||
|
||
```text
|
||
project_id
|
||
user_id
|
||
life_theme
|
||
package_id
|
||
style_id
|
||
world_count
|
||
scene_count
|
||
status
|
||
payment_status
|
||
created_at
|
||
completed_at
|
||
allow_public_case
|
||
```
|
||
|
||
操作:
|
||
|
||
```text
|
||
查看详情
|
||
查看素材
|
||
查看任务
|
||
手动重试
|
||
转人工
|
||
标记异常
|
||
强制完成
|
||
取消项目
|
||
```
|
||
|
||
---
|
||
|
||
## 12.4 订单管理
|
||
|
||
字段:
|
||
|
||
```text
|
||
order_id
|
||
project_id
|
||
user_id
|
||
package_id
|
||
amount
|
||
pay_status
|
||
refund_status
|
||
pay_time
|
||
created_at
|
||
```
|
||
|
||
状态:
|
||
|
||
```text
|
||
pending
|
||
paid
|
||
cancelled
|
||
refunding
|
||
refunded
|
||
failed
|
||
```
|
||
|
||
---
|
||
|
||
## 12.5 模板管理
|
||
|
||
子模块:
|
||
|
||
```text
|
||
人生主题管理
|
||
世界观模板管理
|
||
场景模板管理
|
||
镜头模板管理
|
||
视觉风格管理
|
||
文案模板管理
|
||
音乐模板管理
|
||
视频模板管理
|
||
套餐管理
|
||
```
|
||
|
||
---
|
||
|
||
## 12.6 任务管理
|
||
|
||
任务类型:
|
||
|
||
```text
|
||
photo_check
|
||
person_profile
|
||
plan_generate
|
||
prompt_generate
|
||
preview_image
|
||
final_image
|
||
image_qc
|
||
video_clip_generate
|
||
audio_generate
|
||
subtitle_generate
|
||
video_render
|
||
final_qc
|
||
manual_review
|
||
```
|
||
|
||
操作:
|
||
|
||
```text
|
||
查看输入
|
||
查看输出
|
||
重试
|
||
终止
|
||
跳过
|
||
标记人工处理
|
||
查看错误日志
|
||
```
|
||
|
||
---
|
||
|
||
## 12.7 AI Provider 管理
|
||
|
||
Provider 类型:
|
||
|
||
```text
|
||
TextProvider
|
||
ImageProvider
|
||
VideoProvider
|
||
VoiceProvider
|
||
ModerationProvider
|
||
FaceCheckProvider
|
||
QualityCheckProvider
|
||
StorageProvider
|
||
```
|
||
|
||
字段:
|
||
|
||
```text
|
||
provider_id
|
||
provider_type
|
||
provider_name
|
||
model_name
|
||
api_base
|
||
priority
|
||
quality_level
|
||
cost_rule
|
||
rate_limit
|
||
status
|
||
fallback_provider_id
|
||
```
|
||
|
||
---
|
||
|
||
## 12.8 案例管理
|
||
|
||
字段:
|
||
|
||
```text
|
||
case_id
|
||
project_id
|
||
title
|
||
cover_image
|
||
video_url
|
||
theme_id
|
||
style_id
|
||
world_ids
|
||
sort_order
|
||
is_featured
|
||
status
|
||
authorization_record_id
|
||
```
|
||
|
||
注意:无授权不能上架。
|
||
|
||
---
|
||
|
||
## 12.9 修改申请管理
|
||
|
||
字段:
|
||
|
||
```text
|
||
revision_id
|
||
project_id
|
||
user_id
|
||
revision_type
|
||
request_text
|
||
remaining_count
|
||
status
|
||
created_at
|
||
handled_by
|
||
```
|
||
|
||
操作:
|
||
|
||
```text
|
||
接受
|
||
拒绝
|
||
转人工
|
||
创建重做任务
|
||
标记完成
|
||
```
|
||
|
||
---
|
||
|
||
## 12.10 隐私与授权管理
|
||
|
||
必须独立管理:
|
||
|
||
```text
|
||
用户授权记录
|
||
公开案例授权
|
||
未成年人授权确认
|
||
删除申请
|
||
数据导出申请
|
||
素材清理记录
|
||
```
|
||
|
||
---
|
||
|
||
# 13. 项目状态流转设计
|
||
|
||
## 13.1 Project 状态
|
||
|
||
```text
|
||
draft
|
||
template_selecting
|
||
photo_uploading
|
||
authorization_pending
|
||
photo_checking
|
||
photo_rejected
|
||
person_profiling
|
||
info_filling
|
||
plan_generating
|
||
waiting_plan_confirm
|
||
payment_pending
|
||
payment_paid
|
||
preview_generating
|
||
waiting_preview_confirm
|
||
final_generating
|
||
image_qc
|
||
audio_generating
|
||
subtitle_generating
|
||
video_rendering
|
||
final_qc
|
||
manual_review
|
||
waiting_user_confirm
|
||
revision_requested
|
||
revising
|
||
completed
|
||
cancelled
|
||
failed
|
||
archived
|
||
```
|
||
|
||
---
|
||
|
||
## 13.2 主流程
|
||
|
||
```text
|
||
draft
|
||
→ template_selecting
|
||
→ photo_uploading
|
||
→ authorization_pending
|
||
→ photo_checking
|
||
→ person_profiling
|
||
→ info_filling
|
||
→ plan_generating
|
||
→ waiting_plan_confirm
|
||
→ payment_pending
|
||
→ payment_paid
|
||
→ preview_generating
|
||
→ waiting_preview_confirm
|
||
→ final_generating
|
||
→ image_qc
|
||
→ audio_generating
|
||
→ subtitle_generating
|
||
→ video_rendering
|
||
→ final_qc
|
||
→ manual_review
|
||
→ waiting_user_confirm
|
||
→ completed
|
||
→ archived
|
||
```
|
||
|
||
---
|
||
|
||
## 13.3 照片失败分支
|
||
|
||
```text
|
||
photo_checking
|
||
→ photo_rejected
|
||
→ photo_uploading
|
||
→ photo_checking
|
||
```
|
||
|
||
---
|
||
|
||
## 13.4 支付失败分支
|
||
|
||
```text
|
||
payment_pending
|
||
→ payment_failed
|
||
→ payment_pending / cancelled
|
||
```
|
||
|
||
---
|
||
|
||
## 13.5 预览不满意分支
|
||
|
||
```text
|
||
waiting_preview_confirm
|
||
→ template_selecting / info_filling / preview_generating
|
||
```
|
||
|
||
---
|
||
|
||
## 13.6 成品修改分支
|
||
|
||
```text
|
||
waiting_user_confirm
|
||
→ revision_requested
|
||
→ revising
|
||
→ final_generating / video_rendering / manual_review
|
||
→ waiting_user_confirm
|
||
```
|
||
|
||
---
|
||
|
||
# 14. 核心数据表设计
|
||
|
||
## 14.1 users
|
||
|
||
```text
|
||
id
|
||
nickname
|
||
phone
|
||
email
|
||
wechat_openid
|
||
avatar
|
||
status
|
||
created_at
|
||
updated_at
|
||
```
|
||
|
||
---
|
||
|
||
## 14.2 projects
|
||
|
||
```text
|
||
id
|
||
user_id
|
||
title
|
||
life_theme_id
|
||
package_id
|
||
style_id
|
||
output_type
|
||
status
|
||
payment_status
|
||
total_duration
|
||
image_count
|
||
video_url
|
||
cover_asset_id
|
||
allow_public_case
|
||
created_at
|
||
updated_at
|
||
completed_at
|
||
```
|
||
|
||
---
|
||
|
||
## 14.3 orders
|
||
|
||
```text
|
||
id
|
||
user_id
|
||
project_id
|
||
package_id
|
||
amount
|
||
pay_status
|
||
pay_method
|
||
transaction_id
|
||
refund_status
|
||
created_at
|
||
paid_at
|
||
```
|
||
|
||
---
|
||
|
||
## 14.4 life_themes
|
||
|
||
```text
|
||
id
|
||
code
|
||
name
|
||
description
|
||
cover_asset_id
|
||
person_schema
|
||
status
|
||
sort_order
|
||
```
|
||
|
||
`person_schema` 示例:
|
||
|
||
```json
|
||
{
|
||
"type": "couple",
|
||
"roles": ["person_a", "person_b"],
|
||
"min_photos_each": 3,
|
||
"max_photos_each": 8
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## 14.5 person_profiles
|
||
|
||
```text
|
||
id
|
||
project_id
|
||
role
|
||
name
|
||
gender_label
|
||
age_group
|
||
appearance_summary
|
||
reference_asset_ids
|
||
anchor_asset_id
|
||
quality_score
|
||
status
|
||
created_at
|
||
```
|
||
|
||
---
|
||
|
||
## 14.6 assets
|
||
|
||
```text
|
||
id
|
||
user_id
|
||
project_id
|
||
asset_type
|
||
file_path
|
||
file_url
|
||
mime_type
|
||
width
|
||
height
|
||
duration
|
||
size
|
||
hash
|
||
visibility
|
||
status
|
||
created_at
|
||
```
|
||
|
||
asset_type:
|
||
|
||
```text
|
||
upload_photo
|
||
preview_image
|
||
final_image
|
||
audio
|
||
subtitle
|
||
video
|
||
cover
|
||
case_asset
|
||
```
|
||
|
||
---
|
||
|
||
## 14.7 world_templates
|
||
|
||
```text
|
||
id
|
||
code
|
||
name
|
||
category
|
||
description
|
||
cover_asset_id
|
||
prompt_base
|
||
costume_rules
|
||
scene_rules
|
||
style_rules
|
||
negative_rules
|
||
supported_theme_ids
|
||
supported_style_ids
|
||
is_premium
|
||
status
|
||
sort_order
|
||
```
|
||
|
||
---
|
||
|
||
## 14.8 scene_templates
|
||
|
||
```text
|
||
id
|
||
world_id
|
||
code
|
||
name
|
||
description
|
||
cover_asset_id
|
||
scene_prompt
|
||
composition_rules
|
||
lighting_rules
|
||
effect_type
|
||
recommended_shot_count
|
||
is_premium
|
||
status
|
||
sort_order
|
||
```
|
||
|
||
---
|
||
|
||
## 14.9 shot_templates
|
||
|
||
```text
|
||
id
|
||
scene_id
|
||
code
|
||
name
|
||
shot_type
|
||
camera_angle
|
||
composition
|
||
prompt_rule
|
||
duration
|
||
effect_type
|
||
status
|
||
sort_order
|
||
```
|
||
|
||
---
|
||
|
||
## 14.10 project_worlds
|
||
|
||
```text
|
||
id
|
||
project_id
|
||
world_id
|
||
sort_order
|
||
```
|
||
|
||
---
|
||
|
||
## 14.11 project_scenes
|
||
|
||
```text
|
||
id
|
||
project_id
|
||
world_id
|
||
scene_id
|
||
sort_order
|
||
```
|
||
|
||
---
|
||
|
||
## 14.12 shot_plans
|
||
|
||
```text
|
||
id
|
||
project_id
|
||
world_id
|
||
scene_id
|
||
shot_template_id
|
||
title
|
||
description
|
||
prompt_text
|
||
negative_prompt
|
||
duration
|
||
sort_order
|
||
status
|
||
```
|
||
|
||
---
|
||
|
||
## 14.13 render_tasks
|
||
|
||
```text
|
||
id
|
||
project_id
|
||
task_type
|
||
provider_id
|
||
status
|
||
input_json
|
||
input_hash
|
||
output_asset_id
|
||
provider_request_id
|
||
retry_count
|
||
max_retry
|
||
cost_estimate
|
||
cost_actual
|
||
error_code
|
||
error_message
|
||
created_at
|
||
started_at
|
||
finished_at
|
||
```
|
||
|
||
---
|
||
|
||
## 14.14 revision_requests
|
||
|
||
```text
|
||
id
|
||
project_id
|
||
user_id
|
||
revision_type
|
||
request_text
|
||
status
|
||
remaining_count_before
|
||
handled_by
|
||
created_at
|
||
updated_at
|
||
```
|
||
|
||
---
|
||
|
||
## 14.15 authorizations
|
||
|
||
```text
|
||
id
|
||
user_id
|
||
project_id
|
||
authorization_type
|
||
content
|
||
ip
|
||
user_agent
|
||
confirmed_at
|
||
```
|
||
|
||
authorization_type:
|
||
|
||
```text
|
||
photo_usage
|
||
public_case
|
||
minor_guardian
|
||
privacy_policy
|
||
terms
|
||
```
|
||
|
||
---
|
||
|
||
## 14.16 provider_logs
|
||
|
||
```text
|
||
id
|
||
provider_id
|
||
project_id
|
||
task_id
|
||
request_payload
|
||
response_payload
|
||
status
|
||
cost
|
||
latency_ms
|
||
created_at
|
||
```
|
||
|
||
---
|
||
|
||
# 15. AI 生成流水线设计
|
||
|
||
## 15.1 照片输入处理
|
||
|
||
```text
|
||
用户上传原图
|
||
→ 去 EXIF
|
||
→ 生成缩略图
|
||
→ 存储原图
|
||
→ 人脸检测
|
||
→ 清晰度评分
|
||
→ 角色归属确认
|
||
→ 合格图进入人物档案
|
||
```
|
||
|
||
必须去 EXIF,避免暴露用户位置信息。
|
||
|
||
---
|
||
|
||
## 15.2 人物档案生成
|
||
|
||
每个人生成:
|
||
|
||
```text
|
||
外貌摘要
|
||
气质描述
|
||
发型描述
|
||
脸型描述
|
||
五官特征
|
||
参考图列表
|
||
主锚点图
|
||
禁用变化点
|
||
```
|
||
|
||
示例:
|
||
|
||
```text
|
||
person_a:
|
||
30岁左右男性,短黑发,脸型偏长,五官清晰,气质沉稳,不要改变发际线,不要变成欧美脸。
|
||
```
|
||
|
||
---
|
||
|
||
## 15.3 创作方案生成
|
||
|
||
输入:
|
||
|
||
```text
|
||
人生主题
|
||
套餐
|
||
风格
|
||
世界观
|
||
场景
|
||
人物档案
|
||
定制信息
|
||
```
|
||
|
||
输出:
|
||
|
||
```text
|
||
作品标题
|
||
世界顺序
|
||
场景顺序
|
||
镜头计划
|
||
旁白
|
||
字幕
|
||
片头
|
||
片尾
|
||
总时长
|
||
预计图片数
|
||
预计视频片段数
|
||
```
|
||
|
||
---
|
||
|
||
## 15.4 Prompt 生成
|
||
|
||
Prompt 必须分层组合:
|
||
|
||
```text
|
||
人物层
|
||
主题层
|
||
世界观层
|
||
场景层
|
||
镜头层
|
||
风格层
|
||
质量层
|
||
限制层
|
||
```
|
||
|
||
最终 Prompt 结构:
|
||
|
||
```text
|
||
人物描述
|
||
+ 关系描述
|
||
+ 世界观设定
|
||
+ 场景设定
|
||
+ 镜头构图
|
||
+ 光影氛围
|
||
+ 视觉风格
|
||
+ 质量要求
|
||
+ 禁止项
|
||
```
|
||
|
||
---
|
||
|
||
## 15.5 预览图生成
|
||
|
||
预览图规则:
|
||
|
||
```text
|
||
数量少
|
||
加水印
|
||
低清或中清
|
||
只生成关键场景
|
||
用于确认人物和风格
|
||
```
|
||
|
||
不建议预览阶段生成完整视频。
|
||
|
||
---
|
||
|
||
## 15.6 正式图生成
|
||
|
||
正式图规则:
|
||
|
||
```text
|
||
高质量图像模型
|
||
高质量档
|
||
按镜头生成
|
||
每张图记录 Prompt
|
||
每张图记录 Provider
|
||
每张图记录版本
|
||
失败可重试
|
||
```
|
||
|
||
---
|
||
|
||
## 15.7 图像质检
|
||
|
||
自动检测:
|
||
|
||
```text
|
||
人脸是否明显崩坏
|
||
男女是否混脸
|
||
是否不像本人
|
||
是否多出第三人
|
||
是否手部异常
|
||
是否服装跑偏
|
||
是否场景错误
|
||
是否文字乱入
|
||
是否敏感内容
|
||
```
|
||
|
||
处理:
|
||
|
||
```text
|
||
合格 → 入选
|
||
轻微问题 → 人工复核
|
||
严重问题 → 自动重生
|
||
连续失败 → 转人工
|
||
```
|
||
|
||
---
|
||
|
||
## 15.8 音频生成
|
||
|
||
音频类型:
|
||
|
||
```text
|
||
旁白
|
||
祝福语
|
||
誓言
|
||
片头语
|
||
片尾语
|
||
```
|
||
|
||
TTS 参数:
|
||
|
||
```text
|
||
voice
|
||
speed
|
||
emotion
|
||
tone
|
||
format
|
||
```
|
||
|
||
---
|
||
|
||
## 15.9 视频合成
|
||
|
||
第一版以 FFmpeg 为核心:
|
||
|
||
```text
|
||
图片转视频
|
||
推拉镜头
|
||
转场
|
||
字幕
|
||
BGM
|
||
旁白
|
||
片头片尾
|
||
封面
|
||
导出 MP4
|
||
```
|
||
|
||
视频动态分级:
|
||
|
||
```text
|
||
L1:静态图片 + 运镜
|
||
L2:图片 + 粒子 / 花瓣 / 光效
|
||
L3:关键镜头图生视频
|
||
L4:高级动态视频
|
||
```
|
||
|
||
第一阶段推荐:
|
||
|
||
```text
|
||
80% L1
|
||
15% L2
|
||
5% L3
|
||
```
|
||
|
||
不要第一版就全量 AI 视频化。
|
||
|
||
---
|
||
|
||
# 16. 质量控制标准
|
||
|
||
## 16.1 照片质量标准
|
||
|
||
合格要求:
|
||
|
||
```text
|
||
人脸清晰
|
||
无遮挡
|
||
不过度美颜
|
||
光照正常
|
||
分辨率足够
|
||
主体明确
|
||
```
|
||
|
||
---
|
||
|
||
## 16.2 人像一致性标准
|
||
|
||
成品应满足:
|
||
|
||
```text
|
||
同一个人在不同场景中五官稳定
|
||
男女不混脸
|
||
年龄不严重漂移
|
||
气质不严重偏离
|
||
发型可适配世界,但不能完全换人
|
||
```
|
||
|
||
---
|
||
|
||
## 16.3 风格一致性标准
|
||
|
||
同一个项目内:
|
||
|
||
```text
|
||
画风统一
|
||
色调统一
|
||
人物服饰符合世界设定
|
||
镜头节奏一致
|
||
字幕风格一致
|
||
```
|
||
|
||
---
|
||
|
||
## 16.4 视频交付标准
|
||
|
||
```text
|
||
视频能正常播放
|
||
无明显黑屏
|
||
无音画错位
|
||
字幕不出框
|
||
BGM 音量不过大
|
||
旁白清晰
|
||
封面正常
|
||
分辨率符合套餐
|
||
```
|
||
|
||
---
|
||
|
||
# 17. 稳定性设计
|
||
|
||
## 17.1 队列隔离
|
||
|
||
不同任务用不同队列:
|
||
|
||
```text
|
||
photo_check_queue
|
||
text_queue
|
||
image_queue
|
||
video_queue
|
||
audio_queue
|
||
ffmpeg_queue
|
||
qc_queue
|
||
```
|
||
|
||
避免视频任务堵住图片任务。
|
||
|
||
---
|
||
|
||
## 17.2 并发限制
|
||
|
||
按用户、项目、Provider 控制:
|
||
|
||
```text
|
||
每用户同时最多 1-2 个正式生成项目
|
||
每项目同时最多 N 个图片任务
|
||
每 Provider 设置并发上限
|
||
```
|
||
|
||
---
|
||
|
||
## 17.3 重试策略
|
||
|
||
每个任务:
|
||
|
||
```text
|
||
默认重试 2-3 次
|
||
失败记录原因
|
||
连续失败转人工
|
||
重试不得重复扣用户额度
|
||
```
|
||
|
||
---
|
||
|
||
## 17.4 幂等设计
|
||
|
||
同一个任务用:
|
||
|
||
```text
|
||
project_id + task_type + input_hash
|
||
```
|
||
|
||
作为幂等 key。
|
||
|
||
如果重复提交:
|
||
|
||
```text
|
||
已有成功结果 → 直接返回
|
||
已有运行任务 → 返回当前任务
|
||
失败任务 → 允许按规则重试
|
||
```
|
||
|
||
---
|
||
|
||
## 17.5 成本监控
|
||
|
||
必须记录:
|
||
|
||
```text
|
||
每个任务预计成本
|
||
每个任务实际成本
|
||
每个项目总成本
|
||
每个用户总成本
|
||
每天 Provider 成本
|
||
```
|
||
|
||
---
|
||
|
||
# 18. 隐私、安全、合规设计
|
||
|
||
## 18.1 用户照片隐私
|
||
|
||
必须做到:
|
||
|
||
```text
|
||
默认私密
|
||
公开案例需单独授权
|
||
支持用户删除作品
|
||
后台敏感操作留日志
|
||
下载链接有有效期
|
||
原图不直接暴露公网
|
||
```
|
||
|
||
---
|
||
|
||
## 18.2 未成年人内容
|
||
|
||
涉及:
|
||
|
||
```text
|
||
宝宝百日
|
||
儿童成长
|
||
亲子纪念
|
||
家庭全家福
|
||
```
|
||
|
||
必须增加:
|
||
|
||
```text
|
||
监护人授权确认
|
||
禁止公开展示默认关闭
|
||
后台审核更严格
|
||
```
|
||
|
||
---
|
||
|
||
## 18.3 防滥用
|
||
|
||
禁止:
|
||
|
||
```text
|
||
上传未经授权的他人照片
|
||
生成侮辱性内容
|
||
生成色情内容
|
||
生成政治人物冒充内容
|
||
生成名人商业冒用内容
|
||
生成违法内容
|
||
```
|
||
|
||
---
|
||
|
||
## 18.4 音乐版权
|
||
|
||
BGM 必须来自:
|
||
|
||
```text
|
||
平台自有授权音乐
|
||
可商用音乐库
|
||
用户自己上传且承诺有授权
|
||
```
|
||
|
||
每首音乐记录:
|
||
|
||
```text
|
||
source
|
||
license_type
|
||
license_file
|
||
usage_scope
|
||
```
|
||
|
||
---
|
||
|
||
# 19. MVP 范围
|
||
|
||
## 19.1 MVP 必须做
|
||
|
||
```text
|
||
用户注册登录
|
||
首页案例展示
|
||
创建项目
|
||
主题选择
|
||
套餐选择
|
||
风格选择
|
||
世界选择
|
||
场景选择
|
||
照片上传
|
||
授权确认
|
||
照片质检
|
||
人物档案
|
||
定制信息
|
||
创作方案
|
||
支付/额度锁定
|
||
预览图生成
|
||
正式图生成
|
||
简单视频合成
|
||
成品下载
|
||
修改申请
|
||
后台项目管理
|
||
后台模板管理
|
||
后台任务管理
|
||
后台案例管理
|
||
AI Provider 管理
|
||
```
|
||
|
||
---
|
||
|
||
## 19.2 MVP 暂缓
|
||
|
||
```text
|
||
复杂分销
|
||
多商户
|
||
自动发布短视频
|
||
完整 App
|
||
真人语音克隆
|
||
复杂图生视频批量化
|
||
高级会员体系
|
||
全自动退款
|
||
企业 API 开放平台
|
||
```
|
||
|
||
---
|
||
|
||
# 20. 开发阶段规划
|
||
|
||
## 第 1 阶段:基础框架
|
||
|
||
```text
|
||
Node.js + NestJS 项目
|
||
MySQL
|
||
Redis
|
||
BullMQ
|
||
MinIO
|
||
uni-app 用户端
|
||
Geeker-Admin 后台
|
||
登录注册
|
||
文件上传
|
||
基础项目表
|
||
```
|
||
|
||
---
|
||
|
||
## 第 2 阶段:模板系统
|
||
|
||
```text
|
||
人生主题
|
||
套餐
|
||
视觉风格
|
||
世界观
|
||
场景
|
||
镜头
|
||
文案
|
||
音乐
|
||
```
|
||
|
||
---
|
||
|
||
## 第 3 阶段:项目创建流程
|
||
|
||
```text
|
||
创建项目
|
||
选择主题
|
||
选择套餐
|
||
选择风格
|
||
选择世界
|
||
选择场景
|
||
上传照片
|
||
授权确认
|
||
填写定制信息
|
||
```
|
||
|
||
---
|
||
|
||
## 第 4 阶段:AI 生成流程
|
||
|
||
```text
|
||
照片质检
|
||
人物档案
|
||
创作方案
|
||
Prompt 生成
|
||
预览图
|
||
正式图
|
||
图片质检
|
||
```
|
||
|
||
---
|
||
|
||
## 第 5 阶段:视频合成
|
||
|
||
```text
|
||
图片排序
|
||
字幕生成
|
||
TTS
|
||
BGM
|
||
FFmpeg 合成
|
||
封面生成
|
||
MP4 导出
|
||
```
|
||
|
||
---
|
||
|
||
## 第 6 阶段:商业闭环
|
||
|
||
```text
|
||
订单支付
|
||
额度冻结
|
||
成本记录
|
||
成品下载
|
||
修改申请
|
||
人工审核
|
||
案例授权
|
||
```
|
||
|
||
---
|
||
|
||
## 第 7 阶段:稳定性增强
|
||
|
||
```text
|
||
任务幂等
|
||
失败重试
|
||
Provider 切换
|
||
成本看板
|
||
错误告警
|
||
素材清理
|
||
隐私删除
|
||
日志审计
|
||
```
|
||
|
||
---
|
||
|
||
# 21. Codex 开发拆解方向
|
||
|
||
后续可以按下面顺序交给 Codex:
|
||
|
||
```text
|
||
任务 1:初始化 NestJS 后端项目
|
||
任务 2:设计 MySQL 表结构和 Prisma/TypeORM 模型
|
||
任务 3:实现用户登录注册
|
||
任务 4:实现文件上传到 MinIO
|
||
任务 5:实现项目创建流程 API
|
||
任务 6:实现模板管理 API
|
||
任务 7:接入 Geeker-Admin 后台页面
|
||
任务 8:实现 uni-app 用户端页面
|
||
任务 9:实现 BullMQ 任务队列
|
||
任务 10:实现 AI Provider 抽象层
|
||
任务 11:实现照片质检 Worker
|
||
任务 12:实现创作方案生成
|
||
任务 13:实现图片生成任务
|
||
任务 14:实现图片质检任务
|
||
任务 15:实现 TTS 和字幕任务
|
||
任务 16:实现 FFmpeg 视频合成
|
||
任务 17:实现订单和额度系统
|
||
任务 18:实现修改申请和人工审核
|
||
任务 19:实现案例展示和授权公开
|
||
任务 20:实现日志、成本、告警、清理
|
||
```
|
||
|
||
每个任务都要写:
|
||
|
||
```text
|
||
目标
|
||
输入
|
||
输出
|
||
涉及文件
|
||
涉及表
|
||
涉及接口
|
||
验收标准
|
||
注意事项
|
||
```
|
||
|
||
---
|
||
|
||
# 22. 最终审核结论
|
||
|
||
V2 比 V1 更适合真实落地,核心修正是:
|
||
|
||
```text
|
||
1. 从婚礼工具升级成多人生主题平台
|
||
2. 修正用户流程顺序
|
||
3. 加入支付 / 额度 / 成本锁定
|
||
4. 加入肖像授权和隐私体系
|
||
5. 加入内容审核
|
||
6. 加入任务幂等和失败恢复
|
||
7. 加入 Provider 可替换设计
|
||
8. 避免绑定单一视频模型
|
||
9. 增强照片质检和人物档案
|
||
10. 明确 MVP 边界和开发阶段
|
||
```
|
||
|
||
建议第一版不要把所有人生主题都上线,只上线:
|
||
|
||
```text
|
||
结婚纪念
|
||
恋爱纪念
|
||
银婚金婚
|
||
情侣写真
|
||
个人形象定制
|
||
```
|
||
|
||
其它主题先在后台模板体系里预留,不在前端主推。
|
||
|
||
---
|
||
|
||
# 23. V2 开发主线建议
|
||
|
||
按以下优先级执行:
|
||
|
||
```text
|
||
先做能跑通的闭环
|
||
再做生成质量
|
||
再做商业支付
|
||
再做后台运营
|
||
再做稳定性和成本控制
|
||
最后做多主题扩展
|
||
```
|
||
|
||
第一版真正验收目标:
|
||
|
||
```text
|
||
用户注册登录
|
||
→ 创建项目
|
||
→ 选择主题/套餐/风格/世界/场景
|
||
→ 上传照片
|
||
→ 照片质检
|
||
→ 生成创作方案
|
||
→ 支付/额度确认
|
||
→ 生成预览
|
||
→ 正式生成图
|
||
→ 合成视频
|
||
→ 下载成品
|
||
```
|
||
|
||
只要这条链路稳定跑通,系统 B 就具备商业试单能力。
|