Wan-AI/Wan2.2-TI2V-5B-Diffusers FP8 量化全指南

15次阅读
没有评论

一、基础介绍

Wan2.2-TI2V-5B 是阿里通义万相开源文生视频 + 图生视频二合一5B 参数视频生成模型,原生 Diffusers 格式适配 HuggingFace 生态,原生 FP16 单卡 4090 (24G) 勉强运行;FP8 量化可大幅降低显存占用、提速推理,画质损失极小,是低显存显卡首选方案AI快站。

  • 原生 FP16 总显存占用:20~24GB
  • FP8 E4M3FN 缩放量化后显存:12~16GB,16G 显卡可正常跑 720P 24fps 短视频
  • 支持分辨率:720P (1280×704/704×1280),默认生成 5 秒视频

二、FP8 版本模型构成(3 个必需文件)

1. 主 Transformer 模型(核心)

  • 原版:wan2.2_ti2v_5B_fp16.safetensors
  • FP8 量化版(社区 Kijai 出品最稳定):wan2.2_ti2v_5b_fp8_scaled.safetensors

2. 文本编码器(UMT5-XXL,官方推荐直接用 FP8

umt5_xxl_fp8_e4m3fn_scaled.safetensors

该文本编码器官方原生就提供 FP8 量化包,无需手动转量化,显存直接减半ComfyUI

3. VAE 解码器(无 FP8 版本,固定 FP16)

wan2.2_vae.safetensors

三、模型下载地址

方式 1:HuggingFace(境外)

  1. 主 FP8 模型:kijai/Wan2.2-TI2V-5B-FP8
  2. 文本编码器 FP8:Comfy-Org/Wan_2.2_ComfyUI_Repackaged
  3. VAE:Wan-AI/Wan2.2-TI2V-5B-Diffusers

方式 2:ModelScope(国内高速,推荐)

bash

运行

pip install modelscope
# 下载FP8主模型
python -m modelscope.hub.snapshot_download kijai/Wan2.2-TI2V-5B-FP8 --cache_dir ./models
# 下载FP8文本编码器
python -m modelscope.hub.snapshot_download Comfy-Org/Wan_2.2_ComfyUI_Repackaged --cache_dir ./models --pattern "umt5_xxl_fp8_e4m3fn_scaled.safetensors"
# 下载VAE
python -m modelscope.hub.snapshot_download Wan-AI/Wan2.2-TI2V-5B-Diffusers --cache_dir ./models --pattern "wan2.2_vae.safetensors"

四、两种主流部署方案

方案 A:Diffusers 原生 Python FP8 推理(纯代码调用)

环境依赖

bash

运行

pip install diffusers transformers torch accelerate safetensors torchao

FP8 推理核心代码(开启 TorchAO FP8 量化加载)

python

运行

import torch
from diffusers import Wan22TI2VPipeline
from torchao.quantization import quantize_, fp8_weight_only

device = "cuda"
# 加载FP8量化权重
pipe = Wan22TI2VPipeline.from_pretrained(
    "kijai/Wan2.2-TI2V-5B-FP8",
    text_encoder_pretrained_model_name_or_path="Comfy-Org/umt5_xxl_fp8_e4m3fn_scaled",
    vae_pretrained_model_name_or_path="Wan-AI/Wan2.2-TI2V-5B-Diffusers",
    torch_dtype=torch.float16,
    variant="fp8_scaled",
).to(device)

# 开启FP8权重量化加速
quantize_(pipe.transformer, fp8_weight_only())
pipe.enable_vae_slicing()  # 进一步省显存

# 文生视频
prompt = "城市街道下雨,行人撑伞,电影镜头"
video = pipe(
    prompt=prompt,
    height=704,
    width=1280,
    num_frames=120,  # 24fps*5s
    num_inference_steps=30
).frames[0]

# 保存视频
from diffusers.utils import export_to_video
export_to_video(video, "output_fp8.mp4", fps=24)

方案 B:ComfyUI 可视化部署(最常用,带工作流)

1. 文件夹放置路径

plaintext

ComfyUI/
├─ models/
│  ├─ diffusion_models/  # 放FP8主模型 wan2.2_ti2v_5b_fp8_scaled.safetensors
│  ├─ text_encoders/     # 放 umt5_xxl_fp8_e4m3fn_scaled.safetensors
│  └─ vae/               # 放 wan2.2_vae.safetensors

2. 加载官方工作流

更新 ComfyUI 到最新版 → 顶部菜单 WorkflowBrowse TemplatesVideo → 选择 Wan2.2 5B video generation,替换加载节点为 FP8 权重即可直接运行ComfyUI。

Wan-AI/Wan2.2-TI2V-5B-Diffusers FP8 量化全指南

ComfyUI标准工作流

五、显存 & 硬件适配参考

表格

显卡 FP16 原版 FP8 量化版 能否跑 720P 5s 视频
RTX 4090(24G) 流畅 极速
RTX 4080S(16G) 爆显存 稳定运行
RTX 3090/4070Ti(12G) 无法加载 可加载,需开启 CPU 卸载 ⚠️
RTX 3060/4060(8G) 不可用 必须分层卸载 ❌不推荐

六、手动将原版 FP16 转 FP8(自用量化)

使用torchao一键对原生 Wan2.2-TI2V-5B 权重做 FP8 E4M3FN 权重量化:

python

运行

from torchao.quantization import quantize_model, fp8_weight_only
from diffusers import Wan22TI2VPipeline

pipe = Wan22TI2VPipeline.from_pretrained("Wan-AI/Wan2.2-TI2V-5B-Diffusers", torch_dtype="fp16")
quantize_model(pipe.transformer, fp8_weight_only())
# 保存量化后模型
pipe.save_pretrained("./wan2.2_ti2v_5b_fp8")

七、常见问题

  1. FP8 报错 dtype 不支持:必须使用CUDA 12.1+、PyTorch 2.3+,老版本 PyTorch 无原生 FP8 算子
  2. 生成画面花屏:VAE 必须使用官方原版wan2.2_vae.safetensors,不要混用 14B 模型 VAE
  3. 速度很慢:开启enable_model_cpu_offload()enable_vae_slicing(),关闭不必要后台程序
正文完
可以使用微信扫码关注公众号(ID:xzluomor)
post-qrcode
 0
评论(没有评论)
验证码