想要一个“叫名字就出现”的专属角色、画风或者运镜,光靠提示词和参考图终究有限,还是得练 LoRA。这篇根据 RunComfy 的训练指南,整理一份用 Ostris AI Toolkit 在消费级显卡上微调 Wan 2.2 T2V 14B 的配方。
先想清楚练什么
- 角色 LoRA:10–30 张同一个人的高质量图或短片段,姿势、背景、光线尽量多样,别用重滤镜。caption 里放一个独特的触发词(比如
zxq-person),再写服装、光线、构图 - 风格 LoRA:10–40 张同一风格、不同题材的图,caption 里写风格词,不用逐个描述物体
- 运镜 LoRA:10–30 条 5 秒左右的片段,同一种运动、不同主体,caption 必须写运动关键词(如
orbit 180 around the subject)
按显存选档位
| 显存 | 显卡 | 能做什么 |
|---|---|---|
| 24GB | 4090 / 5090 / A6000 | 4-bit 量化 + Low VRAM;优先练图片 LoRA(帧数=1,512–768px);视频 LoRA 最多 33 帧@512,慢且吃紧 |
| 48–64GB | 双卡 4090 等 | 33–41 帧视频 LoRA @768–1024px,比较均衡 |
| 80GB 以上 | H100 / H200 | 1024²、81 帧长序列 |
帧数要符合 Wan 的 4n+1 规律(9、13、17、21、33、41、81)。24GB 建议从 33 帧起步,成本大约是 81 帧的一半,时序特征也够清楚。
起步参数(可以直接照抄)
- 模型:
Wan 2.2 T2V 14B,路径填ai-toolkit/Wan2.2-T2V-A14B-Diffusers-bf16 - 量化:Transformer 和 Text Encoder 都用 qfloat8,24GB 打开 Low VRAM
- LoRA Rank:32
- Batch Size 1,梯度累积 1
- 步数:运镜 LoRA 1500–2500,角色 / 风格 LoRA 2000–3000
- 优化器 AdamW8Bit,学习率 0.0001(不稳就降到 0.00005),Loss 用 MSE
- 数据集:24GB 只勾 512 分辨率;帧数 33;视频 LoRA 一般关掉 Cache Latents;别开翻转(会把左右运动搞反);Caption Dropout 0.05 左右
- 预览采样:FlowMatch,Guidance 4 左右,30 步
流程
- 装 Ostris AI Toolkit,UI 用
npm run build_and_start启动,默认在http://localhost:8675 - 准备数据集文件夹:图片或短片段,每个配一个同名
.txtcaption - 新建任务按上面填参数
- 每 250 步出一次预览。效果震荡就降学习率;过早就不再变化,就加步数,别加学习率
- 导出 LoRA,挂回 ComfyUI 的 Wan 工作流,用触发词验证
在 24GB 上别追 81 帧,把数据质量做好(干净、运动占满画面、去掉长时间静止的帧)比堆步数有用得多。卡不够的话可以租 H100 跑长序列,本地只做小步迭代。
提醒: 训练数据要是自有或者授权的素材。拿真人照片练角色 LoRA 有肖像权和深度合成合规风险,商用前一定要拿到授权。
大家练 Wan LoRA 有什么经验?欢迎补充参数。
整理自 RunComfy:Wan 2.2 T2V 14B LoRA Training with AI Toolkit | Text-to-Video