![图片[1]-超越Sora?阿里深夜发布WAN2.1开源AI视频大模型登顶榜首,文图生视频双杀!效果惊艳,ComfyUI安装教程!](https://www.mohe-sc.com/wp-content/uploads/2025/02/超越Sora?阿里深夜发布WAN2.1开源AI视频大模型登顶榜首,文图生视频双杀!效果惊艳,附ComfyUI安装教程!-1024x576.jpg)
就在两天前,2月25日晚,阿里巴巴开源了火爆业界的AI视频生成模型——万相2.1(Wan 2.1)。本次一共开源了4个模型,包括2个文生视频模型 Wan2.1-T2V-14B、Wan2.1-T2V-1.3B,以及2个图生视频模型 Wan2.1-I2V-14B-720P、Wan2.1-I2V-14B-480P。
现在在阿里云人工智能平台 PAI-Model Gallery 中,已经支持一键部署这4个最新的万相开源模型,可获得您的专属阿里万相服务。同时近期也会支持基于万相模型一键训练自己的专属 LoRA 模型,敬请期待~
本次开源的 Wan2.1 在处理复杂运动、还原真实物理规律、提升影视质感以及优化指令遵循方面具有显著的优势,无论是创作者、开发者还是企业用户,都可以根据自己的需求选择合适的模型和功能,轻松实现高质量的视频生成。同时,万相还支持业内领先的中英文文字特效生成,满足广告、短视频等领域的创意需求。
在权威评测集 VBench 中,万相以总分86.22%的成绩登上榜首位置,大幅领先了 Sora、Minimax、Luma、Gen3、Pika 等国内外视频生成模型。
阿里发布Wan2.1(万相2.1) 的技术报告
Wan2.1 系列模型家族,为不同需求的用户提供了多样化的选择:
Wan2.1-I2V-14B: 图像到视频 (I2V) 领域的天花板! 140亿参数,720P高清画质,I2V 性能 SOTA!Wan2.1-T2V-14B: 文本到视频 (T2V) 领域的性能王者! 140亿参数,720P高清画质,T2V 性能 SOTA! 独家支持中英文文字生成!Wan2.1-T2V-1.3B: 消费级显卡的最佳拍档! 13亿参数,480P流畅运行,8GB显存即可畅玩! 性能媲美部分闭源大模型!
从技术报告来看 Wan2.1 的突破性进展,主要得益于以下几大创新:
核心创新一: 3D 变分自编码器 (VAE) —— 视频压缩与质量的完美平衡!
Wan2.1 团队创新性地提出了3D 因果 VAE 架构,专为视频生成量身打造! 它巧妙地融合了多种策略,在时空压缩、内存控制和时间因果性 之间找到了最佳平衡点,让 VAE更高效、更易扩展,并与扩散模型 DiT 完美结合!
长视频处理秘诀: 特征缓存机制 (Feature Cache Mechanism): 为了高效处理任意长度的视频,Wan2.1 的 VAE 在因果卷积模块中引入了特征缓存机制。 它将视频帧序列 (1+T 格式) 分割成 1 + T/4 个 chunks,每个 chunk 对应一个潜在特征。 模型以 chunk-wise 策略 处理视频,每次编解码操作只处理对应一个潜在表示的视频 chunk。 每个 chunk 的帧数被限制在 最多 4 帧,有效防止了 GPU 内存溢出!
性能飞跃: 速度提升 2.5 倍! 实验证明,Wan2.1 的视频 VAE 性能卓越,在视频质量和处理效率上都表现出色。 在相同的硬件环境 (单 A800 GPU) 下,Wan2.1 VAE 的 重建速度比 SOTA 方法 HunYuanVideo 快了 2.5 倍! 在高分辨率下,速度优势将更加明显!
核心创新二: 视频扩散 DiT (Diffusion Transformer) —— 强大生成力的源泉!
Wan2.1 基于主流扩散 Transformer 范式和 Flow Matching 框架构建了视频扩散模型 DiT。 它巧妙地利用了T5 Encoder来编码多语言文本,并通过在每个 Transformer Block 中加入 交叉注意力,将文本信息深度融入模型结构。
参数高效优化: 线性层 + SiLU 层 + 共享 MLP: Wan2.1 采用线性层和 SiLU 层处理时间 Embedding,并预测六个调制参数。 关键在于,一个共享的 MLP被所有 Transformer Block 共用,每个 Block 只学习不同的偏差 (biases)。 实验表明,这种方法在 参数规模不变的情况下,显著提升了模型性能! 因此,1.3B 和 14B 模型都采用了这种架构
核心创新三: 模型扩展与训练效率优化 —— 更大模型,更快速度
为了训练更大规模的 Wan2.1 模型,并提升训练和推理效率,团队采用了多种并行策略:
训练加速: FSDP + 上下文并行 (CP): 训练时,Wan2.1 使用FSDP (Fully Sharded Data Parallel) 进行模型分片,并结合上下文并行 (CP)。 FSDP group 和 CP group 相交而非嵌套。 在 FSDP 中,数据并行 (DP) size 等于 FSDP size 除以 CP size。 在满足内存和单 batch 延迟要求后,使用 DP 进行扩展
推理加速: 上下文并行 (CP): 推理时,为了减少单视频生成延迟,Wan2.1 选择上下文并行 (CP) 进行分布式加速。 对于 14B 等大型模型,模型分片 (FSDP)也是必需的。 考虑到视频序列通常较长,FSDP 比张量并行 (TP) 通信开销更小,并允许计算与通信重叠
并行策略细节: 2D 上下文并行: 训练和推理都采用相同的 2D 上下文并行策略: 机器间 (external layer) 使用 RingAttention,机器内 (intra-machine) 使用 Ulysses。 实验表明,在 Wan 14B 大模型上,使用 2D CP 和 FSDP 并行策略,DiT 实现了 近乎线性的加速!
核心创新四: Image-to-Video (I2V) —— 图像驱动,精准可控!
Wan2.1 在 Image-to-Video (I2V) 任务上也表现出色,实现了更强的 可控性。 其 I2V 的关键技术包括:
条件图像引导: 将 条件图像作为视频的第一帧,并与零填充帧沿时间轴拼接,形成引导帧 (guidance frames)
VAE 压缩条件信息: 使用 3D VAE 将引导帧压缩为 条件潜在表示 (condition latent representation)
二元掩码 (Binary Mask) 控制生成区域: 引入二元掩码,1 表示保留帧,0 表示需要生成的帧。 掩码的空间尺寸与条件潜在表示匹配,时间长度与目标视频相同。 掩码会被重塑为与 VAE 的时间步幅相对应的特定形状
融合机制: 将噪声潜在表示、条件潜在表示和重塑后的掩码沿通道轴拼接,输入到 DiT 模型中
I2V 专属投影层: 由于 I2V DiT 模型的输入通道数比 T2V 模型更多,因此增加了一个 额外的投影层,并用零值初始化。
CLIP 图像编码器 + MLP 全局上下文: 使用 CLIP 图像编码器** 提取条件图像的特征表示。 通过三层 MLP** 将特征投影为全局上下文 (global context),并通过解耦交叉注意力 (decoupled cross-attention)** 注入到 DiT 模型中
海量高质量数据集 —— 模型性能的基石!
为了训练出强大的 Wan2.1 模型,通义实验室构建了一个 规模庞大、质量极高的数据集,包含 15 亿个视频和 100 亿张图像! 数据来源包括 内部版权数据和公开数据
四步数据清洗流程: 为了从海量数据中筛选出 高质量、多样化 的数据,团队设计了 四步数据清洗流程,从 基本维度、视觉质量和运动质量 等方面对数据进行严格筛选,确保训练数据的纯净度和有效性。 (具体四步流程细节,期待官方技术报告的详细解读!)
Wan2.1的性能优势
- 卓越的生成质量:在 Vbench评测 中,14B参数的专业版本以总分86.22% 的成绩大幅超越国内外其他模型(如Sora、Luma、Pika等),稳居榜首。
- 支持消费级GPU:1.3B参数的极速版仅需8.2GB显存就能生成480P视频,可兼容几乎所有消费级GPU,约4分钟内在RTX 4090上生成5秒的480P视频。
- 多功能支持:支持文生视频、图生视频、视频编辑、文生图和视频生音频等多种任务,同时具备视觉特效和文字渲染能力,满足多场景创作需求。
- 高效的数据处理与架构优化:基于自研因果3D VAE和优化的训练策略,支持任意长度视频的高效编解码,显著降低推理内存占用,提升训练和推理效率。
Wan2.1的效果展示
- 复杂运动:擅长生成包含广泛肢体动作、复杂旋转、动态场景转换以及流畅镜头运动的逼真视频。
- 物理模拟:能生成准确模拟现实世界物理规律和逼真物体交互的视频。
- 影院级别画质:提供类似电影的视觉效果,具有丰富的纹理和多样化的风格化特效。
- 可控编辑:具备通用编辑模型,可通过图像或视频参考进行精确编辑。
Wan2.1的应用场景
- 影视制作与特效:生成复杂的动作场景、特效镜头或虚拟角色动画,减少拍摄成本和时间。
- 广告与营销:快速生成创意广告视频,根据产品特点或品牌调性生成个性化视频内容。
- 教育与培训:生成教育视频,如科学实验演示、历史场景重现或语言学习视频,增强学习体验。
- 游戏开发:用于生成游戏内的动画、过场视频或虚拟角色动作,提升游戏的视觉效果和沉浸感。
- 个人创作与社交媒体:帮助创作者快速生成创意视频,用于社交媒体分享、Vlog制作或个人项目展示。
快速入门
安装
克隆存储库:
git clone https://github.com/Wan-Video/Wan2.1.gitcd Wan2.1git clone https://github.com/Wan-Video/Wan2.1.git cd Wan2.1git clone https://github.com/Wan-Video/Wan2.1.git cd Wan2.1
安装依赖项:
# Ensure torch >= 2.4.0pip install -r requirements.txt# Ensure torch >= 2.4.0 pip install -r requirements.txt# Ensure 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 |
使用 huggingface-cli 下载模型:
pip install "huggingface_hub[cli]"huggingface-cli download Wan-AI/Wan2.1-T2V-14B --local-dir ./Wan2.1-T2V-14Bpip install "huggingface_hub[cli]" huggingface-cli download Wan-AI/Wan2.1-T2V-14B --local-dir ./Wan2.1-T2V-14Bpip install "huggingface_hub[cli]" huggingface-cli download Wan-AI/Wan2.1-T2V-14B --local-dir ./Wan2.1-T2V-14B
使用 modelscope-cli 下载模型:
pip install modelscopemodelscope download Wan-AI/Wan2.1-T2V-14B --local_dir ./Wan2.1-T2V-14Bpip install modelscope modelscope download Wan-AI/Wan2.1-T2V-14B --local_dir ./Wan2.1-T2V-14Bpip install modelscope modelscope download Wan-AI/Wan2.1-T2V-14B --local_dir ./Wan2.1-T2V-14B
运行文本到视频生成
此存储库支持两种文本到视频模型(1.3B 和 14B)和两种分辨率(480P 和 720P)。这些模型的参数和配置如下:
任务 | 分辨率 | Model | |
---|---|---|---|
480P | 720P | ||
t2v-14B | ✔️ | ✔️ | 广域网2.1-T2V-14B |
t2v-1.3B | ✔️ | ❌ | 广域网2.1-T2V-1.3B |
(1) 没有及时延期
为了便于实施,我们将从跳过提示扩展步骤的基本版本的推理过程开始。
- 单 GPU 推理
python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage."python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage."python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage."
如果您遇到 OOM(内存不足)问题,可以使用 --offload_model True
和 --t5_cpu
选项来减少 GPU 内存使用量。例如,在 RTX 4090 GPU 上:
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."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."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."
T2V-1.3B
型号,我们建议将参数 --sample_guide_scale 6
设置。--sample_shift 参数
可以根据性能在 8 到 12 的范围内进行调整。- 使用 FSDP + xDiT USP 的多 GPU 推理
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 "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage."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 "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage."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 "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage."
2) 使用提示扩展
扩展提示可以有效地丰富生成的视频中的细节,进一步提升视频质量。因此,我们建议启用提示扩展。我们提供以下两种提示扩展方式:
- 使用 Dashscope API 进行扩展。
- 提前申请
dashscope.api_key
(EN |CN)。 DASH_API_KEY
配置环境变量以指定 Dashscope API 密钥。对于阿里云国际站的用户,您还需要将环境变量DASH_API_URL
设置为 ‘https://dashscope-intl.aliyuncs.com/api/v1‘。有关更详细的说明,请参阅 dashscope 文档。- 将
qwen-plus
模型用于文本到视频任务,将qwen-vl-max
用于图像到视频任务。 - 您可以使用参数
--prompt_extend_model
修改用于扩展的模型。例如:
- 提前申请
DASH_API_KEY=your_key python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage" --use_prompt_extend --prompt_extend_method 'dashscope' --prompt_extend_target_lang 'ch'DASH_API_KEY=your_key python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage" --use_prompt_extend --prompt_extend_method 'dashscope' --prompt_extend_target_lang 'ch'DASH_API_KEY=your_key python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage" --use_prompt_extend --prompt_extend_method 'dashscope' --prompt_extend_target_lang 'ch'
使用本地模型进行扩展。
- 默认情况下,HuggingFace 上的 Qwen 模型用于此扩展。用户可以根据可用的 GPU 内存大小选择 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
等模型。 - 较大的模型通常提供更好的扩展结果,但需要更多的 GPU 内存。
- 您可以使用参数
--prompt_extend_model
修改用于扩展的模型,从而允许您指定本地模型路径或 Hugging Face 模型。例如:
python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage" --use_prompt_extend --prompt_extend_method 'local_qwen' --prompt_extend_target_lang 'ch'python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage" --use_prompt_extend --prompt_extend_method 'local_qwen' --prompt_extend_target_lang 'ch'python generate.py --task t2v-14B --size 1280*720 --ckpt_dir ./Wan2.1-T2V-14B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage" --use_prompt_extend --prompt_extend_method 'local_qwen' --prompt_extend_target_lang 'ch'
(3) 运行本地无线电
cd gradio# if one uses dashscope’s API for prompt extensionDASH_API_KEY=your_key python t2v_14B_singleGPU.py --prompt_extend_method 'dashscope' --ckpt_dir ./Wan2.1-T2V-14B# if one uses a local model for prompt extensionpython t2v_14B_singleGPU.py --prompt_extend_method 'local_qwen' --ckpt_dir ./Wan2.1-T2V-14Bcd gradio # if one uses dashscope’s API for prompt extension DASH_API_KEY=your_key python t2v_14B_singleGPU.py --prompt_extend_method 'dashscope' --ckpt_dir ./Wan2.1-T2V-14B # if one uses a local model for prompt extension python t2v_14B_singleGPU.py --prompt_extend_method 'local_qwen' --ckpt_dir ./Wan2.1-T2V-14Bcd gradio # if one uses dashscope’s API for prompt extension DASH_API_KEY=your_key python t2v_14B_singleGPU.py --prompt_extend_method 'dashscope' --ckpt_dir ./Wan2.1-T2V-14B # if one uses a local model for prompt extension python t2v_14B_singleGPU.py --prompt_extend_method 'local_qwen' --ckpt_dir ./Wan2.1-T2V-14B
请登录后查看评论内容