跳到主要内容

文生视频模型

CogVideoX 本地部署:显存从 4GB 到 33GB,先算清楚再开卡

CogVideoX-2B 开序列卸载能挤进 4GB,CogVideoX1.5-5B 什么优化都不做峰值要 33GB。差八倍的显存账,决定你该租 $0.193 的 RTX 3090 还是 $0.824 的 A100 80GB。

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-2B2B(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标称 5BSAT 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 里了。

  1. 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
  2. 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
  3. 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()
  4. 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 —

常见问题

CogVideoX 需要多大显存?24GB 的 4090 能跑吗?

分档看:CogVideoX-2B 走 diffusers 最低 4GB、INT8 最低 3.6GB;CogVideoX-5B 最低 5GB、INT8 最低 4.4GB、多卡 bf16 约 15GB;CogVideoX1.5-5B 最低 10GB、INT8 最低 7GB,不做优化峰值约 33GB,enable_model_cpu_offload 后 19GB,再叠 VAE 分块 11GB。所以 24GB 的 4090 跑 1.5-5B 是完全够的,只要开卸载。NexGPU 上 RTX 4090 24GB $0.540/卡·时,RTX 3090 24GB 只要 $0.193/卡·时,按秒计费;万一还是 OOM,换一张 32GB 的 RTX 5090($0.723)或 48GB 的 RTX A6000($0.817)也就是重开一台的事。

CogVideoX 和 CogVideoX1.5 有什么区别,该用哪个?

1.5 把分辨率从 720×480 提到 1360×768,帧数规则从 8N+1(N≤6,最多 49 帧)改成 16N+1(N≤10,默认 81 帧),帧率 8fps 提到 16fps,时长从固定 6 秒变成 5 或 10 秒,位置编码统一到 3d_rope_pos_embed,提示词上限从 226 token 微调成 224。代价是时间:同样 50 步,A100 上 5B 约 180 秒,1.5-5B 约 1000 秒,差 5 倍多。要成片质量选 1.5-5B,要快速筛提示词、批量试镜头选 2B 或 5B。这两条路在 NexGPU 上分别对应 A100 PCIE 80GB $0.824/卡·时 和 RTX 3090 24GB $0.193/卡·时,同一个项目里换着用最省。

CogVideoX 支持中文提示词吗?

不支持。五个开源权重的文本编码器都是 T5-XXL,官方模型卡在提示词语言一栏明确写的是 English,上限 224/226 token,直接喂中文会明显退化。官方 demo 的标准做法是先用 GLM 把中文需求扩写成一段镜头级的英文描述(仓库里的 convert_demo.py 干的就是这件事),再送进 pipeline,长而具体的提示词效果远好于一句话。实际操作上你可以在同一台 NexGPU 实例上同时跑一个小语言模型做提示词改写和 CogVideoX 本体 —— 单节点最多 14 张卡、最大 2,152GB 显存,一台机器装得下整条链路。

CogVideoX 还在更新吗?现在部署是不是已经过时了?

开源权重线确实停在 CogVideoX1.5:2024-11-08 发布模型、11-15 出 diffusers 版,仓库之后最大的更新是 2025-03-24 上线的 CogKit(CogView4 与 CogVideoX 系列的统一微调/推理框架),再往后的 CogVideoX-2、CogVideoX-3 只走 API,不放权重。所以「CogVideoX 本地部署」今天特指 1.5-5B 这一档。它仍然值得部署的理由是:权重可下载、可 LoRA、可完全离线、单张消费卡就能跑,这几点 API 给不了。如果你想同时横评 Wan、HunyuanVideo 这些后来者,在 NexGPU 上多开一台机器就行,51 个国家和地区、1,175 个已验证节点、2,498 张 GPU、75 种卡型,不用为了对比测试再买一张卡。

CogVideoX 可以商用吗?许可证怎么算?

分两种,别搞混。CogVideoX-2B 是 Apache 2.0,商用没有额外门槛。CogVideoX-5B、5B-I2V、1.5-5B、1.5-5B-I2V 用的是自定义的 CogVideoX LICENSE:学术研究免费;商用需要到智谱开放平台填表申请基础商用授权,授权覆盖每月 100 万次访问以内,超出要另外联系商务;同时要求在所有副本或重要部分中保留版权与许可声明,并禁止军事等用途。合理的顺序是先在 NexGPU 上按小时租卡把效果验证清楚,再决定要不要走授权流程 —— 没有最低消费、不用申请配额、没有开通费,验证阶段的沉没成本几乎为零。

微调 CogVideoX 要多少显存?LoRA 和全参差多少?

finetrainers(前身就是 cogvideox-factory)公布的实测:CogVideoX-5B 文生视频任务,在 49×512×768、rank 128、fp8 权重加梯度检查点、并且预计算好 condition 与 latent 的条件下,LoRA 训练 18GB,全参微调 53GB(预计算阶段本身另占十几 GB,但可以先跑完再释放)。也就是说 LoRA 一张 24GB 卡就能开工,全参必须上 80GB 卡。NexGPU 对应的是:LoRA 用 RTX 4090 24GB $0.540/卡·时 或 RTX A6000 48GB $0.817/卡·时 做高分辨率,全参用 A100 SXM4 80GB $1.088/卡·时;训练一停机,算力费用立刻停止计费,权重留在存储里下次接着练。

开始使用 NexGPU

无论你是企业研发团队还是独立开发者,都可以在几分钟内跑起第一个任务。

注册即可浏览全网实时价格,无需绑定支付方式。