HuggingFace镜像/CogVideoX-5B
模型介绍文件和版本分析
下载使用量0

CogVideoX-5B

📄 英文版本 | 🌐 Github | 📜 论文链接

📍 前往 清影 和 API平台 体验商业版视频生成模型

作品案例

一座花园焕发生机,万花筒般的蝴蝶在花丛中飞舞,它们 delicate 的翅膀在下方的花瓣上投下阴影。背景中,一座宏伟的喷泉以柔和的光彩倾泻而下,其富有节奏的声音提供了舒缓的背景音。在一棵成熟大树的凉爽树荫下,一把孤零零的木椅邀人独处沉思,其光滑的表面因无数寻求在大自然怀抱中片刻宁静的访客的触摸而磨损。
一个小男孩低着头,脸上带着坚定的神情,在倾盆大雨中奔跑,远处闪电噼啪作响,雷声隆隆。无情的雨水猛烈地冲击着地面,形成了一场混乱的水滴之舞,映照出戏剧性天空的愤怒。在遥远的背景中,一个舒适的家的轮廓在招手,在恶劣天气中像一座微弱的安全与温暖灯塔。这一幕展现了一个孩子在恶劣环境中勇敢前行的毅力和不屈精神。
一位身着宇航服的宇航员,靴子上沾满了火星的红色尘土,伸手与一个外星生物握手。这个外星生物有着 shimmering 的蓝色皮肤,他们站在这颗第四行星的粉色天空下。背景中,一艘 sleek 的银色火箭——人类智慧的灯塔——高高矗立,引擎已关闭。在火星 landscape 的荒凉美景中,两个不同世界的代表交换了历史性的问候。
一位 elderly 绅士,神情安详,坐在水边,身旁放着一杯冒着热气的茶。他全神贯注于自己的 artwork,手中拿着画笔,在一块靠在 small、weathered 桌子上的画布上绘制油画。海风轻拂着他的银发,轻轻吹动着他宽松的 white shirt,而咸咸的空气为他正在创作的 masterpiece 增添了一种无形的元素。这一幕充满了宁静与灵感,艺术家的画布捕捉了夕阳映照在 tranquil 海面上的 vibrant 色彩。
在一个光线 dimly 的酒吧里,紫色的灯光洒在一位成熟男子的脸上。特写镜头中,他的眼睛若有所思地眨着,背景被巧妙地模糊以聚焦于他内省的表情,酒吧的氛围仅仅是 shadows 和柔和灯光的暗示。
一只金毛寻回犬戴着 sleek 的黑色太阳镜,长长的毛发在微风中飘扬,在一个刚下过小雨的屋顶露台上 playful 地奔跑。场景从远处展开,随着它靠近镜头,狗的 energetic 跳跃动作变得越来越大,尾巴 unrestrained 地欢快摇摆,而水滴在它身后的 concrete 上闪闪发光。overcast 的天空提供了一个戏剧性的背景,突出了这只 canine 向观众冲来时 vibrant 的金色毛发。
在一个阳光 brilliant 的日子里,湖岸边排列着一排柳树,它们 slender 的枝条在微风中轻轻摇曳。平静的湖面倒映着 clear 的蓝天,几只优雅的天鹅在 still 的水中 gracefully 滑行,留下扰乱湖面 mirror-like 质感的 delicate 涟漪。这一幕是 serene 的 beauty,柳树的 greenery 为 peaceful 的 avian 访客提供了一幅如画的 frame。
一位中国母亲,身披 soft 的 pastel-colored 长袍,在宁静的 nursery 环境中,坐在舒适的摇椅里轻轻摇晃。光线 dimly 的卧室里装饰着从天花板上垂下的 whimsical 风铃,投下在墙上舞动的 shadows。她的 baby 被包裹在 delicate 的 patterned 毯子里,依偎在她的胸前。孩子先前的哭声现在变成了满足的 coos,母亲 soothing 的声音哄着小家伙入睡。薰衣草的 scent 弥漫在空气中,增添了 serene 的氛围,而附近 nightlight 发出的温暖橙色光芒以 gentle 的色调照亮了这一幕,捕捉到了 tender 的爱与 comfort 的瞬间。

