这份详细的部署教程将指引您安装和运行 LongLive——由 NVIDIA 实验室开发的一个高性能基础设施,用于长视频生成的训练和推理。

LongLive 2.0 的核心优势在于其极高的效率。它通过引入 NVFP4 (4位浮点) 量化技术和并行化策略,在保证视频质量的前提下,大幅提升长视频生成的速度。例如,其 5B 参数模型在 NVFP4 下推理速度可达 45.7 FPS。它既支持从头训练,也支持快速推理。

整个部署流程对开发者非常友好,提供了清晰的快速开始脚本。您可以根据需求选择 BF16 (高精度)FP8 (平衡)NVFP4 (极致速度) 模式运行。

📋 前置准备

  1. 硬件:配备 NVIDIA GPU 的计算机(推荐 H100 等高性能 GPU)。

  2. 软件

    • Python 3.10 或更高版本。
    • CUDAPyTorch (需与 CUDA 版本匹配,例如 PyTorch 2.8.0+cu128)。
    • 确保 torchtorchvision 等基础库已安装。
  3. 克隆仓库注意,请只克隆 main 分支以节省时间和空间:

    1
    2
    git clone --single-branch --branch main --depth 1 https://github.com/NVlabs/LongLive.git
    cd LongLive
  4. 安装依赖

    1
    pip install -r requirements.txt

    特别提示:如果计划使用 NVFP4 模式,还需参考项目文档完成 NVFP4 设置

🚀 快速开始:运行推理

您可以使用预训练模型快速体验视频生成。根据您对速度和精度的偏好,选择以下一种模式。

1. BF16 模式 (基准精度)

这是最基础的运行方式,使用标准的 BF16 精度,适合首次测试或对精度要求高的场景。

  • 步骤

    1. 下载预训练模型 model_bf16.pt (可从 Hugging Face 获取,如 Efficient-Large-Model/LongLive-2.0-5B)。

    2. 创建一个 Python 脚本或直接使用示例代码(见项目 README)。核心流程如下:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      # 导入必要的库和模块
      import torch
      from omegaconf import OmegaConf
      from pipeline import CausalDiffusionInferencePipeline
      from utils.config import normalize_config
      from utils.inference_utils import load_generator_checkpoint, prepare_single_prompt_inputs, save_video

      prompt = "A compact silver robot walks through a clean robotics lab."
      config = normalize_config(OmegaConf.load("configs/inference.yaml"))
      device = torch.device("cuda")

      # 初始化并加载模型
      pipe = CausalDiffusionInferencePipeline(config, device=device)
      load_generator_checkpoint(pipe.generator, "path/to/model_bf16.pt") # 指定模型路径
      pipe = pipe.to(device=device, dtype=torch.bfloat16)

      # 生成并保存视频
      noise, prompts = prepare_single_prompt_inputs(config, prompt, device)
      video = pipe.inference(noise=noise, text_prompts=prompts)
      save_video(video[0], "sample.mp4", fps=24)

2. FP8 PTQ 模式 (平衡速度与精度)

此模式通过对 BF16 模型进行训练后量化 (PTQ) 来实现 FP8 推理,速度比 BF16 更快,同时保持较好的质量。

  • 步骤

    1. 下载 BF16 模型 model_bf16.pt

    2. 在配置文件 configs/fp8/inference_fp8.yaml 中,将 checkpoints.generator_ckpt 指向模型文件路径。

    3. 运行命令:

      1
      python inference.py --config_path configs/fp8/inference_fp8.yaml

    注意:此模式在 H100 (SM90) 及以上架构的 GPU 上效果最佳,首次运行会花费几分钟进行 torch.compile 预热。

3. NVFP4 模式 (极致速度)

这是 LongLive 2.0 的标志性模式,使用 4 位浮点数 (NVFP4) 实现最快的推理速度。

  • 步骤

    1. 下载经过 NVFP4 量化后的模型权重(如 model_te.ptmodel_4o6.pt)。

    2. 修改配置文件 configs/nvfp4/inference_nvfp4.yaml

      • checkpoints.generator_ckpt 指向下载的模型文件。
      • 根据模型类型设置 model_quant_use_transformer_engine:若使用 model_te.pt 则设为 true,若使用 model_4o6.pt 则设为 false
    3. 运行推理脚本(与 BF16 类似,但使用 setup_nvfp4_pipeline 替代 pipe.to):

      1
      2
      3
      4
      # ... 前面的导入和配置与 BF16 类似 ...
      pipe = CausalDiffusionInferencePipeline(config, device=device)
      setup_nvfp4_pipeline(pipe, config, device) # 关键:设置 NVFP4 管线
      # ... 后续推理和保存步骤相同 ...

🎓 训练模式

如果您希望使用自己的数据训练模型,LongLive 2.0 支持两阶段训练流程,且均支持文本到视频 (T2V) 和图像到视频 (I2V) 两种模态。

  1. 第一阶段:自回归教师强制训练 (AR Teacher-Forcing)
    让模型学习下一帧的预测。

    1
    2
    3
    4
    # T2V 训练示例
    torchrun --standalone --nnodes=1 --nproc_per_node=8 train.py \
    --config_path configs/train_ar.yaml \
    --logdir logs/train_ar

    I2V 训练需使用 configs/train_i2v_ar.yaml 并确保数据配置正确。

  2. 第二阶段:DMD 蒸馏 (Distillation)
    将 AR 模型蒸馏为少步数模型,大幅提升推理速度。

    1
    2
    3
    4
    5
    # 使用第一阶段训练好的 AR 模型作为教师
    torchrun --standalone --nnodes=1 --nproc_per_node=8 train.py \
    --config_path configs/train_dmd.yaml \
    --logdir logs/train_dmd \
    --checkpoints.generator_ckpt /path/to/your/ar/checkpoint.pt

    详细的配置选项(如多镜头视频、NVFP4 训练等)请参考项目 configs/ 目录下的 YAML 文件和官方文档。

📚 了解更多

  • 完整文档:项目仓库的 docs/ 目录和 官方文档 提供了更详细的安装、配置、数据处理和模型训练指南。
  • 模型下载:预训练模型可从 Hugging Face 等平台获取,具体链接请参考项目 README 的 “Models” 部分。

总结来说,您需要准备一个 NVIDIA GPU 环境,克隆仓库并安装依赖,然后根据您的需求选择一个推理模式(BF16/FP8/NVFP4)下载对应模型并运行示例脚本。