模型简介
模型特点
模型能力
使用案例
许可证:Apache-2.0
语言:
- 英文
- 中文
任务标签:文本生成视频
标签: - 视频生成
库名称:diffusers
万2.1
💜 万    |    🖥️ GitHub    |   🤗 Hugging Face   |   🤖 ModelScope   |    📑 论文(即将发布)    |    📑 博客    |   💬 微信群   |    📖 Discord  
在本仓库中,我们推出了万2.1,这是一套全面开放的视频基础模型,旨在突破视频生成的边界。万2.1具备以下核心特点:
- 👍 顶尖性能:万2.1在多项基准测试中持续超越现有开源模型及商业解决方案。
- 👍 支持消费级GPU:T2V-1.3B模型仅需8.19GB显存,兼容几乎所有消费级显卡。在RTX 4090上生成5秒480P视频约需4分钟(未使用量化等优化技术),性能媲美部分闭源模型。
- 👍 多任务支持:万2.1擅长文本生成视频、图像生成视频、视频编辑、文本生成图像及视频生成音频,推动视频生成领域发展。
- 👍 视觉文本生成:万2.1是首个支持中英双语文本生成的视频模型,其强大的文本生成能力显著提升了实际应用价值。
- 👍 高效视频VAE:万-VAE在编码解码任意长度的1080P视频时能保持时序信息,为视频与图像生成提供了理想基础。
本仓库重点展示T2V-14B模型,该模型在开源与闭源模型中均树立了新的性能标杆,擅长生成具有丰富动态的高质量画面,是唯一支持中英双语文本且兼容480P/720P双分辨率的视频模型。
视频演示
🔥 最新动态!
- 2025年2月22日:👋 发布万2.1推理代码与权重。
📑 待办清单
- 万2.1文本生成视频
- [x] 14B/1.3B模型多GPU推理代码
- [x] 14B/1.3B模型权重
- [x] Gradio演示
- [x] Diffusers集成
- [ ] ComfyUI集成
- 万2.1图像生成视频
- [x] 14B模型多GPU推理代码
- [x] 14B模型权重
- [x] Gradio演示
- [x] Diffusers集成
- [ ] ComfyUI集成
快速开始
安装
克隆仓库:
git clone https://github.com/Wan-Video/Wan2.1.git
cd Wan2.1
安装依赖:
# 确保torch >= 2.4.0
pip install -r requirements.txt
模型下载
模型 | 下载链接 | 备注 |
---|---|---|
T2V-14B | 🤗 Huggingface 🤖 ModelScope | 支持480P/720P双分辨率 |
I2V-14B-720P | 🤗 Huggingface 🤖 ModelScope | 支持720P |
I2V-14B-480P | 🤗 Huggingface 🤖 ModelScope | 支持480P |
T2V-1.3B | 🤗 Huggingface 🤖 ModelScope | 支持480P |
💡注意:1.3B模型理论上支持720P生成,但因该分辨率训练数据有限,效果稳定性不及480P,推荐优先使用480P分辨率。
通过🤗 huggingface-cli下载模型:
pip install "huggingface_hub[cli]"
huggingface-cli download Wan-AI/Wan2.1-T2V-14B-Diffusers --local-dir ./Wan2.1-T2V-14B-Diffusers
通过🤖 modelscope-cli下载模型:
pip install modelscope
modelscope download Wan-AI/Wan2.1-T2V-14B-Diffusers --local_dir ./Wan2.1-T2V-14B-Diffusers
运行文本生成视频
本仓库支持两种文本生成视频模型(1.3B/14B)和两种分辨率(480P/720P),参数配置如下:
任务 | 分辨率 | 模型 | |
---|---|---|---|
480P | 720P | ||
t2v-14B | ✔️ | ✔️ | Wan2.1-T2V-14B |
t2v-1.3B | ✔️ | ❌ | Wan2.1-T2V-1.3B |
(1) 基础版(无提示词扩展)
为简化流程,我们先展示跳过提示词扩展的基础推理版本。
- 单GPU推理
python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "两只拟人化猫咪穿着舒适拳击装备,戴着鲜艳手套,在聚光灯舞台上激烈搏斗。"
若遇显存不足,可通过--offload_model True
和--t5_cpu
降低显存占用。例如在RTX 4090上运行1.3B模型:
python generate.py --task t2v-1.3B --size 832*480 --ckpt_dir ./Wan2.1-T2V-1.3B --offload_model True --t5_cpu --sample_shift 8 --sample_guide_scale 6 --prompt "两只拟人化猫咪穿着舒适拳击装备,戴着鲜艳手套,在聚光灯舞台上激烈搏斗。"
💡注意:使用T2V-1.3B模型时建议设置
--sample_guide_scale 6
,--sample_shift
参数可在8-12间调整以平衡效果。
- 多GPU推理(FSDP + xDiT USP)
pip install "xfuser>=0.4.1"
torchrun --nproc_per_node=8 generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --dit_fsdp --t5_fsdp --ulysses_size 8 --prompt "两只拟人化猫咪穿着舒适拳击装备,戴着鲜艳手套,在聚光灯舞台上激烈搏斗。"
也可直接通过🤗 Diffusers调用万模型:
import torch
from diffusers import AutoencoderKLWan, WanPipeline
from diffusers.utils import export_to_video
# 可选模型: Wan-AI/Wan2.1-T2V-14B-Diffusers, Wan-AI/Wan2.1-T2V-1.3B-Diffusers
model_id = "Wan-AI/Wan2.1-T2V-14B-Diffusers"
vae = AutoencoderKLWan.from_pretrained(model_id, subfolder="vae", torch_dtype=torch.float32)
pipe = WanPipeline.from_pretrained(model_id, vae=vae, torch_dtype=torch.bfloat16)
pipe.to("cuda")
prompt = "一只猫在草地上行走,写实风格"
negative_prompt = "明亮色调、过曝、静态、模糊细节、字幕、风格化、作品、绘画、图片、静态、整体发灰、最差质量、低质量、JPEG压缩痕迹、丑陋、不完整、多余手指、手部绘制差、面部绘制差、变形、畸形、肢体扭曲、手指粘连、静止画面、背景杂乱、三条腿、背景多人、倒走"
output = pipe(
prompt=prompt,
negative_prompt=negative_prompt,
height=480,
width=832,
num_frames=81,
guidance_scale=5.0
).frames[0]
export_to_video(output, "output.mp4", fps=15)
(2) 启用提示词扩展
扩展提示词能有效丰富生成视频细节,显著提升质量,推荐启用。我们提供两种扩展方式:
- 使用Dashscope API扩展
- 提前申请
dashscope.api_key
(英文 | 中文)。 - 通过环境变量
DASH_API_KEY
配置API密钥。国际站用户需额外设置DASH_API_URL
为'https://dashscope-intl.aliyuncs.com/api/v1',详见dashscope文档。 - 文本生成视频任务使用
qwen-plus
模型,图像生成视频任务使用qwen-vl-max
。 - 可通过
--prompt_extend_model
参数修改扩展模型,例如:
- 提前申请
DASH_API_KEY=您的密钥 python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "两只拟人化猫咪穿着舒适拳击装备,戴着鲜艳手套,在聚光灯舞台上激烈搏斗" --use_prompt_extend --prompt_extend_method 'dashscope' --prompt_extend_target_lang 'ch'
- 使用本地模型扩展
- 默认使用HuggingFace上的Qwen模型,用户可根据显存选择。
- 文本生成视频推荐
Qwen/Qwen2.5-14B-Instruct
、Qwen/Qwen2.5-7B-Instruct
或Qwen/Qwen2.5-3B-Instruct
。 - 图像生成视频推荐
Qwen/Qwen2.5-VL-7B-Instruct
或Qwen/Qwen2.5-VL-3B-Instruct
。 - 模型越大扩展效果越好,但显存需求更高。
- 通过
--prompt_extend_model
可指定本地模型路径或Hugging Face模型,例如:
python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "两只拟人化猫咪穿着舒适拳击装备,戴着鲜艳手套,在聚光灯舞台上激烈搏斗" --use_prompt_extend --prompt_extend_method 'local_qwen' --prompt_extend_target_lang 'ch'
(3) 本地运行Gradio
cd gradio
# 使用Dashscope API扩展提示词
DASH_API_KEY=您的密钥 python t2v_14B_singleGPU.py --prompt_extend_method 'dashscope' --ckpt_dir ./Wan2.1-T2V-14B
# 使用本地模型扩展提示词
python t2v_14B_singleGPU.py --prompt_extend_method 'local_qwen' --ckpt_dir ./Wan2.1-T2V-14B
人工评估
经人工评估,启用提示词扩展后的生成效果优于闭源与开源模型。

