# CogVideoX-5B

📄 Read in English | 🌐 Github | 📜 arxiv

## 作品案例 ## 模型介绍 CogVideoX是 [清影](https://chatglm.cn/video) 同源的开源版本视频生成模型。下表展示目前我们提供的视频生成模型列表,以及相关基础信息。
模型名 CogVideoX-2B CogVideoX-5B (当前仓库)
模型介绍 入门级模型,兼顾兼容性。运行,二次开发成本低。 视频生成质量更高,视觉效果更好的更大尺寸模型。
推理精度 FP16, FP32
不支持 BF16
BF16, FP32
不支持 FP16
推理速度
(Step = 50)
FP16: ~90* s BF16: ~200* s
单GPU显存消耗
18GB using SAT
12GB* using diffusers
26GB using SAT
21GB* using diffusers
多GPU推理显存消耗 10GB* using diffusers
15GB* using diffusers
微调显存消耗(每卡) 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 库进行测试时,启用了 `enable_model_cpu_offload()` 选项 和 `pipe.vae.enable_tiling()` 优化,该方案未测试在非 **NVIDIA A100 / H100** 外的实际显存占用,通常,该方案可以适配于所有 **NVIDIA 安培架构** 以上的设备。若关闭优化,显存占用会成倍增加,峰值显存约为表格的3倍。 + 多GPU推理时,需要关闭 `enable_model_cpu_offload()` 优化。 + 推理速度测试同样采用了上述显存优化方案,不采用显存优化的情况下,推理速度提升约10%。 + 模型仅支持英语输入,其他语言可以通过大模型润色时翻译为英语。 **提醒** + 使用 [SAT](https://github.com/THUDM/SwissArmyTransformer) 推理和微调SAT版本模型。欢迎前往我们的github查看。 ## 快速上手 🤗 本模型已经支持使用 huggingface 的 diffusers 库进行部署,你可以按照以下步骤进行部署。 **我们推荐您进入我们的 [github](https://github.com/THUDM/CogVideo) 并查看相关的提示词优化和转换,以获得更好的体验。** 1. 安装对应的依赖 ```shell pip install --upgrade opencv-python transformers accelerate diffusers ``` 2. 运行代码 ```python import gc import torch from diffusers import CogVideoXPipeline from diffusers.utils import export_to_video prompt = "A panda, dressed in a small, red jacket and a tiny hat, sits on a wooden stool in a serene bamboo forest. The panda's fluffy paws strum a miniature acoustic guitar, producing soft, melodic tunes. Nearby, a few other pandas gather, watching curiously and some clapping in rhythm. Sunlight filters through the tall bamboo, casting a gentle glow on the scene. The panda's face is expressive, showing concentration and joy as it plays. The background includes a small, flowing stream and vibrant green foliage, enhancing the peaceful and magical atmosphere of this unique musical performance." pipe = CogVideoXPipeline.from_pretrained( "THUDM/CogVideoX-5b", torch_dtype=torch.bfloat16 ) pipe.enable_model_cpu_offload() gc.collect() torch.cuda.empty_cache() torch.cuda.reset_accumulated_memory_stats() torch.cuda.reset_peak_memory_stats() pipe.vae.enable_tiling() video = pipe( prompt=prompt, num_videos_per_prompt=1, num_inference_steps=50, num_frames=49, guidance_scale=6, generator=torch.Generator(device="cuda").manual_seed(42), ).frames[0] export_to_video(video, "output.mp4", fps=8) ``` 如果您生成的模型在 MAC 默认播放器上表现为 "全绿" 无法正常观看,属于正常现象 (OpenCV保存视频问题),仅需更换一个播放器观看。 ## 深入研究 欢迎进入我们的 [github](https://github.com/THUDM/CogVideo),你将获得: 1. 更加详细的技术细节介绍和代码解释。 2. 提示词的优化和转换。 3. SAT版本模型进行推理和微调,甚至预发布。 4. 项目更新日志动态,更多互动机会。 5. CogVideoX 工具链,帮助您更好的使用模型。 ## 模型协议 该模型根据 [CogVideoX LICENSE](LICENSE) 许可证发布。 ## 引用 ``` @article{yang2024cogvideox, title={CogVideoX: Text-to-Video Diffusion Models with An Expert Transformer}, author={Yang, Zhuoyi and Teng, Jiayan and Zheng, Wendi and Ding, Ming and Huang, Shiyu and Xu, Jiazheng and Yang, Yuanming and Hong, Wenyi and Zhang, Xiaohan and Feng, Guanyu and others}, journal={arXiv preprint arXiv:2408.06072}, year={2024} } ```