模型介绍

CogVideoX是 清影 同源的开源版本视频生成模型。下表展示目前我们提供的视频生成模型列表,以及相关基础信息。

模型名CogVideoX-2B (本仓库)CogVideoX-5B
模型介绍入门级模型,兼顾兼容性。运行、二次开发成本低。视频生成质量更高、视觉效果更好的更大尺寸模型。
推理精度FP16*(推荐), BF16, FP32,FP8*,INT8,不支持INT4BF16(推荐), 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秒
微调精度FP16BF16
微调显存消耗(每卡)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_embed3d_rope_pos_embed

数据解释

  • 使用 diffusers 库进行测试时,启用了全部diffusers库自带的优化,该方案未测试在非NVIDIA A100 / H100 外的设备上的实际显存 / 内存占用。通常,该方案可以适配于所有 NVIDIA 安培架构 以上的设备。若关闭优化,显存占用会成倍增加,峰值显存约为表格的3倍,但速度提升3-4倍左右。你可以选择性地关闭部分优化,这些优化包括:
pipe.enable_model_cpu_offload()
pipe.enable_sequential_cpu_offload()
pipe.vae.enable_slicing()
pipe.vae.enable_tiling()
  • 进行多GPU推理时,需关闭 enable_model_cpu_offload() 优化。
  • 使用 INT8 模型会导致推理速度下降,这样做是为了让显存较低的显卡能够正常推理,并尽量减少视频质量损失,但推理速度会显著降低。
  • 2B 模型采用 FP16 精度训练,5B 模型采用 BF16 精度训练。我们建议使用模型训练时的精度进行推理。
  • PytorchAO 可用于量化文本编码器、Transformer 和 VAE 模块,以降低 CogVideoX 的内存需求。这使得在免费的 T4 Colab 或显存更小的 GPU 上运行模型成为可能!同样值得注意的是,TorchAO 量化与 torch.compile 完全兼容,这能显著提升推理速度。在 NVIDIA H100 及以上设备上必须使用 FP8 精度,这需要从源码安装 torch、torchao、diffusers 和 accelerate Python 包。建议使用 CUDA 12.4。
  • 推理速度测试同样采用了上述显存优化方案,若不采用显存优化,推理速度约提升10%。仅 diffusers 版本模型支持量化。
  • 模型仅支持英语输入,其他语言可在通过大模型润色时翻译为英语。

提醒

  • 使用 SAT 推理和微调 SAT 版本模型。欢迎前往我们的 github 查看。

快速上手 🤗

本模型已支持使用 diffusers 库进行部署,您可以按照以下步骤进行部署。

我们推荐您访问我们的 github 并查看相关的提示词优化和转换方法,以获得更好的体验。

  1. 安装对应的依赖
# diffusers>=0.30.1
# transformers>=0.44.0
# accelerate>=0.33.0 (suggest install from source)
# imageio-ffmpeg>=0.5.1
pip install --upgrade transformers accelerate diffusers imageio-ffmpeg 
  1. 运行代码 (BF16 / FP16)
import torch
import torch_npu

from torch_npu.contrib import transfer_to_npu
from diffusers import CogVideoXPipeline
from diffusers.utils import export_to_video
from openmind_hub import snapshot_download

model_dir = snapshot_download("AI-Research/CogVideoX-5B")
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(
    model_dir,
    torch_dtype=torch.float16
)

pipe.enable_model_cpu_offload()
pipe.enable_sequential_cpu_offload()
pipe.vae.enable_slicing()
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="npu").manual_seed(42),
).frames[0]

export_to_video(video, "output.mp4", fps=8)

深入研究

欢迎进入我们的 github,你将获得:

  1. 更加详细的技术细节介绍和代码解释。
  2. 提示词的优化和转换。
  3. SAT版本模型进行推理和微调,甚至预发布。
  4. 项目更新日志动态,更多互动机会。
  5. CogVideoX 工具链,帮助您更好的使用模型。
  6. INT8 模型推理代码。

模型协议

该模型根据 CogVideoX 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}
}