不同GPU上的计算效率
下表测试了不同万2.1模型在不同显卡上的计算效率,结果格式为:总耗时(s)/峰值显存占用(GB)。

本表测试参数说明:
(1) 1.3B模型8卡测试设置--ring_size 8
和--ulysses_size 1
;
(2) 14B模型单卡测试启用--offload_model True
;
(3) 1.3B模型单卡4090测试设置--offload_model True --t5_cpu
;
(4) 所有测试均未启用提示词扩展(未设置--use_prompt_extend
)。
社区贡献
- DiffSynth-Studio为万提供了更多支持,包括视频生成视频、FP8量化、显存优化、LoRA训练等,详见示例。
万2.1技术解析
万2.1基于主流扩散Transformer架构,通过创新时空变分自编码器、可扩展训练策略、大规模数据构建及自动化评估体系,显著提升了生成能力与多场景适应性。
(1) 3D变分自编码器
我们提出新型3D因果VAE架构万-VAE,通过多策略改进时空压缩、降低内存占用并确保时序因果性。相比其他开源VAE,万-VAE在性能效率上优势显著,且能无损编解码任意长度1080P视频,完美适配视频生成需求。

(2) 视频扩散DiT
万2.1采用主流扩散Transformer框架下的Flow Matching设计。模型使用T5编码器处理多语言文本输入,通过交叉注意力将文本嵌入结构。创新性地采用共享MLP处理时间嵌入并预测六组调制参数,每层Transformer学习独立偏置,实验表明同参数量下性能显著提升。

模型 | 维度 | 输入维度 | 输出维度 | 前馈维度 | 频率维度 | 头数 | 层数 |
---|---|---|---|---|---|---|---|
1.3B | 1536 | 16 | 16 | 8960 | 256 | 12 | 30 |
14B | 5120 |



