CogVideoX 是智谱(Z.ai,源头是清华 THUDM)开源的扩散 Transformer 文生视频模型,论文编号 arXiv 2408.06072。它的三块底子是 3D Causal VAE(压视频序列长度、抑制帧间闪烁)、带自适应 LayerNorm 的 expert transformer(对齐文本与画面)和 3D full attention(捕捉运动与时间)。文本编码器用的是 T5-XXL,这也是它显存账里绕不开的一大块。开源权重一共五个:CogVideoX-2B、CogVideoX-5B、CogVideoX-5B-I2V、CogVideoX1.5-5B、CogVideoX1.5-5B-I2V。Hugging Face 组织已经从 THUDM 迁到 zai-org,GitHub 也是 zai-org/CogVideo,旧路径会自动跳转,两种写法都能拉到同一份权重。
有一件事值得先说清楚:开源线停在 CogVideoX1.5。1.5 是 2024-11-08 发布、11-15 出 diffusers 版,仓库之后最大的动作是 2025-03-24 上线的 CogKit 微调/推理框架,再往后的 CogVideoX-2、CogVideoX-3 只以 API 形式提供(docs.z.ai 上 CogVideoX-3 最高支持 3840×2160、30 或 60fps,$0.2 一条)。所以今天说「CogVideoX 本地部署」,能自己跑的天花板就是 CogVideoX1.5-5B:1360×768、16N+1 帧(N≤10,默认 81 帧)、16fps、5 秒或 10 秒。它的价值是权重能下载、能 LoRA、能彻底离线,而不是刷榜画质。
这类模型最不适合先买卡再试。显存曲线极陡:diffusers 官方实测表写得很直白 —— 什么都不开约 33GB,enable_model_cpu_offload 降到 19GB,再叠 VAE 分块降到 11GB,enable_sequential_cpu_offload 能压到 4GB 以下但推理速度慢到没法用;如果走 SAT 原生权重跑 1.5-5B,直接是 76GB。时间成本同样劝退:50 步 5 秒片在 A100 上约 1000 秒,H100 约 550 秒,跑一版就是十几分钟起。按秒计费的租卡把这两件事都变成可控开销:调参用便宜的 24GB 卡,批量出片再换 80GB 卡,跑完就停。
01 —
五个开源权重,选错一档就是 OOM
显存数字全部来自官方模型卡与 diffusers 文档的实测表,不是估算。
| 版本 | 参数量 | 显存 | 上下文 | 说明 |
|---|---|---|---|---|
| CogVideoX-2B | 2B(fp16 训练) | SAT 18GB / diffusers 最低 4GB / INT8 最低 3.6GB | 提示词 226 token | 720×480 · 8N+1(N≤6,最多 49 帧)· 8fps · 6 秒 | 唯一一个 Apache 2.0 的权重,商用零门槛。画质是五个里最弱的,但拿来批量筛提示词、验证流水线最便宜。A100 上 50 步只要约 90 秒,H100 约 45 秒。 |
| CogVideoX-5B | 标称 5B(HF 卡片按 6B 计) | SAT 26GB / diffusers 最低 5GB / INT8 最低 4.4GB / 多卡 bf16 15GB | 提示词 226 token | 720×480 · 最多 49 帧 · 8fps · 6 秒 | bf16 推荐精度,位置编码换成 3d_rope_pos_embed。A100 50 步约 180 秒、H100 约 90 秒,是「画质与速度」平衡点。许可证是自定义的 CogVideoX LICENSE,不是 Apache。 |
| CogVideoX-5B-I2V | 标称 5B | SAT 26GB / diffusers 最低 5GB / INT8 最低 4.4GB | 提示词 226 token | 720×480 · 最多 49 帧 · 8fps · 6 秒 | 图生视频版,位置编码是 3d_rope 加可学习分量,所以权重和 T2V 版不能互换。做首帧驱动、产品图转动效走这一支。 |
| CogVideoX1.5-5B | 标称 5B(HF 卡片按 6B 计) | SAT 76GB / diffusers 最低 10GB / INT8 最低 7GB / 不开卸载峰值 ~33GB / model_cpu_offload 19GB / 加 VAE 分块 11GB | 提示词 224 token | 1360×768 · 16N+1(N≤10,默认 81 帧)· 16fps · 5 或 10 秒 | 本地能跑的最高一档。T2V 权重是按 1360×768 预训练的,换分辨率掉质量明显;官方推荐 81 帧或 161 帧、按 16fps 导出。需要 diffusers 0.32 以上,老版本会报配置不匹配。 |
| CogVideoX1.5-5B-I2V | 标称 5B | 同 1.5-5B:最低 10GB,INT8 最低 7GB,卸载后 19GB / 11GB | 提示词 224 token | 短边固定 768、长边 768–1360 且被 16 整除 · 默认 81 帧 · 16fps · 最长 10 秒 | 唯一能出 10 秒 1360×768 图生视频的开源权重。尺寸约束比 T2V 严:高必须是 768,宽高都要被 16 整除,随便填个 1280×720 会直接报错。 |
02 —
四种跑法,四张卡
按你真正要做的事选,别为了「稳」一律上 80GB。
INT8 量化 + VAE 分块,先把 2B/5B 跑通、把提示词模板调顺
RTX 3090 24GB$0.193/卡·时
5B 的 INT8 权重只占 4.4GB、1.5-5B 也只要 7GB 起步,24GB 绰绰有余;Ampere 原生支持 bf16,是全站最便宜的 24GB 卡,试错阶段一小时不到两毛钱。
CogVideoX1.5-5B 日常出片:bf16 + enable_model_cpu_offload(19GB)
RTX 4090 24GB$0.540/卡·时
19GB 的卸载峰值 24GB 刚好接得住,再开 VAE 分块降到 11GB 还有余量;Ada 架构支持 fp8 fast 与 SageAttention(Linux 下约 20–30% 提速),这两项在 3090 上都吃不到。
不开任何卸载、全量驻留 + torch.compile 批量跑 1360×768×81 帧
A100 PCIE 80GB$0.824/卡·时
33GB 峰值全部留在显存里不换页,速度才追得上官方基准;diffusers 给出的 A100 80GB 实测是 compile 后 76.27 秒对未 compile 的 96.89 秒,约省两成。
CogVideoX-5B 全参微调(finetrainers 实测 53GB)
A100 SXM4 80GB$1.088/卡·时
LoRA 只要 18GB,一张 4090 就够;全参 53GB 只有 80GB 卡装得下。要扩到多卡时 SXM4 的 NVLink 比 PCIE 划算,NexGPU 单节点最多 14 卡、最大 2,152GB 显存。
03 —
四步跑出第一条视频
从开机到 output.mp4,中间会踩的坑都写在 body 里了。
- 01
开卡,装对版本的 diffusers
在 NexGPU 2,000+ 预置镜像里选 PyTorch 或 ComfyUI 镜像,SSH、Jupyter、web 终端任选一种进去。CogVideoX1.5 必须 diffusers 0.32 以上,低版本加载 transformer 会直接报配置不匹配 —— 这是新手最常见的第一个坑。imageio-ffmpeg 别漏,export_to_video 靠它落盘。
pip install -U "diffusers>=0.32.0" transformers accelerate sentencepiece imageio-ffmpeg - 02
拉权重,别把 SAT 版和 diffusers 版混着下
权重加缓存大约 30GB。HF 上 THUDM/ 路径已经跳转到 zai-org/,两种写法拿到的是同一份。注意仓库里同时挂着 SAT 原生权重和 diffusers 权重,两者不通用:SAT 版跑 1.5-5B 要 76GB 显存,diffusers 版才是 10GB 起步的那条路。
hf download zai-org/CogVideoX1.5-5B --local-dir ./CogVideoX1.5-5B - 03
24GB 卡上的显存三件套
这三行把峰值从 33GB 一路压到 11GB:模型级卸载先降到 19GB,VAE 分块与切片再降到 11GB。千万别默认换成 enable_sequential_cpu_offload —— 它确实能压到 4GB 以下,但每一步都在 CPU 和 GPU 之间搬权重,官方自己标注「推理速度非常慢」,一条片子能拖到一小时以上。想更省,走 torchao 的 Int8WeightOnlyConfig 加分组卸载,量化后的 5B 约 16GB,且与 torch.compile 完全兼容。
pipe.enable_model_cpu_offload(); pipe.vae.enable_tiling(); pipe.vae.enable_slicing() - 04
出片,或者切到 ComfyUI 图形流程
官方 cli_demo.py 的默认值是 81 帧、16fps、50 步、guidance_scale 6.0、CogVideoXDPMScheduler 配 trailing 间距。提示词只吃英文,上限 224 token(老版 226),写一句话出来必糊 —— 官方 demo 的做法是先用 GLM 把需求扩写成一段镜头级英文描述再喂进去。想要节点式工作流就换 ComfyUI 镜像装 ComfyUI-CogVideoXWrapper,它支持 fp8 fast、GGUF、torchao 量化,以及 CogVideoX-Fun 1.1 姿态控制、Tora 轨迹控制、DimensionX LoRA 这些生态分支;注意它 update 8 是破坏性变更,老工作流要改。
python inference/cli_demo.py --prompt "A panda in a red jacket plays an acoustic guitar in a misty bamboo forest, cinematic lighting" --model_path zai-org/CogVideoX1.5-5B --generate_type t2v
一个真实的出片成本账
第一阶段调参用 RTX 3090 24GB($0.193/卡·时):INT8 量化下 5B 只占 4.4GB,两小时够你把提示词模板、guidance_scale、步数各试二三十版,$0.193 × 2 = $0.386。参数定下来换 A100 PCIE 80GB($0.824/卡·时)批量出片:CogVideoX1.5-5B 跑 50 步、81 帧、1360×768,官方实测 A100 上约 1000 秒一条;diffusers 给出的 torch.compile 收益是 96.89 秒降到 76.27 秒,约 21%,按同比例折算约 790 秒一条 —— 一小时约 4.5 条,单条 GPU 成本 $0.824 ÷ 4.5 ≈ $0.18。要出 200 条素材:200 × 790 ÷ 3600 ≈ 43.9 小时,43.9 × $0.824 ≈ $36.2。权重加产出约 30GB,存储按 $0.414/GB·月 中位价算约 $12.4/月;200 条成片按 5MB 一条下载,1GB 出网 × $0.0081/GB ≈ 1 美分。作为对照,官方 CogVideoX-3 API 是 $0.2 一条 —— 自建的账面单价能压到它以下,而且权重、数据和 LoRA 都在你自己手里。算力按秒计费、实例一停就不再计算力费用;存储要到销毁才停止计费,跑完记得清盘。
04 —
