在 🤗 Huggingface Space 或 🤖 ModelScope Space 在线体验 CogVideoX-5B 模型
👋 加入我们的 <a href="https://github.com/zai-org/CogVideo/raw/v1.0/resources/WECHAT.md" target="_blank">微信</a> 和 <a href="https://discord.gg/dCGfUsagrD" target="_blank">Discord</a>
📍 前往 清影 和 API平台 体验更大规模的商业版视频生成模型。
2024/10/13: 成本更低,单卡4090可微调CogVideoX-5B
的微调框架cogvideox-factory已经推出,多种分辨率微调,欢迎使用。2024/10/10: 我们更新了我们的技术报告,请点击 这里
查看,附上了更多的训练细节和demo,关于demo,点击这里 查看。2024/10/09: 我们在飞书技术文档
公开CogVideoX微调指导,以进一步增加分发自由度,公开文档中所有示例可以完全复现2024/9/19: 我们开源 CogVideoX 系列图生视频模型 CogVideoX-5B-I2V
。该模型可以将一张图像作为背景输入,结合提示词一起生成视频,具有更强的可控性。
至此,CogVideoX系列模型已经支持文本生成视频,视频续写,图片生成视频三种任务。欢迎前往在线体验。2024/9/19: CogVideoX 训练过程中用于将视频数据转换为文本描述的 Caption
模型 CogVLM2-Caption
已经开源。欢迎前往下载并使用。2024/8/27: 我们开源 CogVideoX 系列更大的模型 CogVideoX-5B
。我们大幅度优化了模型的推理性能,推理门槛大幅降低,您可以在 GTX 1080TI 等早期显卡运行 CogVideoX-2B,在 RTX 3060
等桌面端甜品卡运行 CogVideoX-5B 模型。 请严格按照要求
更新安装依赖,推理代码请查看 cli_demo。同时,CogVideoX-2B 模型开源协议已经修改为Apache 2.0
协议。2024/8/6: 我们开源 3D Causal VAE,用于 CogVideoX-2B,可以几乎无损地重构视频。2024/8/6: 我们开源 CogVideoX 系列视频生成模型的第一个模型, CogVideoX-2B。2022/5/19: 我们开源了 CogVideo 视频生成模型(现在你可以在 CogVideo 分支中看到),这是首个开源的基于
Transformer 的大型文本生成视频模型,您可以访问 ICLR'23 论文 查看技术细节。跳转到指定部分:
在开始运行模型之前,请参考 这里 查看我们是怎么使用GLM-4(或者同级别的其他产品,例如GPT-4) 大模型对模型进行优化的,这很重要, 由于模型是在长提示词下训练的,一个好的提示词直接影响了视频生成的质量。
查看sat文件夹下的 sat_demo:包含了 SAT 权重的推理代码和微调代码,推荐基于此代码进行 CogVideoX 模型结构的改进,研究者使用该代码可以更好的进行快速的迭代和开发。
pip install -r requirements.txt
查看diffusers_demo:包含对推理代码更详细的解释,包括各种关键的参数。
欲了解更多关于量化推理的细节,请参考 diffusers-torchao。使用 Diffusers 和 TorchAO,量化推理也是可能的,这可以实现内存高效的推理,并且在某些情况下编译后速度有所提升。有关在 A100 和 H100 上使用各种设置的内存和时间基准测试的完整列表,已发布在 diffusers-torchao 上。
查看画廊的对应提示词,请点击这里
CogVideoX是 清影 同源的开源版本视频生成模型。 下表展示我们提供的视频生成模型相关基础信息:
| 模型名 | CogVideoX-2B | CogVideoX-5B | CogVideoX-5B-I2V |
|---|---|---|---|
| 推理精度 | FP16*(推荐), BF16, FP32,FP8*,INT8,不支持INT4 | BF16(推荐), FP16, FP32,FP8*,INT8,不支持INT4 | |
| 单GPU显存消耗 | SAT FP16: 18GB diffusers FP16: 4GB起* diffusers INT8(torchao): 3.6G起* | SAT BF16: 26GB diffusers BF16 : 5GB起* diffusers INT8(torchao): 4.4G起* | |
| 多GPU推理显存消耗 | FP16: 10GB* using diffusers | BF16: 15GB* using diffusers | |
| 推理速度 (Step = 50, FP/BF16) | 单卡A100: ~90秒 单卡H100: ~45秒 | 单卡A100: ~180秒 单卡H100: ~90秒 | |
| 微调精度 | 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) | 78 GB (bs=1, LORA) 75GB (bs=1, SFT, 16GPU) |
| 提示词语言 | English* | ||
| 提示词长度上限 | 226 Tokens | ||
| 视频长度 | 6 秒 | ||
| 帧率 | 8 帧 / 秒 | ||
| 视频分辨率 | 720 * 480,不支持其他分辨率(含微调) | ||
| 位置编码 | 3d_sincos_pos_embed | 3d_sincos_pos_embed | 3d_rope_pos_embed + learnable_pos_embed |
| 下载链接 (Diffusers) | 🤗 HuggingFace 🤖 ModelScope 🟣 WiseModel | 🤗 HuggingFace 🤖 ModelScope 🟣 WiseModel | 🤗 HuggingFace 🤖 ModelScope 🟣 WiseModel |
| 下载链接 (SAT) | SAT |
数据解释
diffusers库自带的优化,该方案未测试在非NVIDIA A100 / H100
外的设备上的实际显存 / 内存占用。通常,该方案可以适配于所有 NVIDIA 安培架构
以上的设备。若关闭优化,显存占用会成倍增加,峰值显存约为表格的3倍。但速度提升3-4倍左右。你可以选择性的关闭部分优化,这些优化包括:pipe.enable_sequential_cpu_offload()
pipe.vae.enable_slicing()
pipe.vae.enable_tiling()
enable_sequential_cpu_offload() 优化。FP16 精度训练, 搜有 CogVideoX-5B 模型采用 BF16 精度训练。我们推荐使用模型训练的精度进行推理。torch.compile,这可以显著提高推理速度。在 NVIDIA H100
及以上设备上必须使用 FP8 精度,这需要源码安装 torch、torchao、diffusers 和 accelerate Python
包。建议使用 CUDA 12.4。diffusers版本模型支持量化。8 * H100 环境下进行测试,程序已经自动使用Zero 2 优化。表格中若有标注具体GPU数量则必须使用大于等于该数量的GPU进行微调。我们非常欢迎来自社区的贡献,并积极的贡献开源社区。以下作品已经对CogVideoX进行了适配,欢迎大家使用:
本开源仓库将带领开发者快速上手 CogVideoX 开源模型的基础调用方式、微调示例。
这里提供了三个能直接在免费的 Colab T4上 运行的项目
torch-nightly,torchao源代码安装,不建议在生产环境中使用。space demo: Huggingface Space同款的 GUI 代码,植入了插帧,超分工具。

convert_demo: 如何将用户的输入转换成适合 CogVideoX的长输入。因为CogVideoX是在长文本上训练的,所以我们需要把输入文本的分布通过LLM转换为和训练一致的长文本。脚本中默认使用GLM-4,也可以替换为GPT、Gemini等任意大语言模型。
$ claude mcp add CogVideo \
-- python -m otcore.mcp_server <graph>