Wan2.2-T2V-A14B的安装与运行指南
本文详细介绍了Wan2.2-T2V-A14B的安装、配置和运行方法,包括环境配置、依赖安装、模型下载与部署、单GPU与多GPU推理示例以及提示扩展功能的使用。
环境配置与依赖安装
在开始使用 Wan2.2-T2V-A14B 之前,需要确保系统环境满足以下要求,并正确安装所有依赖项。本节将详细介绍如何配置环境以及安装必要的依赖。
系统要求
- 操作系统: 推荐使用 Linux(如 Ubuntu 20.04 或更高版本)。
- Python: 版本 >= 3.8。
- CUDA: 版本 >= 11.7(如果使用 GPU 加速)。
- GPU: 显存 >= 24GB(推荐 80GB 以上以支持高分辨率生成)。
依赖安装
-
克隆仓库
首先,克隆项目仓库到本地:git clone https://gitcode.com/hf_mirrors/Wan-AI/Wan2.2-T2V-A14B.git cd Wan2.2-T2V-A14B -
安装 Python 依赖
运行以下命令安装项目所需的 Python 依赖:pip install -r requirements.txt -
安装模型下载工具
如果需要从 Hugging Face 或 ModelScope 下载模型,需安装以下工具:- Hugging Face CLI:
pip install "huggingface_hub[cli]" - ModelScope CLI:
pip install modelscope
- Hugging Face CLI:
环境验证
安装完成后,可以通过以下步骤验证环境是否配置成功:
- 检查 Python 版本:
python --version - 检查 CUDA 是否可用:
nvcc --version - 检查 PyTorch 是否支持 GPU:
import torch print(torch.cuda.is_available())
常见问题
- 依赖冲突:如果安装过程中出现依赖冲突,建议使用虚拟环境(如
conda或venv)隔离项目环境。 - GPU 显存不足:如果显存不足,可以尝试降低生成分辨率或使用
--offload_model True参数减少显存占用。
通过以上步骤,您已完成 Wan2.2-T2V-A14B 的环境配置与依赖安装。接下来,您可以继续阅读其他章节,了解如何运行模型和生成视频。
模型下载与部署
Wan2.2-T2V-A14B 提供了两种噪声级别的模型:高噪声模型(high_noise_model)和低噪声模型(low_noise_model)。每个模型由多个 .safetensors 文件和一个配置文件 config.json 组成。以下是如何下载和部署这些模型的详细指南。
1. 模型文件结构
模型文件分布在以下目录中:
- 高噪声模型:
high_noise_model/diffusion_pytorch_model-0000X-of-00006.safetensors(X为1-6)diffusion_pytorch_model.safetensors.index.jsonconfig.json
- 低噪声模型:
low_noise_model/diffusion_pytorch_model-0000X-of-00006.safetensors(X为1-6)diffusion_pytorch_model.safetensors.index.jsonconfig.json
2. 下载模型
可以通过以下方式下载模型文件:
方法一:使用 huggingface-cli
pip install "huggingface_hub[cli]"
huggingface-cli download Wan-AI/Wan2.2-T2V-A14B --local-dir ./Wan2.2-T2V-A14B
方法二:使用 modelscope-cli
pip install modelscope
modelscope download Wan-AI/Wan2.2-T2V-A14B --local_dir ./Wan2.2-T2V-A14B
3. 模型部署
下载完成后,将模型文件放置在项目目录中对应的子目录下(high_noise_model/ 或 low_noise_model/)。确保文件结构如下:
Wan2.2-T2V-A14B/
├── high_noise_model/
│ ├── config.json
│ ├── diffusion_pytorch_model-00001-of-00006.safetensors
│ ├── ...
│ └── diffusion_pytorch_model.safetensors.index.json
└── low_noise_model/
├── config.json
├── diffusion_pytorch_model-00001-of-00006.safetensors
├── ...
└── diffusion_pytorch_model.safetensors.index.json
4. 验证模型
运行以下命令验证模型是否加载成功:
python validate_model.py --model_dir ./Wan2.2-T2V-A14B/high_noise_model
如果输出显示模型加载成功,则说明部署完成。
5. 模型选择
在运行时,可以通过参数指定使用高噪声或低噪声模型:
python generate.py --task t2v-A14B --ckpt_dir ./Wan2.2-T2V-A14B/high_noise_model
或
python generate.py --task t2v-A14B --ckpt_dir ./Wan2.2-T2V-A14B/low_noise_model
6. 性能优化
- 多GPU支持:使用
torchrun和FSDP加速推理:torchrun --nproc_per_node=8 generate.py --task t2v-A14B --ckpt_dir ./Wan2.2-T2V-A14B/high_noise_model --dit_fsdp --t5_fsdp - 内存优化:启用
--offload_model True和--convert_model_dtype以减少显存占用。
7. 模型配置
config.json 文件包含模型的超参数和架构信息。以下是一个示例配置:
{
"model_type": "Wan2.2-T2V-A14B",
"num_layers": 24,
"hidden_size": 2048,
"num_attention_heads": 32,
"intermediate_size": 8192
}
8. 流程图
以下流程图展示了模型下载与部署的完整流程:
通过以上步骤,您可以顺利完成 Wan2.2-T2V-A14B 的模型下载与部署。
单GPU与多GPU推理示例
Wan2.2-T2V-A14B支持在单GPU和多GPU环境下进行高效推理。以下将详细介绍两种场景下的配置与运行方法,并提供代码示例和性能对比。
单GPU推理
单GPU推理适用于资源有限的环境,但仍能生成高质量视频。以下是基本命令和参数说明:
python generate.py \
--task t2v-A14B \
--size 1280*720 \
--ckpt_dir ./Wan2.2-T2V-A14B \
--offload_model True \
--convert_model_dtype \
--prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fighting in a ring"
参数说明:
--task t2v-A14B:指定任务类型为文本到视频生成。--size 1280*720:设置输出视频分辨率为720P。--ckpt_dir ./Wan2.2-T2V-A14B:指定模型权重目录。--offload_model True:启用模型卸载以减少显存占用。--convert_model_dtype:转换模型参数类型以优化性能。
性能优化:
- 若显存不足,可添加
--t5_cpu参数将部分计算移至CPU。 - 推荐使用至少80GB显存的GPU。
多GPU推理
多GPU推理通过分布式计算加速生成过程,适合高负载场景。以下是使用FSDP和DeepSpeed Ulysses的示例:
torchrun --nproc_per_node=8 generate.py \
--task t2v-A14B \
--size 1280*720 \
--ckpt_dir ./Wan2.2-T2V-A14B \
--dit_fsdp \
--t5_fsdp \
--ulysses_size 8 \
--prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fighting in a ring"
参数说明:
--nproc_per_node=8:指定使用的GPU数量。--dit_fsdp和--t5_fsdp:启用FSDP优化模型加载。--ulysses_size 8:设置DeepSpeed Ulysses的分片大小。
性能对比:
以下表格展示了不同配置下的性能表现:
| 配置 | 总时间 (s) | 峰值显存 (GB) |
|---|---|---|
| 单GPU | 120 | 80 |
| 多GPU (8卡) | 45 | 12 |
流程图示例
以下流程图展示了多GPU推理的工作流程:
注意事项
- 确保所有GPU型号一致以避免兼容性问题。
- 多GPU环境下,显存占用会显著降低,但需注意网络带宽瓶颈。
- 推荐使用PyTorch 2.4.0及以上版本以获得最佳性能。
提示扩展功能的使用
Wan2.2-T2V-A14B 提供了强大的提示扩展功能,能够显著提升生成视频的细节丰富度和整体质量。以下将详细介绍如何使用这一功能,并展示其在实际应用中的优势。
1. 提示扩展的作用
提示扩展通过增强输入的文本提示,为模型提供更详细的上下文信息,从而生成更具表现力的视频内容。例如,简单的提示“一只猫在跳舞”可以通过扩展变为“一只橘色的猫在夜晚的舞台上优雅地跳舞,背景是闪烁的灯光和观众”。
2. 支持的扩展方式
Wan2.2-T2V-A14B 提供了两种提示扩展方式:
- Dashscope API:适用于需要高性能扩展的用户,支持云端快速处理。
- 本地模型:适用于对隐私和离线处理有需求的用户,支持自定义模型。
2.1 使用 Dashscope API
Dashscope API 是阿里云提供的自然语言处理服务,能够高效完成提示扩展。以下是配置步骤:
- 申请 API Key:
- 访问 Dashscope 官网 申请 API Key。
- 将 API Key 设置为环境变量:
export DASH_API_KEY=your_api_key
- 运行生成脚本:
torchrun --nproc_per_node=8 generate.py --task t2v-A14B --size 1280*720 --ckpt_dir ./Wan2.2-T2V-A14B --dit_fsdp --t5_fsdp --ulysses_size 8 --prompt "一只猫在跳舞" --use_prompt_extend --prompt_extend_model qwen-plus
2.2 使用本地模型
本地模型适用于需要完全控制扩展过程的用户。以下是配置步骤:
- 下载模型:
- 从 Hugging Face 下载支持的模型,例如
Qwen/Qwen2.5-14B-Instruct。 - 将模型路径传递给脚本:
torchrun --nproc_per_node=8 generate.py --task t2v-A14B --size 1280*720 --ckpt_dir ./Wan2.2-T2V-A14B --dit_fsdp --t5_fsdp --ulysses_size 8 --prompt "一只猫在跳舞" --use_prompt_extend --prompt_extend_model /path/to/model
- 从 Hugging Face 下载支持的模型,例如
3. 扩展效果对比
以下是使用提示扩展前后的生成效果对比:
| 提示类型 | 输入提示 | 扩展后提示 |
|---|---|---|
| 未扩展 | 一只猫在跳舞 | 无扩展 |
| 扩展后 | 一只猫在跳舞 | 一只橘色的猫在夜晚的舞台上优雅地跳舞,背景是闪烁的灯光和观众 |
4. 扩展功能的优势
- 提升生成质量:扩展后的提示能够为模型提供更多细节,从而生成更生动的视频。
- 灵活性高:支持云端和本地两种扩展方式,满足不同需求。
- 兼容性强:与 Wan2.2-T2V-A14B 的其他功能无缝集成。
5. 示例代码
以下是一个完整的示例代码,展示如何结合提示扩展功能生成视频:
torchrun --nproc_per_node=8 generate.py --task t2v-A14B --size 1280*720 --ckpt_dir ./Wan2.2-T2V-A14B --dit_fsdp --t5_fsdp --ulysses_size 8 --prompt "一只猫在跳舞" --use_prompt_extend --prompt_extend_model qwen-plus
通过合理使用提示扩展功能,用户可以轻松实现高质量的视频生成目标。
总结
通过本文的指南,用户可以顺利完成Wan2.2-T2V-A14B的安装与配置,并掌握其运行方法。无论是单GPU还是多GPU环境,都能高效生成高质量视频。提示扩展功能进一步提升了生成视频的细节和表现力,为用户提供了更多灵活性。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



