超强的AI 视频生成模型!完全免费开源,生成质量极高!HunyuanVideo 模型

AI教程 2024-12-04

这是一个关于如何运行和使用 HunyuanVideo 视频生成模型的详细教程。下面是该模型的简介、依赖项安装、配置、推理步骤等内容,您可以根据需要进行相应操作。


HunyuanVideo概述

HunyuanVideo是一个基于PyTorch的视频生成模型,支持根据文本提示生成视频。该模型需要较高的GPU内存,特别是在高分辨率和长时间的视频生成时。

模型要求

根据不同的分辨率,生成视频所需的GPU内存不同:

  • 720px x 1280px x 129帧:60GB GPU内存
  • 544px x 960px x 129帧:45GB GPU内存

推荐使用80GB内存的GPU,以获得更好的生成质量。

操作系统和硬件要求

  • 操作系统:Linux
  • GPU:NVIDIA CUDA支持的GPU(例如H800、H20系列GPU)

安装步骤

1. 克隆仓库

git clone https://github.com/tencent/HunyuanVideo
cd HunyuanVideo

2. 设置Conda环境

提供了environment.yml文件,您可以使用Conda来设置环境:

conda env create -f environment.yml
conda activate HunyuanVideo

3. 安装依赖

安装Python依赖:

python -m pip install -r requirements.txt

4. 安装加速库(需要CUDA 11.8或更高版本)

python -m pip install git+https://github.com/Dao-AILab/flash-attention.git@v2.5.9.post1

5. 使用Docker镜像(可选)

如果您希望使用Docker运行模型,可以使用以下命令:

# 下载Docker镜像
wget https://aivideo.hunyuan.tencent.com/download/HunyuanVideo/hunyuan_video_cu12.tar

# 导入镜像
docker load -i hunyuan_video.tar

# 查看镜像信息
docker image ls

# 运行Docker容器
docker run -itd --gpus all --init --net=host --uts=host --ipc=host --name hunyuanvideo --security-opt=seccomp=unconfined --ulimit=stack=67108864 --ulimit=memlock=-1 --privileged docker_image_tag

6. 下载预训练模型

下载预训练的模型文件,模型大小大约为26GB,您可以从HuggingFace或提供的下载链接获取。

# 下载MLLM文本编码器
cd HunyuanVideo/ckpts
huggingface-cli download xtuner/llava-llama-3-8b-v1_1-transformers --local-dir ./llava-llama-3-8b-v1_1-transformers

根据需求,您也可以下载CLIP模型:

# 下载CLIP文本编码器
cd HunyuanVideo/ckpts
huggingface-cli download openai/clip-vit-large-patch14 --local-dir ./text_encoder_2

7. 预处理文本编码器

将下载的文本编码器进行预处理,节省GPU内存:

cd HunyuanVideo
python hyvideo/utils/preprocess_text_encoder_tokenizer_utils.py --input_dir ckpts/llava-llama-3-8b-v1_1-transformers --output_dir ckpts/text_encoder

视频生成推理

支持的分辨率和时长配置:

  • 540p: 544px x 960px x 129f(适用于不同宽高比例)
  • 720p(推荐): 720px x 1280px x 129f(适用于不同宽高比例)

运行生成命令:

要生成视频,可以使用如下命令:

cd HunyuanVideo
python3 sample_video.py \
    --video-size 720 1280 \
    --video-length 129 \
    --infer-steps 50 \
    --prompt "A cat walks on the grass, realistic style." \
    --flow-reverse \
    --use-cpu-offload \
    --save-path ./results

配置参数说明:

参数 默认值 说明
--prompt None 视频生成的文字提示
--video-size 720 1280 生成视频的分辨率(宽 x 高)
--video-length 129 生成视频的帧数
--infer-steps 50 采样步数
--embedded-cfg-scale 6.0 嵌入式分类器的指导量表
--flow-shift 7.0 流匹配调度程序的移位因子
--flow-reverse False 是否反向生成,从t=1到t=0的学习/采样
--seed None 生成视频的随机种子(如果没有指定,则自动生成)
--use-cpu-offload False 是否使用CPU卸载以节省内存,适用于高分辨率视频生成
--save-path ./results 生成视频的保存路径

示例:

  • 生成一个720p分辨率的视频,时长为129帧,采样50步,生成一个猫走在草地上的视频:
python3 sample_video.py \
    --video-size 720 1280 \
    --video-length 129 \
    --infer-steps 50 \
    --prompt "A cat walks on the grass, realistic style." \
    --flow-reverse \
    --use-cpu-offload \
    --save-path ./results

GitHub和HuggingFace链接


注意事项

  • 高分辨率视频生成时,建议使用80GB以上的GPU内存
  • 生成视频的步骤与计算量较大,确保系统有足够的GPU资源
  • 不同的生成设置(如视频分辨率、时长、采样步数)会影响GPU内存的使用情况

通过这些步骤,您可以成功地设置并运行HunyuanVideo模型,生成高质量的视频内容。

©️版权声明:若无特殊声明,本站所有文章版权均归你好AIGC原创和所有,未经许可,任何个人、媒体、网站、团体不得转载、抄袭或以其他方式复制发表本站内容,或在非我站所属的服务器上建立镜像。否则,我站将依法保留追究相关法律责任的权利。

相关文章