一、 介绍
CogVideo 是一款在开源社区 GitHub 上备受瞩目的 AI 驱动视频生成解决方案,其核心技术依托于前沿的深度学习算法和模型架构。以下是对 CogVideo 的详细介绍:
1. 模型介绍
CogVideoX是 清影 同源的开源版本视频生成模型。
下表展示我们提供的视频生成模型相关基础信息:
模型名 | CogVideoX-2B | CogVideoX-5B |
---|---|---|
模型介绍 | 入门级模型,兼顾兼容性。运行,二次开发成本低。 | 视频生成质量更高,视觉效果更好的更大尺寸模型。 |
推理精度 | FP16*(推荐), BF16, FP32,FP8*(E4M3,E5M2),INT8,不支持INT4 | BF16(推荐), FP16, FP32,FP8*(E4M3,E5M2),INT8,不支持INT4 |
单GPU显存消耗 | FP16: 18GB using SAT / 12.5GB* using diffusers INT8: 7.8GB* using diffusers with torchao |
BF16: 26GB using SAT / 20.7GB* using diffusers INT8: 11.4GB* using diffusers with torchao |
多GPU推理显存消耗 | FP16: 10GB* using diffusers | BF16: 15GB* using diffusers |
推理速度 (Step = 50) |
FP16: ~90* s | BF16: ~180* s |
微调精度 | FP16 | BF16 |
微调显存消耗(每卡) | 47 GB (bs=1, LORA) 61 GB (bs=2, LORA) 62GB (bs=1, SFT) |
63 GB (bs=1, LORA) 80 GB (bs=2, LORA) 75GB (bs=1, SFT) |
提示词语言 | English* | |
提示词长度上限 | 226 Tokens | |
视频长度 | 6 秒 | |
帧率 | 8 帧 / 秒 | |
视频分辨率 | 720 * 480,不支持其他分辨率(含微调) | |
位置编码 | 3d_sincos_pos_embed | 3d_rope_pos_embed |
下载链接 (Diffusers) | 🤗 HuggingFace 🤖 ModelScope 🟣 WiseModel |
🤗 HuggingFace 🤖 ModelScope 🟣 WiseModel |
下载链接 (SAT) | SAT |
数据解释
- 使用 diffusers 库进行测试时,启用了
enable_model_cpu_offload()
选项 和pipe.vae.enable_tiling()
优化,该方案未测试在非NVIDIA A100 / H100 外的设备上的实际显存 / 内存占用。通常,该方案可以适配于所有 NVIDIA 安培架构以上的设备。若关闭优化,显存占用会成倍增加,峰值显存约为表格的3倍。 - 多GPU推理时,需要关闭
enable_model_cpu_offload()
优化。 - 使用 INT8 模型会导致推理速度降低,此举是为了满足显存较低的显卡能正常推理并保持较少的视频质量损失,推理速度大幅降低。
- 2B 模型采用
FP16
精度训练, 5B模型采用BF16
精度训练。我们推荐使用模型训练的精度进行推理。
- PytorchAO 和 Optimum-quanto可以用于量化文本编码器、Transformer 和 VAE 模块,以降低 CogVideoX 的内存需求。这使得在免费的 T4 Colab 或更小显存的 GPU上运行模型成为可能!同样值得注意的是,TorchAO 量化完全兼容
torch.compile
,这可以显著提高推理速度。在NVIDIA H100
及以上设备上必须使用FP8
精度,这需要源码安装torch
、torchao
、diffusers
和accelerate
Python包。建议使用CUDA 12.4
。
- 推理速度测试同样采用了上述显存优化方案,不采用显存优化的情况下,推理速度提升约10%。 只有
diffuse