基于 Diffusion Transformer (DiT),融合 Flow Matching 与 Mixture-of-Experts (MoE) 的新一代视频生成模型。
Wan2.2 是一个端到端的视频生成系统,它摒弃了传统的 U-Net,采用了 DiT 架构来处理视频的长序列 Token。 其参数量高达 27B,但得益于 MoE 稀疏激活机制,推理时显存占用仅相当于 14B 模型。
将文本、帧、蒙版统一编码。
Wan-VAE 实现 4×8×8 压缩率,信息压缩倍数达 256倍。
采用 umT5 编码器,原生支持中英双语提示词。
视频数据包含极高的冗余。Wan-VAE 通过 3D 卷积实现了时空维度的同时压缩。
->
Wan2.2 采用流匹配(Flow Matching),其生成轨迹是直线的(Optimal Transport Path),相比传统扩散模型的“随机行走”路径,效率更高,训练更稳定。
模型直接预测速度向量。
传统的扩散模型(DDPM)模拟的是随机微分方程(SDE),路径弯曲。Flow Matching 建立了一个从噪声到数据的确定性常微分方程 (ODE)。直线路径允许更大的步长(20-50 步)。
Wan2.2 的 MoE 不是用于扩大词表,而是专门用于去噪过程的时间维度。视频生成的早期(构图)和晚期(细节)需要截然不同的能力。
激活模型
高噪专家 (High Noise)
专注任务
全局布局与结构
全局布局与结构
| 组件 | 高噪专家 (High Noise) | 低噪专家 (Low Noise) |
|---|---|---|
| 激活条件 | 低 SNR (早期) | 高 SNR (后期) |
| 主要职责 | 生成大幅度运动、场景布局 | 生成纹理、光影细节 |
| 训练策略 | 从零开始训练 | 基于 Wan2.1 微调 |
以下代码展示了如何使用 Hugging Face `diffusers` 库来加载 Wan2.2 模型并生成视频。底层会自动处理 MoE 的权重切换。
import torch
from diffusers import WanPipeline
from diffusers.utils import export_to_video
# 1. 加载模型 (自动加载 MoE 权重)
# 以下代码展示了如何使用 Hugging Face `diffusers` 库来加载 Wan2.2 模型并生成视频。底层会自动处理 MoE 的权重切换。
pipe = WanPipeline.from_pretrained(
"Wan-AI/Wan2.2-T2V-A14B-Diffusers",
torch_dtype=torch.bfloat16
)
# 2. 开启显存优化 (Offload 到 CPU)
pipe.enable_model_cpu_offload()
# 3. 生成视频 (Flow Matching 仅需约 50 步)
prompt = "A cinematic drone shot of a futuristic city with flying cars, neon lights, 4k, high quality."
output = pipe(
prompt=prompt,
height=720,
width=1280,
num_inference_steps=50,
guidance_scale=5.0
).frames[0]
# 4. 保存结果
export_to_video(output, "wan_futuristic_city.mp4")