概述
阿里云开源了其视频生成大模型Wan2.1(万相),采用了较为宽松的Apache2.0协议。
而这次对外了1.3B(极速版)和14B(专业版)两个参数规格的权重,及推理的全部代码。
这两种模型均支持文生视频(T2V)和图生视频(I2V)任务。
14B版本在权威评测集VBench中以86.22%总分超越Sora、Luma等国内外模型;1.3B版本可在消费级显卡运行(仅需8.2GB显存生成480P视频),适合二次开发和研究。
- 复杂运动生成:精准模拟人物旋转、跳跃、翻滚等动作,支持高级运镜控制
- 物理规律建模:真实还原碰撞、反弹、切割等场景,符合现实物理规则
- 中英文指令理解:支持长文本指令,实现场景切换、角色互动和多语言文字特效
技术原理
- 架构设计
- 因果
3D VAE:专为视频设计的变分自编码器,高效压缩时空信息并保持生成连贯性 - 视频
Diffusion Transformer(DiT):结合扩散模型和Transformer,逐步去噪生成视频,捕捉长时程依赖关系 - 分布式训练优化:采用
DP、FSDP、RingAttention等混合并行策略,加速训练与推理
- 因果
- 性能提升技术
- 引入插件式增强块(如
Enhance-A-Video),通过跨帧注意力调节提升时序一致性,减少画面模糊和跳帧问题
- 引入插件式增强块(如
本地部署
我电脑的环境:
python:3.10.9
CUDA:12.4
windows11
我们还是一如既往的先创建python虚拟环境,我这里使用的是python3自带的venv来搭建虚拟环境,当然咯,你也是可以使用anaconda或miniconda来创建虚拟环境。
python -m venv Wan2.1-env
cd Scripts
activate

随后,我们clone万相的推理代码。
git clone https://github.com/Wan-Video/Wan2.1.git
cd Wan2.1

项目依赖库安装
之后我们安装torch>=2.4.0,这是官方所要求的。
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu124

再者我们安装项目的requirements.txt依赖文件时,发现有flash-attention这个依赖,它可是可以加速推理的一个框架。
然而,它对windows可并那么友好啊。但是flash-attention社区还是有人编译出了windows的wheel,也省的我们自己去编译了。
为此,我特意将CUDA toolkit从12.1升级到12.4,关于这一点,是可以从我前几篇的文章看出来的。
https://github.com/kingbri1/flash-attention/releases

将下载下来的wheel直接通过pip install进行安装。
pip install flash_attn-2.7.4.post1+cu124torch2.6.0cxx11abiFALSE-cp310-cp310-win_amd64.whl

至此,我们再来执行以下命令,来完成安装项目所需的依赖库。
pip install -r requirements.txt

下载模型
我们通过modelscope来下载模型。
pip install modelscope

我这里下载的是Wan-AI/Wan2.1-T2V-1.3B,若你要下载14B的模型,只需将1.3B换成14B即可(前提是你电脑的硬件环境允许的条件下)。
modelscope download Wan-AI/Wan2.1-T2V-1.3B --local_dir ./Wan2.1-T2V-1.3B

| 模型 | 下载链接 | 备注 |
|---|---|---|
| T2V-14B | 🤗 Huggingface 🤖 ModelScope | 支持 480P 和 720P |
| I2V-14B-720P | 🤗 Huggingface 🤖 ModelScope | 支持 720P |
| I2V-14B-480P | 🤗 Huggingface 🤖 ModelScope | 支持 480P |
| T2V-1.3B | 🤗 Huggingface 🤖 ModelScope | 支持 480P |
运行 generate.py
先是使用官方的prompt,来生成视频。
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 "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage."

在命令行运行总是很不方便的,那么我们是可以运行官方提供的gradio。
cd gradio
python t2v_1.3B_singleGPU.py --prompt_extend_method 'local_qwen' --ckpt_dir ./Wan2.1-T2V-1.3B



2025-02-25 22:26:43 +0800 +0800
2025-02-23 21:26:43 +0800 +0800
2025-02-16 16:26:43 +0800 +0800
2025-02-03 20:26:43 +0800 +0800