继今年2月阶跃星辰开源了两款 Step 系列多模态大模型Step-Video-T2V和Step-Audio之后,阶跃今天再次重磅开源图生视频模型Step-Video-TI2V。这是一款基于 30B 参数 Step-Video-T2V 训练的图生视频模型,支持生成 102 帧、5 秒、540P 分辨率的视频,具备运动幅度可控和镜头运动可控两大核心特点,同时天生具备一定的特效生成能力。

昇腾MindIE首发支持Step-Video-TI2V, 魔乐社区已上线该模型,欢迎广大开发者下载体验!

模型链接:

🔗 https://modelers.cn/models/MindIE/StepVideo-TI2V (MindIE版)

🔗 https://modelers.cn/models/StepFun/Step-Video-TI2V-NPU (Torch-npu版)

01 模型介绍

相比文生视频模型 Step-Video-T2V,此次开源的 Step-Video-TI2V 主要针对图生视频任务做了两大关键优化:一是引入图像条件,提高一致性;二是引入运动幅度控制,赋予用户更高自由度,平衡视频的动态性、稳定性和一致性。在VBench-I2V基准测试中,Step-Video-TI2V 取得了 state-of-the-art 级别的表现。

让我们来看一下Step-Video-TI2V模型的核心亮点吧!

1、支持控制视频的“运动幅度(motion)”,平衡图生视频内容的运动性和稳定性。

2、支持对多种运镜的理解,可以对生成视频中的镜头运动进行精准控制,生成大片级运镜效果。从基本的推拉摇移、升降,到各种复杂的电影级运镜效果都能驾驭。

3、由于训练数据的原因,Step-Video-TI2V在动漫类的视频生成任务上表现尤其优异,生成的视频,无论是动态表现还是画面细节,都非常自然。

4、支持多种尺寸图生视频,无论是横屏的宽阔视野,竖屏的沉浸体验,还是方屏的经典复古,都能轻松驾驭。

接下来,让我们深入了解Step-Video-TI2V的部署与推理实践。

02 准备运行环境

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

  • 设备支持 Atlas 800T A2(64G):支持的卡数最小为6 Atlas 800I A2(64G):支持的卡数最小为6

  • Atlas 800T A2(64G)/Atlas 800I A2(64G)  

    • https://www.hiascend.com/developer/download/community/result?module=pt+ie+cann&product=4&model=32

  • 环境准备指导

    • https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/80RC2alpha002/softwareinst/instg/instg_0001.html

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

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

03 下载权重

具体下载链接如下。

魔乐社区(享加速下载):

🔗 https://modelers.cn/models/StepFun/Step-Video-TI2V-npu-weight

HuggingFace:

🔗 https://huggingface.co/stepfun-ai/stepvideo-ti2v

04 StepVideo-TI2V使用

当前支持的分辨率:544x992、768x768

4.1 下载到本地

git clone https://modelers.cn/MindIE/Step-Video-TI2V.git

4.2 安装依赖​​​​​​​

cd StepVideo-TI2Vpip install -e .

安装xfuser:​​​​​​​

git clone -b 0.4.2 https://github.com/xdit-project/xDiT.gitbash patch.sh

4.3 性能测试

执行命令:

使用上一步下载的权重​​​​​​​

export model_dir='./stepvideo-ti2v/'export ALGO=1

四卡TP并行​​​​​​​

torchrun --nproc_per_node 4 run_parallel.py \--model_dir ${model_dir} \--height 554 \--width 992 \--num_frames 102 \--infer_steps 50  \--ulysses_degree 1 \--tensor_parallel_degree 4 \--use_cpu_offload \--prompt="笑起来"  \--first_image_path './assets/demo.png' \--save_path './results'

八卡TP并行​​​​​​​

torchrun --nproc_per_node 8 run_parallel.py \--model_dir ${model_dir} \--height 554 \--width 992 \--num_frames 102 \--infer_steps 50  \--ulysses_degree 1 \--tensor_parallel_degree 8 \--prompt="笑起来"  \--first_image_path './assets/demo.png' \--save_path './results'

参数说明:

  • ALGO: 为0表示默认FA算子;设置为1表示使用高性能FA算子

  • model_dir: 配置文件及权重路径。

  • height: 生成视频的高

  • weight: 生成视频的宽

  • num_frames: 视频帧数

  • infer_steps: 推理步数

  • ulysses_degree: ulysses并行度

  • tensor_parallel_degree: tp并行度

  • use_cpu_offload: 对DiT使用cpu-offload

  • prompt: 文本提示词

  • first_image_path: 用于生成视频的图片路径

  • save_path: 生成的视频的保存路径

05 模型推理性能结果参考

NPU端到端性能和GPU进行了对比,平均每卡的吞吐达到1.29x GPU A800。性能测试如下:

Image

欢迎体验

欢迎大家下载体验Step-Video-TI2V,也欢迎广大开发者在模型评论区留言交流!

更多推荐