跳到主要内容

视频生成模型

VideoCrafter 本地部署:一张 24GB 卡跑通的 320×512 视频扩散模型

16 帧、320×512、DDIM 50 步,全程单卡不 offload。这页把 VideoCrafter1/2 的每一个权重、每一个依赖坑和每一分钱都摊开讲清楚。

VideoCrafter 是 AILab-CVC(腾讯 AI Lab 系)开源的潜在视频扩散模型(LVDM)系列,从 2023 年 4 月 256×256 的 t2v-version-1-1 起步,到 VideoCrafter1 做到 576×1024,再到 2024 年 1 月的 VideoCrafter2。骨架是 Stable Diffusion 2.1 那一套:4 通道 VAE 做 8 倍下采样,OpenCLIP ViT-H 文本编码器取 penultimate 层、context_dim 1024,UNet 换成加了时序卷积与时序自注意力的 3D 版本,model_channels 320、temporal_length 锁死 16 帧,还额外挂了 fps 条件嵌入。VideoCrafter2 的论文卖点很直白:用画质糟糕的 WebVid-10M 学运动,用合成的高质量图像单独微调空间模块学画质,把两者解耦。

但别指望它还在迭代。仓库最后一次实质性代码更新停在 2024 年 7 月,2026 年唯一一次提交是社区把 README 里的 Techinical 改成 Technical(PR #102);官方 Hugging Face Space 目前是 BUILD_ERROR 状态,Gradio 还锁在 3.43。官方 README 自己也把图生视频的接力棒交了出去 —— 明写着 I2V 请改用 DynamiCrafter。更往后,同一条技术线上已经是 HunyuanVideo 1.5(8.3B,开 offload 最低 14GB 显存,480p/720p/1080p)。这些都不是黑点,是你选型时该知道的事实。

可它并没有失去价值。1.8B 量级、16 帧、320×512 的体量意味着不用 offload、不用多卡、不用等四十分钟出一条片;它是 VBench 上的常驻基线,也是 T2V-Turbo 这类一致性蒸馏工作直接拿来当底模的对象。要做消融实验、要复现论文数字、要一个真跑得动又改得动的 LVDM 基线,VideoCrafter 依旧是成本最低的那个选择 —— 前提是你的显卡架构和它锁死的 torch 2.0.0 对得上。这一点,恰好是租卡比买卡划算的地方。

01 —

权重清单:到底该下哪一个 ckpt

官方从没发过 VideoCrafter2 的 1024 档,想要高分辨率只能回头用 VideoCrafter1。

版本参数量显存上下文说明
VideoCrafter2(base_512_v2)合计约 1.8B(ckpt 7.4GB,fp32 打包 UNet3D + VAE + OpenCLIP)同族 320×512 档 4090 实测 12.8GB;社区经验下限 16–18GB;官方 Demo 跑在 24GB 的 L4 上16 帧 · 320×512 · 存盘 8fps 即 2 秒现在的默认选择。画质相对 VC1 明显提升,配置里 use_scale: true、scale_b: 0.7 是它独有的噪声缩放。HF 上标 Apache-2.0。
VideoCrafter1 T2V 1024(base_1024_v1)ckpt 6.34GB fp32同族 1024 档 RTX 4090 实测 18.3GB(576×1024)16 帧 · 576×1024(latent 72×128)整个系列里唯一的高分辨率文生视频权重。训练走 256×256 → 512×320 → 1024×576 三段课程,最后一段 45K 步、batch 64。
VideoCrafter1 T2V 512(base_512_v1)ckpt 6.33GB fp32与 VideoCrafter2 同档,约 12.8GB 起16 帧 · 320×512只有做版本对比、复现 VC1 论文数字时才需要它;日常出片没有理由不用 VideoCrafter2。
VideoCrafter1 I2V 512(i2v_512_v1)ckpt 5.22GB fp32约 12.8GB 起,与 T2V 512 同档16 帧 · 320×512 · 图像 + 文本双条件在 T2V 基础上加了第二路 cross-attention,走 FrozenOpenCLIPImageEmbedderV2 编码参考图。脚本默认 --fps 8、CFG 12。
DynamiCrafter(官方指定的 I2V 接班人)同族 LVDM,非 VideoCrafter 权重4090 实测:18.3GB @576×1024、12.8GB @320×512、11.9GB @256×25616 帧 · 1024 长边(另有 512 插值/循环变体)VideoCrafter 的 README 直接把图生视频指向它,并附了完整显存表与 A100 耗时(1024 档 50 步 75 秒、512 档 20 秒)。
t2v-version-1-1(初代 LVDM)2023 年 4 月首发权重作者当年给的口径:开 xformers 最低 6.3GB256×256唯一一个明确标 MIT 的权重仓。除了考古和极限低显存验证,没有生产价值。

02 —

选卡:VideoCrafter 的显存需求不高,架构挑剔

官方脚本没有 fp16 开关,全程 fp32 推理 —— 这决定了选卡逻辑和现代 bf16 模型完全不同。

  • VideoCrafter2 出 320×512 片段,日常主力

    RTX 3090 24GB$0.193/卡·时

    24GB 对齐官方 Demo 用的 L4,Ampere sm_86 正好被 torch 2.0.0 的官方轮子覆盖,而且它比 16GB 的 Tesla T4($0.298)更便宜、显存还多一半。

  • VideoCrafter1 跑 576×1024,或者批量刷 prompt 想缩短 wall clock

    RTX 4090 24GB$0.540/卡·时

    1024 档同族实测 18.3GB,24GB 装得下但没什么余量;4090 的 fp32 吞吐能把每条片子的时间压掉近一半,批量任务算总账反而更省。

  • bs 想开大于 1,或改 temporal_length 做长帧实验,24GB 顶不住

    Tesla V100 32GB$0.188/卡·时

    全系最便宜的 32GB 卡;因为 VideoCrafter 本来就跑 fp32、用不上 bf16 张量核心,V100 在这个模型上不吃架构亏,只是慢一点。

  • 在 VideoCrafter2 上做 LoRA 微调或一致性蒸馏(T2V-Turbo 那条路)

    A100 SXM4 80GB$1.088/卡·时

    训练要同时扛住 3D UNet 的时序注意力激活和优化器状态,80GB 加 NVLink 才够;单节点最多挂 14 张卡,扩到多卡不用换供应商。

03 —

在 NexGPU 上部署 VideoCrafter2:四步出片

从空实例到第一条 mp4,卡住的地方基本都在依赖版本上,所以第一步就要把 Python 钉死。

  1. 01

    开卡,建一个 Python 3.8.5 的干净环境

    在控制台选 RTX 3090 24GB,直接用 PyTorch 预置镜像开机,SSH 进去。requirements.txt 钉的是 torch==2.0.0、transformers==4.25.1、pytorch_lightning==1.8.3、open_clip_torch==2.22.0,这套组合在 Python 3.10+ 上会连环冲突,老老实实建 3.8.5 环境最省事。

    conda create -n videocrafter python=3.8.5 -y && conda activate videocrafter
  2. 02

    拉代码装依赖

    仓库 5,000 多 star、400 多 fork,但 74 个 issue 挂着没人处理,装依赖时别指望上游修。xformers 不带版本锁,装完先跑一次 import 确认它没顺手把 torch 升级掉。

    git clone https://github.com/AILab-CVC/VideoCrafter && cd VideoCrafter && pip install -r requirements.txt
  3. 03

    下 7.4GB 权重,放进脚本写死的目录

    脚本里的路径是硬编码的 checkpoints/base_512_v2/model.ckpt,目录名错一个字符就报找不到文件。仓里只有一个 model.ckpt,fp32 存储,7.4GB,在 NexGPU 节点上通常一两分钟就拉完。

    hf download VideoCrafter/VideoCrafter2 model.ckpt --local-dir checkpoints/base_512_v2
  4. 04

    跑推理,或者起 Gradio

    默认脚本是 320×512、16 帧、DDIM 50 步、CFG 12.0、--fps 28(fps 是条件嵌入,不是存盘帧率,存盘走 --savefps,默认 10)。想再快一点,把 configs/inference_t2v_512_v2.0.yaml 里的 use_checkpoint 从 true 改成 false —— 官方 Gradio 后端就是这么干的,用更多显存换速度,24GB 卡完全吃得下。

    sh scripts/run_text2video.sh   # 或 python gradio_app.py 起网页界面

一条片子到底多少钱

按默认配置算:320×512、16 帧、DDIM 50 步。同族的 DynamiCrafter512 在 A100 上 50 步耗时 20 秒,换到 RTX 3090 上加解码写盘,保守按每条 45 秒估。3600 ÷ 45 = 80 条/小时,$0.193 ÷ 80 ≈ 每条 $0.0024,两分钱一条。刷一整套 500 条 prompt 的评测集:500 × 45 秒 = 6.25 小时,6.25 × $0.193 = $1.21。嫌慢就换 RTX 4090 24GB $0.540/卡·时,同样 500 条约 3 小时、3 × $0.540 = $1.62 —— 时间砍半,多花 0.41 美元。存储另算:代码加 7.4GB 权重,20GB 卷按中位价 $0.414/GB·月 = $8.28/月,但计算费在实例停止那一秒就停,存储费只在卷没删掉时才继续走。500 段 mp4 大约 0.2GB,出网按中位价 $0.0081/GB 算不到一美分。按秒计费、无最低消费、无开通费,跑完就停。

04 —

常见问题

VideoCrafter 本地部署到底需要多大显存?

官方仓库从没给过显存表,能拿到的是三个真实数据点:有人在 10.9GB 的卡上直接 CUDA OOM(issue #78),帖子下的回复给出 18GB 的经验门槛;官方 README 指向的同族 DynamiCrafter 在 RTX 4090 上实测 320×512 占 12.8GB、576×1024 占 18.3GB;官方 Hugging Face Demo 跑在 24GB 的 L4 上。结论很清楚:12GB 及以下别试,16GB 能跑但紧,24GB 是安全线。NexGPU 的 RTX 3090 24GB 是 $0.193/卡·时,比很多人手里的 16GB 卡还便宜。

VideoCrafter2 和 VideoCrafter1 该用哪个?

只看画质就用 VideoCrafter2,它的整套训练方案就是为了解决 WebVid-10M 画质拖后腿的问题。但要注意官方从没发过 VideoCrafter2 的高分辨率权重 —— 只有 320×512 一档。需要 576×1024 就必须回头用 VideoCrafter1 的 base_1024_v1(6.34GB),需要图生视频则用 i2v_512_v1,或者按官方建议直接换 DynamiCrafter。这几个 ckpt 加起来不到 30GB,在 NexGPU 上开一台 3090 全下下来做横向对比,一小时不到两毛钱。

2026 年了,VideoCrafter 是不是已经被淘汰了?

代码层面基本冻结了:最后一次实质更新是 2024 年 7 月,2026 年唯一的提交是修 README 拼写;同一技术线上的接班人是 DynamiCrafter 和 HunyuanVideo 1.5(8.3B,开 offload 最低 14GB)。但作为基线它还活着 —— VBench 里常年在榜,T2V-Turbo 这类蒸馏工作直接拿它当底模,做消融和复现时它体量小、结构透明、改起来快。真要横向比,最省事的办法是在 NexGPU 上同时开两台卡,一台 3090 跑 VideoCrafter2,一台 A100 80GB 跑新模型,同一批 prompt 一次跑完再决定。

VideoCrafter 可以商用吗?

这是最容易踩的坑。GitHub 仓库根本没有 LICENSE 文件,README 里只有一句「本仓库用于研究目的,仅限个人/研究/非商业用途」;权重侧则各不相同 —— VideoCrafter2 在 Hugging Face 上标 Apache-2.0,初代 t2v-version-1-1 标 MIT,而 Text2Video-1024、Text2Video-512、Image2Video-512 这三个仓压根没写授权。也就是说代码和权重的口径是打架的,商用前请自己走法务,别拿本页当法律意见。做技术验证阶段,NexGPU 按秒计费、不需要提配额申请,验证完直接销毁实例。

为什么 VideoCrafter 装在 RTX 5090 上跑不起来?

因为 requirements.txt 钉死 torch==2.0.0,那是 2023 年的构建,官方轮子最高只编到 Hopper 一代,根本没有 Blackwell(sm_120)的 kernel,一跑就是 no kernel image is available。要用 5090 就得把 torch 升到支持 CUDA 12.8 的版本,连带 pytorch_lightning 1.8.3、transformers 4.25.1、open_clip_torch 2.22.0 一起返工,lvdm 里的若干 API 也要改。所以我们反而建议:跑原版 VideoCrafter 请选 RTX 3090($0.193)或 RTX 4090($0.540)这类 Ampere/Ada 卡,NexGPU 的 RTX 5090 32GB($0.723)留给原生支持新 torch 的模型。

VideoCrafter 只能生成 2 秒视频吗?能不能变长?

模型的 temporal_length 是 16,配置里写死,存盘默认 8–10 fps,所以一条就是 1.6–2 秒。inference.py 确实有 --frames 参数(默认 -1,即跟随 temporal_length),但权重是按 16 帧训的,硬拉长会出现明显的运动漂移和画面塌陷。实践中的做法是:接 RIFE 之类的插帧模型提高帧率,或者改用 DynamiCrafter 的 512_interp 变体做插值与循环。这些后处理链路都很吃 I/O 和显存碎片,在 NexGPU 上开一台 24GB 卡把生成和插帧放在同一台机器里跑,省掉来回传文件的出网费用。

开始使用 NexGPU

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

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