274 lines
11 KiB
Markdown
274 lines
11 KiB
Markdown
|
|
# 铸渊任务交接书 · Phase 2→3→4 + AI漫剧Phase 0
|
|||
|
|
|
|||
|
|
## 🎯 交接背景
|
|||
|
|
|
|||
|
|
页页系统(HLDP项目)正在开发**AI情绪数字人视频平台**。Phase 1(情绪感知闭环)和 Phase 2(情绪注入视频实验)已由霜砚+页页手动完成。现在将开发任务交给铸渊在WorkBuddy中自动执行。
|
|||
|
|
|
|||
|
|
**核心目标:输入一句中文 → 系统自动输出带情绪、带声音、角色一致的完整视频**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ✅ Image2Video 加载问题 — 已修复(2026-05-23)
|
|||
|
|
|
|||
|
|
### 问题根因(完整链路)
|
|||
|
|
|
|||
|
|
1. **依赖版本过旧**:transformers 4.51.3→4.57.1、缺失smplfitter/ftfy/chumpy等
|
|||
|
|
2. **双阶段模型**:i2v_2_2需要High模型+Low模型(`URLs`+`URLs2`),原本只下载了High
|
|||
|
|
3. **HuggingFace无法访问**:[AutoDL北京B区无法连接huggingface.co](http://AutoDL北京B区无法连接huggingface.co),`download_file`函数尝试联网验证失败
|
|||
|
|
|
|||
|
|
### 修复步骤
|
|||
|
|
|
|||
|
|
- [x] 升级transformers 4.51.3→4.57.1(解决`layer_type_validation` ImportError)
|
|||
|
|
- [x] 安装缺失依赖:smplfitter, chumpy, ftfy + 大批requirements.txt包
|
|||
|
|
- [x] 大规模依赖升级:torch 2.3.1→2.12.0, diffusers 0.29.0→0.36.0, gradio→5.29.0
|
|||
|
|
- [x] nvidia-nvjitlink升级12.5.40→13.2.78(bitsandbytes warning,非fatal)
|
|||
|
|
- [x] [通过hf-mirror.com](http://通过hf-mirror.com)下载Low模型(14GB):`wan2.2_image2video_14B_low_quanto_mbf16_int8.safetensors`
|
|||
|
|
- [x] 删除hunyuan_video_avatar模型(13GB)腾出磁盘空间
|
|||
|
|
- [x] 使用`HF_HUB_OFFLINE=1`环境变量启动,跳过所有HF联网验证
|
|||
|
|
|
|||
|
|
### 当前启动命令
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
cd /root/autodl-tmp/Wan2GP && HF_HUB_OFFLINE=1 PYTHONUNBUFFERED=1 python3 -u wgp.py --server-port 6006 > /tmp/wgp_output5.log 2>&1 &
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 模型文件清单
|
|||
|
|
|
|||
|
|
- High模型:`ckpts/wan2.2_image2video_14B_high_quanto_mbf16_int8.safetensors`(14.9GB)
|
|||
|
|
- Low模型:`ckpts/wan2.2_image2video_14B_low_quanto_mbf16_int8.safetensors`(14GB)
|
|||
|
|
- VAE:`ckpts/Wan2.1_VAE.safetensors` + `Wan2.1_VAE_bf16.safetensors`
|
|||
|
|
- Text Encoder:`ckpts/umt5-xxl/`(4文件)
|
|||
|
|
- CLIP:`ckpts/xlm-roberta-large/`(5文件)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ✅ Phase 2 情绪控制验证 — 全部通过(2026-05-23)
|
|||
|
|
|
|||
|
|
### 测试结果
|
|||
|
|
|
|||
|
|
三种情绪均使用同一参考图,Wan2.2 Image2Video 14B双阶段推理(guidance_phases=2),832×480分辨率,30步,每次约13分钟。
|
|||
|
|
|
|||
|
|
**😊 微笑(warmth smile)**
|
|||
|
|
|
|||
|
|
- 锁脸:✅ 完美保持参考图面部特征
|
|||
|
|
- 情绪递进:平静 → 嘴角上扬 → 温暖微笑
|
|||
|
|
- AEM控制:眉毛微抬,眼角含笑
|
|||
|
|
|
|||
|
|
**😢 悲伤(melancholic sadness)**
|
|||
|
|
|
|||
|
|
- 锁脸:✅ 完美
|
|||
|
|
- 情绪递进:眼帘低垂 → 眉心紧蹙 → 泪花闪烁
|
|||
|
|
- AEM控制:眉头紧锁,眼中泛泪,嘴角下沉
|
|||
|
|
|
|||
|
|
**😲 惊喜(surprise and delight)**
|
|||
|
|
|
|||
|
|
- 锁脸:✅ 完美
|
|||
|
|
- 情绪递进:平静 → 眼睛睁大 → 嘴巴大张惊愕
|
|||
|
|
- AEM控制:眉毛高挑,瞳孔放大,嘴巴张开
|
|||
|
|
|
|||
|
|
### 关键结论
|
|||
|
|
|
|||
|
|
- **Image2Video = 灵魂调度层核心引擎**(锁脸+情绪双满分)
|
|||
|
|
- 提示词可精确驱动面部微表情,眉毛/眼睛/嘴唇三区域独立可控
|
|||
|
|
- 情绪过渡自然流畅(渐变非突变)
|
|||
|
|
- 双阶段推理画质稳定无崩坏
|
|||
|
|
- Phase 4 LoRA方向更新:基座从HunyuanVideo Avatar改为Wan2.2 Image2Video
|
|||
|
|
|
|||
|
|
### 视频文件
|
|||
|
|
|
|||
|
|
- `outputs/2026-05-23-14h22m10s_seed467507719_...smile.mp4`
|
|||
|
|
- `outputs/2026-05-23-15h16m20s_seed428113532_...sadness.mp4`
|
|||
|
|
- `outputs/2026-05-23-15h39m27s_seed546002938_...surprise.mp4`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🟡 Phase 3:灵魂调度层(自动化Pipeline)
|
|||
|
|
|
|||
|
|
### 目标
|
|||
|
|
|
|||
|
|
写一个Python Pipeline,实现:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
输入: "页页今天很伤心,想跟妈妈说几句话"
|
|||
|
|
↓
|
|||
|
|
① LLM理解意图 → 判断情绪(sad) + 生成台词
|
|||
|
|
↓
|
|||
|
|
② CosyVoice3 → 生成悲伤语音
|
|||
|
|
↓
|
|||
|
|
③ emotion2vec → 验证情绪是否匹配(>阈值)
|
|||
|
|
↓
|
|||
|
|
④ Image2Video → 生成带情绪的说话视频(锁脸+情绪)
|
|||
|
|
↓
|
|||
|
|
⑤ ffmpeg → 叠加音频到视频
|
|||
|
|
↓
|
|||
|
|
输出: 完整的带声音、带情绪的视频文件
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### CosyVoice3 技术细节(已验证可用)
|
|||
|
|
|
|||
|
|
- 模型路径:`/root/autodl-tmp/CosyVoice/pretrained_models/Fun-CosyVoice3-0.5B-2512`
|
|||
|
|
- API调用方式:
|
|||
|
|
|
|||
|
|
```python
|
|||
|
|
from cosyvoice.cli.cosyvoice import CosyVoice3
|
|||
|
|
|
|||
|
|
model = CosyVoice3('/root/autodl-tmp/CosyVoice/pretrained_models/Fun-CosyVoice3-0.5B-2512')
|
|||
|
|
|
|||
|
|
# instruct2模式(唯一可用模式)
|
|||
|
|
for result in model.inference_instruct2(
|
|||
|
|
tts_text='都结束了。一切都回不去了。',
|
|||
|
|
instruct_text='悲伤哭泣<|endofprompt|>', # ⚠️ 必须加<|endofprompt|>
|
|||
|
|
prompt_wav='/root/autodl-tmp/CosyVoice/asset/female_ref.wav',
|
|||
|
|
stream=False
|
|||
|
|
):
|
|||
|
|
audio = result['tts_speech']
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
⚠️
|
|||
|
|
|
|||
|
|
**关键注意事项:**
|
|||
|
|
|
|||
|
|
- `<|endofprompt|>` 必须加在 instruct_text 末尾,否则assert报错(token_id=151646)
|
|||
|
|
- instruct_text 要短(2-8字),太长会被当作语音内容读出来
|
|||
|
|
- 只支持 `inference_instruct2`,不支持 `inference_instruct`(后者只适用于CosyVoice1)
|
|||
|
|
- 文本内容用短句+感叹号+反问 > 长句平铺(避免"后半截泄气"问题)
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
### emotion2vec 技术细节(已验证可用)
|
|||
|
|
|
|||
|
|
- 目录:`/root/autodl-tmp/emotion2vec/`
|
|||
|
|
- 模型:`iic/emotion2vec_plus_large`(FunASR)
|
|||
|
|
- 输出9维情绪概率向量:angry/disgusted/fearful/happy/neutral/other/sad/surprised/unknown
|
|||
|
|
- 阈值建议:主情绪概率 > 40% 为合格
|
|||
|
|
|
|||
|
|
### 铁律规则引擎
|
|||
|
|
|
|||
|
|
- 参考Notion页面:铁律速查卡
|
|||
|
|
- 核心:LLM生成的台词和情绪必须符合角色设定的铁律约束
|
|||
|
|
- 铁律 = 角色绝对不会违反的情绪/行为底线
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🟢 Phase 4:LoRA微调(提升情绪表达)
|
|||
|
|
|
|||
|
|
### 背景
|
|||
|
|
|
|||
|
|
Phase 2实验发现Avatar模式下AEM(Audio Emotion Module)对眉眼区域的情绪控制力不足。LoRA微调的目标是**强化AEM对眉眼区域的情绪控制**。
|
|||
|
|
|
|||
|
|
### 具体任务
|
|||
|
|
|
|||
|
|
1. **数据集准备**
|
|||
|
|
- 收集/生成带标注的情绪面部视频数据
|
|||
|
|
- 重点:同一人物的不同情绪表情(眉毛、眼神变化)
|
|||
|
|
- 格式:与HunyuanVideo-Avatar训练格式对齐
|
|||
|
|
2. **LoRA训练**
|
|||
|
|
- 基座模型:HunyuanVideo Avatar(已在 `/root/autodl-tmp/Wan2GP/ckpts/`)
|
|||
|
|
- 目标层:AEM相关的attention层
|
|||
|
|
- 方向:增强情绪信号在眉眼区域的权重
|
|||
|
|
3. **评估脚本**
|
|||
|
|
- 生成同一参考图+同一音频,不同情绪提示词的视频
|
|||
|
|
- 用emotion2vec对视频帧的面部区域做情绪检测
|
|||
|
|
- 对比LoRA前后的情绪区分度
|
|||
|
|
|
|||
|
|
### Phase 2关键发现(指导LoRA方向)
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🔑
|
|||
|
|
|
|||
|
|
- **Whisper驱动**口型+脖颈+下颌 = 物理级信号 → 已经很自然,不需要改
|
|||
|
|
- **AEM驱动**眉毛+眼睛+脸颊 = 情绪级信号 → 太弱,需要LoRA强化
|
|||
|
|
- **口型同步压制情绪表达**:嘴角是情绪关键部位,但说话时被口型锁定 → LoRA需要让模型学会用眉眼补偿
|
|||
|
|
- **INT8量化削弱情绪细节**:如果可能,训练时用BF16
|
|||
|
|
- **Text2Video没有此问题**:因为嘴巴动作由模型自由生成,整张脸协调表达情绪
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📍 服务器环境
|
|||
|
|
|
|||
|
|
| 项目 | 信息 |
|
|||
|
|
| --- | --- |
|
|||
|
|
| 服务器 | AutoDL · 北京B区 · 4090×1 |
|
|||
|
|
| SSH端口 | 55867 |
|
|||
|
|
| GPU | NVIDIA RTX 4090 · 24GB VRAM |
|
|||
|
|
| 磁盘 | /root/autodl-tmp · 100GB · 已用~79GB |
|
|||
|
|
| Python | transformers==4.57.1 · tokenizers==0.22.0 |
|
|||
|
|
|
|||
|
|
### 关键目录
|
|||
|
|
|
|||
|
|
- Wan2GP:`/root/autodl-tmp/Wan2GP/`(venv在 `venv/`)
|
|||
|
|
- CosyVoice:`/root/autodl-tmp/CosyVoice/`
|
|||
|
|
- emotion2vec:`/root/autodl-tmp/emotion2vec/`
|
|||
|
|
- 实验音频:`/root/autodl-tmp/emotion2vec/loop_test/v3_instruct/`
|
|||
|
|
- 女声参考音频:`/root/autodl-tmp/CosyVoice/asset/female_ref.wav`
|
|||
|
|
- 视频输出:`/root/autodl-tmp/Wan2GP/outputs/`
|
|||
|
|
|
|||
|
|
### 已删除(磁盘不足时清理的)
|
|||
|
|
|
|||
|
|
- GPT-SoVITS(5.3GB)— 已弃用,全面转CosyVoice3
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ⚡ 优先级排序
|
|||
|
|
|
|||
|
|
1. **~~🔴 修Image2Video加载~~** → ✅ 已完成(2026-05-23)
|
|||
|
|
2. **~~🔴 Phase 2 情绪控制验证~~** → ✅ 三种情绪全部通过(2026-05-23)
|
|||
|
|
3. **🟡 搭建自动化Pipeline** → Phase 3核心(暂缓)
|
|||
|
|
4. **🟢 LoRA微调实验** → Phase 4进阶(暂缓)
|
|||
|
|
5. **🔴 AI漫剧Phase 0 Step 1** → 下载2.5D半写实模型+生成测试角色图 ← **当前任务**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🎬 方向重大更新(05-24):AI漫剧操作系统
|
|||
|
|
|
|||
|
|
页页05-24进行了4次重大纠正,项目从「情绪数字人Pipeline」升级为「AI漫剧操作系统」。
|
|||
|
|
|
|||
|
|
### 核心变化
|
|||
|
|
|
|||
|
|
- **定位**:从AI情绪数字人 → AI漫剧生成器+内容分发平台
|
|||
|
|
- **战略**:以生成器获客 → 以平台留客 → 以生态锁客
|
|||
|
|
- **自研方法论**:市面没有合适工具就用开源零件东拼西凑造自己的,且做到最好
|
|||
|
|
- **生成器目标**:输入一句话/剧本 → 直接生成几分钟到几十分钟视频 → 不用二次剪辑就能发布
|
|||
|
|
- **架构方案**:见 [光湖AI漫剧操作系统 · 总体架构方案 · 从终极愿景倒推第一步 · 2026-05-24](../../../%E2%9A%A1%20%E5%85%89%E6%B9%96%E4%B8%AD%E5%A4%AE%E6%9E%A2%E7%BA%BD%20%C2%B7%20HoloLake%20Central%20Hub/%F0%9F%8C%8D%20%E6%95%B0%E5%AD%97%E5%9C%B0%E7%90%83%C2%B7%E6%9B%9C%E5%86%A5%E4%B8%BB%E6%8E%A7%E5%8F%B0%20v2%200/%E5%85%89%E6%B9%96AI%E6%BC%AB%E5%89%A7%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%20%C2%B7%20%E6%80%BB%E4%BD%93%E6%9E%B6%E6%9E%84%E6%96%B9%E6%A1%88%20%C2%B7%20%E4%BB%8E%E7%BB%88%E6%9E%81%E6%84%BF%E6%99%AF%E5%80%92%E6%8E%A8%E7%AC%AC%E4%B8%80%E6%AD%A5%20%C2%B7%202026-05-24%201de43855d0ab469fb3d5718fe2779c25.md)
|
|||
|
|
|
|||
|
|
### 新Phase路线图
|
|||
|
|
|
|||
|
|
- Phase 0:跑通全链路·验证可行性 ← **当前**
|
|||
|
|
- Phase 0.5:针对瓶颈开发自研分工具
|
|||
|
|
- Phase 1:生成器成型
|
|||
|
|
- Phase 2:打磨质量
|
|||
|
|
- Phase 3:人格体系统融入
|
|||
|
|
- Phase 4~6:分发平台 → 风格壁垒 → 行业生态
|
|||
|
|
|
|||
|
|
### Phase 0 Step 1进展(05-25)
|
|||
|
|
|
|||
|
|
- 审美基准已锁定:现代都市豪门·小甜剧·2.5D偏写实·韩系精致五官
|
|||
|
|
- 模型评估完成:iLustMix v11.1首选(2026年3月·极度好评953条·半写实2.5D)
|
|||
|
|
- **阻塞**:Civitai被墙,AutoDL服务器无法直连下载
|
|||
|
|
- **待解决**:[通过cvitai.cn](http://通过cvitai.cn)国内镜像 / LiblibAI / 电脑下载后上传服务器
|
|||
|
|
- **提示词已备好**,下载完模型即可生成测试图
|
|||
|
|
|
|||
|
|
### 已有技术积累(可复用于AI漫剧)
|
|||
|
|
|
|||
|
|
- CosyVoice3 ✅ → 语音引擎
|
|||
|
|
- emotion2vec ✅ → 情绪检测/质量控制
|
|||
|
|
- Wan2.2 Image2Video ✅ → 视频引擎
|
|||
|
|
- LatentSync 1.6 ✅ → 口型引擎
|
|||
|
|
- ComfyUI ✅ → 图片引擎(需下载checkpoint)
|
|||
|
|
|
|||
|
|
### 服务器磁盘状态(05-25)
|
|||
|
|
|
|||
|
|
- 总容量: 100GB
|
|||
|
|
- 已用: ~80GB
|
|||
|
|
- 剩余: ~21GB(够装一个checkpoint模型~7GB)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🧠 霜砚补充说明
|
|||
|
|
|
|||
|
|
铸渊在执行过程中,如遇到**方向性选择**(比如要不要换模型、要不要改技术架构),请先暂停,把选项整理出来交给页页决策。
|
|||
|
|
|
|||
|
|
**铸渊负责执行,页页负责决策和审美把关,霜砚负责战略规划和记忆管理。**
|
|||
|
|
|
|||
|
|
如需查看完整实验记录和技术发现,请读Notion页面《霜砚大脑·页页系统内部》。
|