许可证: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视频时表现出色,同时保留时序信息,是视频与图像生成的理想基础。
本仓库包含我们的I2V-14B模型,可生成480P视频,具有生成速度快、质量优异的特点。
视频演示
🔥 最新动态!
- 2025年2月25日:👋 我们已发布万2.1的推理代码和权重。
📑 待办清单
- 万2.1文本生成视频
- [x] 14B和1.3B模型的多GPU推理代码
- [x] 14B和1.3B模型的检查点
- [x] Gradio演示
- [ ] Diffusers集成
- [ ] ComfyUI集成
- 万2.1图像生成视频
- [x] 14B模型的多GPU推理代码
- [x] 14B模型的检查点
- [x] Gradio演示
- [ ] Diffusers集成
- [ ] ComfyUI集成
快速开始
安装
克隆仓库:
git clone https://github.com/Wan-Video/Wan2.1.git
cd Wan2.1
安装依赖:
# 确保torch >= 2.4.0
pip install -r requirements.txt
模型下载
💡提示:1.3B模型可生成720P视频,但由于该分辨率训练数据有限,效果通常不如480P稳定。建议优先使用480P分辨率。
使用🤗 huggingface-cli下载模型:
pip install "huggingface_hub[cli]"
huggingface-cli download Wan-AI/Wan2.1-I2V-14B-480P --local-dir ./Wan2.1-I2V-14B-480P
使用🤖 modelscope-cli下载模型:
pip install modelscope
modelscope download Wan-AI/Wan2.1-I2V-14B-480P --local_dir ./Wan2.1-I2V-14B-480P
运行图像生成视频
与文本生成视频类似,图像生成视频也分为带提示扩展和不带提示扩展的流程。具体参数设置如下:
任务 |
分辨率 |
模型 |
480P |
720P |
i2v-14B |
❌ |
✔️ |
Wan2.1-I2V-14B-720P |
i2v-14B |
✔️ |
❌ |
Wan2.1-T2V-14B-480P |
(1) 不带提示扩展
python generate.py --task i2v-14B --size 832*480 --ckpt_dir ./Wan2.1-I2V-14B-480P --image examples/i2v_input.JPG --prompt "夏日海滩度假风格,一只戴太阳镜的白猫坐在冲浪板上。这只毛茸茸的猫咪以放松的表情直视镜头。模糊的海滩背景展现了清澈的海水、远处的青山和点缀着白云的蓝天。猫咪自然放松的姿态仿佛在享受海风和温暖的阳光。特写镜头突出了猫咪的细节和海边清爽的氛围。"
💡对于图像生成视频任务,size
参数代表生成视频的区域大小,宽高比遵循原始输入图像的比例。
- 使用FSDP + xDiT USP进行多GPU推理
pip install "xfuser>=0.4.1"
torchrun --nproc_per_node=8 generate.py --task i2v-14B --size 832*480 --ckpt_dir ./Wan2.1-I2V-14B-480P --image examples/i2v_input.JPG --dit_fsdp --t5_fsdp --ulysses_size 8 --prompt "夏日海滩度假风格,一只戴太阳镜的白猫坐在冲浪板上。这只毛茸茸的猫咪以放松的表情直视镜头。模糊的海滩背景展现了清澈的海水、远处的青山和点缀着白云的蓝天。猫咪自然放松的姿态仿佛在享受海风和温暖的阳光。特写镜头突出了猫咪的细节和海边清爽的氛围。"
(2) 使用提示扩展
使用本地模型Qwen/Qwen2.5-VL-7B-Instruct
运行提示扩展:
python generate.py --task i2v-14B --size 832*480 --ckpt_dir ./Wan2.1-I2V-14B-480P --image examples/i2v_input.JPG --use_prompt_extend --prompt_extend_model Qwen/Qwen2.5-VL-7B-Instruct --prompt "夏日海滩度假风格,一只戴太阳镜的白猫坐在冲浪板上。这只毛茸茸的猫咪以放松的表情直视镜头。模糊的海滩背景展现了清澈的海水、远处的青山和点缀着白云的蓝天。猫咪自然放松的姿态仿佛在享受海风和温暖的阳光。特写镜头突出了猫咪的细节和海边清爽的氛围。"
使用远程服务dashscope
运行提示扩展:
DASH_API_KEY=your_key python generate.py --task i2v-14B --size 832*480 --ckpt_dir ./Wan2.1-I2V-14B-480P --image examples/i2v_input.JPG --use_prompt_extend --prompt_extend_method 'dashscope' --prompt "夏日海滩度假风格,一只戴太阳镜的白猫坐在冲浪板上。这只毛茸茸的猫咪以放松的表情直视镜头。模糊的海滩背景展现了清澈的海水、远处的青山和点缀着白云的蓝天。猫咪自然放松的姿态仿佛在享受海风和温暖的阳光。特写镜头突出了猫咪的细节和海边清爽的氛围。"
(3) 运行本地Gradio
cd gradio
# 如果仅使用480P模型
DASH_API_KEY=your_key python i2v_14B_singleGPU.py --prompt_extend_method 'dashscope' --ckpt_dir_480p ./Wan2.1-I2V-14B-480P
# 如果仅使用720P模型
DASH_API_KEY=your_key python i2v_14B_singleGPU.py --prompt_extend_method 'dashscope' --ckpt_dir_720p ./Wan2.1-I2V-14B-720P
# 如果同时使用480P和720P模型
DASH_API_KEY=your_key python i2v_14B_singleGPU.py --prompt_extend_method 'dashscope' --ckpt_dir_480p ./Wan2.1-I2V-14B-480P --ckpt_dir_720p ./Wan2.1-I2V-14B-720P
人工评估
我们进行了广泛的人工评估以测试图像生成视频模型的性能,结果如下表所示。数据清晰表明万2.1在开源与闭源模型中均表现优异。
不同GPU上的计算效率
我们在下表中测试了不同万2.1模型在各种GPU上的计算效率,结果以**总耗时(秒)/峰值显存占用(GB)**的格式呈现。
本表测试的参数设置如下:
(1) 1.3B模型在8 GPU上运行时,设置--ring_size 8
和--ulysses_size 1
;
(2) 14B模型在1 GPU上运行时,启用--offload_model True
;
(3) 1.3B模型在单张4090显卡上运行时,设置--offload_model True --t5_cpu
;
(4) 所有测试均未启用提示扩展功能(即未设置--use_prompt_extend
)。
万2.1技术介绍
万2.1基于主流的扩散Transformer范式设计,通过一系列创新实现了生成能力的重大突破,包括新颖的时空变分自编码器(VAE)、可扩展的训练策略、大规模数据构建及自动化评估指标。这些贡献共同提升了模型的性能与多功能性。
(1) 3D变分自编码器
我们提出了一种专为视频生成设计的3D因果VAE架构——万-VAE。通过结合多种策略,我们优化了时空压缩效率,降低了内存占用,并确保了时间因果性。与其他开源VAE相比,万-VAE在性能效率上展现出显著优势。此外,万-VAE能够无损编解码任意长度的1080P视频,特别适合视频生成任务。
(2) 视频扩散DiT
万2.1采用主流扩散Transformer范式中的Flow Matching框架设计。模型架构使用T5编码器处理多语言文本输入,通过各Transformer块中的交叉注意力将文本嵌入模型结构。我们还采用包含线性层和SiLU层的MLP单独处理输入时间嵌入并预测六个调制参数。该MLP在所有Transformer块间共享,每个块学习独立的偏置集。实验表明,这种方法在相同参数规模下能显著提升性能。
模型 |
维度 |
输入维度 |
输出维度 |
前馈维度 |
频率维度 |
头数 |
层数 |
1.3B |
1536 |
16 |
16 |
8960 |
256 |
12 |
30 |
14B |
5120 |
16 |
16 |
13824 |
256 |
40 |
40 |
数据
我们整理并去重了包含海量图像和视频数据的候选集。在数据整理过程中,我们设计了四步数据清洗流程,重点关注基础维度、视觉质量与运动质量。通过这一鲁棒的数据处理流程,我们能轻松获取高质量、多样化且规模庞大的图像和视频训练集。

与SOTA对比
我们将万2.1与领先的开源和闭源模型进行对比评估。使用精心设计的1,035条内部提示词,我们在14个主维度和26个子维度上展开测试,随后根据人工偏好匹配得出的权重对各维度分数进行加权计算。详细结果如下表所示,这些数据证明了我们的模型在开源与闭源模型中均具备卓越性能。

引用
如果您觉得我们的工作有帮助,请引用我们。
@article{wan2.1,
title = {万:开放且先进的大规模视频生成模型},
author = {万团队},
journal = {},
year = {2025}
}
许可协议
本仓库中的模型遵循Apache 2.0许可证。我们对生成内容不主张任何权利,允许您自由使用,但需确保使用行为符合该许可证条款。您需对模型使用全权负责,禁止分享任何违反适用法律、伤害个人或群体、传播用于伤害的个人信息、散布虚假信息或针对弱势群体的内容。完整限制条款及权利详情请参阅许可证全文。
致谢
我们要感谢SD3、Qwen、umt5-xxl、diffusers和HuggingFace仓库的贡献者们对开放研究的支持。
联系我们
如果您想给我们的研究或产品团队留言,欢迎加入Discord或微信群!