Ascend-SACT/LightX2V
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

LightX2V+Wan2.2推理指导

二、模型简介

LightX2V 是一个先进的轻量级图像视频生成推理框架,专为提供高效、高性能的图像视频生成解决方案而设计。该统一平台集成了多种前沿的图像视频生成技术,支持文本生成视频(T2V)和图像生成视频(I2V),文本生图片(T2I),图像编辑(I2I)等多样化生成任务。X2V 表示将不同的输入模态(X,如文本或图像)转换为视觉输出(Vision)。

LightX2V推理数据流:

Image → CLIP + VAE → T5 Text → Scheduler (X-step loop)
   → [Step 0~n: high_noise_model] → [Step n+1~X: low_noise_model]
   → Each step: PreInfer → num_layers×(SelfAttn + CrossAttn + FFN) → PostInfer
   → VAE Decoder → RIFE → Video

二、准备运行环境

表 1 版本配套表

配套版本环境准备指导
Python3.11.6-
torch2.5.1-
mindiesd2.3.0-

注意:

  • 该模型也支持torch 2.5.1以上版本

2.1 获取CANN&MindIE安装包&环境准备

  • 设备支持 Atlas 800I/800T A2(8*64G)
  • 环境准备指导

2.2 CANN安装

# 增加软件包可执行权限,{version}表示软件版本号,{arch}表示CPU架构,{soc}表示昇腾AI处理器的版本。
chmod +x ./Ascend-cann-toolkit_{version}_linux-{arch}.run
chmod +x ./Ascend-cann-kernels-{soc}_{version}_linux.run
# 校验软件包安装文件的一致性和完整性
./Ascend-cann-toolkit_{version}_linux-{arch}.run --check
./Ascend-cann-kernels-{soc}_{version}_linux.run --check
# 安装
./Ascend-cann-toolkit_{version}_linux-{arch}.run --install
./Ascend-cann-kernels-{soc}_{version}_linux.run --install

# 设置环境变量
source /usr/local/Ascend/ascend-toolkit/set_env.sh
source /usr/local/Ascend/nnal/atb/set_env.sh

2.3 MindIE安装

# 增加软件包可执行权限,{version}表示软件版本号,{arch}表示CPU架构。
chmod +x ./Ascend-mindie_${version}_linux-${arch}.run
./Ascend-mindie_${version}_linux-${arch}.run --check

# 方式一:默认路径安装
./Ascend-mindie_${version}_linux-${arch}.run --install
# 设置环境变量
cd /usr/local/Ascend/mindie && source set_env.sh

# 方式二:指定路径安装
./Ascend-mindie_${version}_linux-${arch}.run --install-path=${AieInstallPath}
# 设置环境变量
cd ${AieInstallPath}/mindie && source set_env.sh

2.4 Torch_npu安装

下载 pytorch_v{pytorchversion}_py{pythonversion}.tar.gz

tar -xzvf pytorch_v{pytorchversion}_py{pythonversion}.tar.gz
# 解压后,会有whl包
pip install torch_npu-{pytorchversion}.xxxx.{arch}.whl

2.5 gcc、g++安装

# 若环境镜像中没有gcc、g++,请用户自行安装
yum install gcc
yum install g++

# 导入头文件路径
export CPLUS_INCLUDE_PATH=/usr/include/c++/12/:/usr/include/c++/12/aarch64-openEuler-linux/:$CPLUS_INCLUDE_PATH

注:若使用openeuler镜像,需要配置gcc、g++环境,否则会导致fatal error: 'stdio.h' file not found

2.6 源码编译安装mindiesd

更新torch_npu会导致与mindiesd版本不匹配的情况,需要重新源码编译安装mindiesd

git clone https://gitcode.com/Ascend/MindIE-SD.git && cd MindIE-SD     
python setup.py bdist_wheel 

cd dist 
pip install mindiesd-*.whl 

三、模型准备

3.1 github源码下载:

https://github.com/ModelTC/LightX2V

3.2 适配代码下载

重要说明:
NPU适配已于合入社区主干main分支,若使用最新代码则无需再下载适配代码进行覆盖

下载适配代码覆盖github源码中的相关代码

https://ai.gitcode.com/Ascend-SACT/LightX2V

3.3 安装所需依赖

pip install -r requirements.txt

3.4 权重下载

模型权重目录结构:

`-- wan2.2
    |-- Wan2.2_i2v_A14b
    |   |-- README.md
    |   |-- Wan2.1_VAE.pth
    |   |-- config.json
    |   |-- configuration.json
    |   |-- google
    |   |   `-- umt5-xxl
    |   |       |-- special_tokens_map.json
    |   |       |-- spiece.model
    |   |       |-- tokenizer.json
    |   |       `-- tokenizer_config.json
    |   |-- models_t5_umt5-xxl-enc-bf16.pth
    |   |-- wan2.2_i2v_A14b_high_noise_int8_lightx2v_4step.safetensors
    |   `-- wan2.2_i2v_A14b_low_noise_int8_lightx2v_4step.safetensors
    `-- rife
        `-- train_log
            `-- flownet.pkl

相关地址:

https://hf-mirror.com/Wan-AI/Wan2.2-I2V-A14B

https://hf-mirror.com/lightx2v/Wan2.2-Distill-Models/tree/main

https://www.dongaigc.com/p/hzwer/Practical-RIFE

模型链接
high_noise_model HF下载
low_noise_model HF下载
config.json HF下载
Wan2.1_VAE.pth HF下载
google/umt5-xxl HF下载
t5_umt5-xxl HF下载
rife HF下载

四、模型运行

重要说明:
NPU适配已于合入社区主干main分支,若使用最新代码则忽略4.1和4.2步骤
补充lightx2v_path和model_path路径:
vi scripts/wan22/distill/run_wan22_moe_i2v_distill_int8_4step_ulysses_npu.sh
然后执行:bash scripts/wan22/distill/run_wan22_moe_i2v_distill_int8_4step_ulysses_npu.sh

4.1 配置文件参数修改:

vi configs/wan22/wan_distill_moe_i2v_int8.json

4.2执行命令。默认双卡执行,可按需修改:

bash run_wan22_distill_moe_i2v_int8_ulysses.sh

声明

  • 本代码仓提到的数据集和模型仅作为示例,这些数据集和模型仅供您用于非商业目的,如您使用这些数据集和模型来完成示例,请您特别注意应遵守对应数据集和模型的License,如您因使用数据集或模型而产生侵权纠纷,华为不承担任何责任。
  • 如您在使用本代码仓的过程中,发现任何问题(包括但不限于功能问题、合规问题),请在本代码仓提交issue,我们将及时审视并解答。