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

一、介绍

本文档介绍在X86平台上,基于pytorch进行MOVA模型的推理指导。

二、MOVA模型介绍

MOVA(MOSS-Video-and-Audio),是由上海创智学院 OpenMOSS 团队联合初创公司模思智能(MOSI)在2026年1月29日发布的端到端音视频生成模型 。 技术报告详情请参见:刚刚,创智+模思发布开源版Sora2,电影级音视频同步生成,打破闭源技术垄断 开源代码仓:OpenMOSS/MOVA 作为中国首个高性能开源音视频模型,MOVA正意义上的「音画同出」。它不仅能生成长达 8 秒、最高 720p 分辨率的视听片段,实现了真更在多语言口型同步、环境音效契合度上展现了极高的工业水准。 在 MOVA 音视频大模型的研发进程中,华为昇腾技术团队提供了全栈算力支撑,涵盖了从数据管线(数据预处理、数据质量评估、数据标注)、预训练、LORA、推理验证的关键环节。 目前,MOVA 已成为昇腾首个支持的开源多模态音视频一体生成模型,微调与推理功能已同步上线社区。

1、MOVA模型架构

架构上,MOVA保留了传统的T5文本编码器、Audio VAE、Video VAE等组件,在视频上采用了 14B 参数的 Wan 2.2 I2V (MOE架构,包含一个14B的high noise DiT和一个14B的low noise DiT)作为视频骨干网络(用于图像 + 文本条件的 I2VA),并预训练了 1.3B 的文本到音频扩散模型作为音频骨干网络。为了实现模态融合与交互,在视频「塔」与音频「塔」之间,MOVA引入了一个双向桥接模块(Bridge),让视频与音频的隐藏状态在每一层都能进行深度的交叉注意力运算。

三、容器环境创建

1、设备规格

MOVA模型权重总计需占用大约67G显存(high-noise dit:26.96G,audio dit:2.64G,text encoder:10.58G,low-noise dit:26.70G),再加上视频生成长序列带来的cache开销,所需显存大幅超出昇腾910B 64G显存总量,所以推理服务采取了按需加载的策略:前期处理中加载high-noise dit和text encoder,后期进入low-noise计算时,将high-noise dit和text encoder从显存中卸载后再加载low-noise dit,以保证单卡可以完成模型加载和推理。 推荐8卡910B进行推理,单卡也可运行,512G系统内存。

2、拉取镜像

模型推理可直接拉取昇腾小巧灵团队提供的统一镜像(灵镜,支持30+主流模型的推理与训练): docker pull swr.cn-north-4.myhuaweicloud.com/ascend-sact/ascend-910b-ubuntu:v2.8

3、创建容器

执行如下命令创建容器: docker run -it -d --name ascend-910b-mova --rm \ --privileged \ --network host \ --device /dev/davinci_manager \ --device /dev/davinci0 \ --device /dev/davinci1 \ --device /dev/davinci2 \ --device /dev/davinci3 \ --device /dev/davinci4 \ --device /dev/davinci5 \ --device /dev/davinci6 \ --device /dev/davinci7 \ --device /dev/hisi_hdc \ --device /dev/devmm_svm \ -v /usr/local/dcmi:/usr/local/dcmi \ -v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \ -v /usr/local/Ascend/driver/tools/hccn_tool:/usr/local/Ascend/driver/tools/hccn_tool \ -v /usr/local/Ascend/driver/lib64:/usr/local/Ascend/driver/lib64 \ -v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info \ -v /data:/data \ swr.cn-north-4.myhuaweicloud.com/ascend-sact/ascend-910b-ubuntu:v2.8 \ bash

四、模型下载

1、模型下载

从huggingface 下载模型权重:模型权重根据需要推理生成的视频分辨率,分为360p 和720p两种。 hf download OpenMOSS-Team/MOVA-360p

hf download OpenMOSS-Team/MOVA-720p

2、MOVA代码下载

cd $PERSONAL_WORKSPACE git clone -b feat/npu https://github.com/OpenMOSS/MOVA.git && cd MOVA

五、模型推理

1、模型推理

模型推理以torchrun方式调用,具体命令已经封装到scripts/diffusers_example_XX.sh脚本中,可直接修改脚本中参数后,执行如下命令进行推理服务: cd ${PERSONAL_WORKSPACE}/MOVA/ && bash scripts/diffusers_example_1_360p.sh 文件命名中diffusers_example_1_360p.sh中的数字“1/2/4/8”代表参与推理运行的卡数,360p/720p代表生成视频的分辨率(对应权重也不同)

2、单卡推理

模型单卡推理可以直接调用scripts/目录下diffusers_example_1_360p.sh脚本。

3、8卡推理

模型推理可以直接调用scripts/目录下diffusers_example_8_360p.sh脚本。CP=8,每卡显存占用约48G(权重约34G)。

4、参数说明

推理脚本中包括如下参数:

参数描述默认值
nproc_per_node参与推理的npu卡的数量1/2/4/8/16
CP_SIZE长序列切分的分片数1/2/4/8
--height视频高度352
--width视频宽度640
--num_frames帧数193
--num_inference_steps去噪步数25
--seed随机种子42
prompt输入文件描述
ref_path参考图片路径
output_path输出视频文件路径

5、推理性能

在不同条件下生成 8 秒 视频的推理数据如下:

模式NPU 数量峰值 NPU VRAM(每 NPU)步骤时间 (s)
推理用例1 (360p & 单 NPU)1 × ascend910B≈46GB37.0
推理用例2 (360p & 4*NPU)4 × ascend910B≈42GB12.3
推理用例3 (360p & 8*NPU)8 × ascend910B≈42GB7.6
推理用例4 (720p & 8*NPU)8 × ascend910B≈47GB60.6
Accelerate + FSDP LoRA (360p & 8*NPU)8 × ascend910B≈39GB34.1