TaoMate-H3:低延迟流式音视频生成

探索 TaoMate-H3——一个基于 MiniMax H3 的运行时,可将同步音视频分块生成速度提升至最高 11.45 倍,适用于时长较长的 480p–1080p 输出。

TaoMate-H3:低延迟流式音视频生成

使用大型扩散模型生成完整的音视频序列,耗时可能超过最终片段本身的时长。这种延迟使交互式应用——例如实时数字人、虚拟主持人、实时故事讲述和自适应视频生成——难以构建。

TaoMate-H3 通过一个基于 MiniMax H3 构建的流式推理运行时解决了这一问题。它不会等待整个请求完成,而是将同步的音频和视频分成小块生成,使第一个可播放输出能够更早到达,同时保持较长序列之间的连续性。

该项目由阿里巴巴 TaoLive AIGC 团队开发,并依据 MiniMax H3 社区许可协议发布。

TaoMate-H3 有何不同?

TaoMate-H3 围绕流式生成而非一次性生成进行设计。其核心生成路径采用三步 LoRA 策略:每个小分块都会经过三个 Stage3 去噪区间。这减少了分块达到最终潜变量状态前所需的计算量。

该运行时还会在共享时间轴上生成语音、环境音和视频。这种联合音视频方法对于要求唇部动作、音效和视觉事件保持同步的应用十分重要,因为这些内容不应在生成完成后再彼此独立地组装。

主要功能包括:

  • 三步 LoRA 流式生成,加快分块完成速度。
  • 联合音视频生成,让语音、声音和画面在同一时间轴上对齐。
  • 低分块延迟,使第一个可用潜变量远早于完整 MiniMax H3 请求完成时到达。
  • 长时序连续性,通过干净的 KV-cache 更新和集成式音频引导实现。
  • 视觉、声音和动作一致性,跨越提示词边界保持一致。
  • 竖屏和横屏输出,支持 480p、768p 以及对齐后的 1080p 分辨率。
  • 单节点推理,可使用四张或八张 GPU,并采用 TP2 和 Ulysses 序列并行。

硬件和软件要求

经过验证的配置要求较高,目标硬件为 NVIDIA Hopper:

  • Linux
  • Python 3.10 或 3.11
  • NVIDIA Hopper 或 SM90 GPU
  • 已验证配置:8 × NVIDIA H20 96 GB
  • CUDA 12.8
  • PyTorch 2.8
  • 支持 H.264 和 AAC 的 FFmpeg

在安装运行时之前,先创建独立环境:

conda create -n taomate-h3 python=3.10 -y
conda activate taomate-h3

pip install torch==2.8.0 torchvision==0.23.0 \\
  --index-url https://download.pytorch.org/whl/cu128

pip install triton==3.4.0 vllm==0.11.1

TaoMate-H3 依赖兼容 Hopper 的 FlashAttention。请在不启用构建隔离的情况下安装 Hopper 实现:

git clone https://github.com/Dao-AILab/flash-attention.git
pip install --no-build-isolation ./flash-attention/hopper

然后克隆 TaoMate-H3,并以可编辑模式安装:

git clone https://github.com/TaoLiveAIGC/TaoMate-H3.git
cd TaoMate-H3
pip install -e .

在 Ubuntu 或 Debian 上使用以下命令安装 FFmpeg:

sudo apt-get update
sudo apt-get install -y ffmpeg

下载所需模型

该运行时使用 MiniMax H3 FL2VA 模型。将所需文件从 Hugging Face 下载到本地 models/MiniMax-H3 目录:

hf download MiniMaxAI/MiniMax-H3 \\
  --include "model_index.json" "FL2VA/*" \\
  --local-dir models/MiniMax-H3

TaoMate-H3 还使用一个 LoRA 适配器。当前版本是 step-3000 generator EMA adapter,rank 为 128,alpha 为 128。如果未提供本地适配器,推理时会在首次使用时自动将官方适配器下载到 models/TaoMate-H3

如需提前下载:

hf download TaoLiveAIGC/TaoMate-H3 \\
  --include "config.json" "adapter_config.json" "adapter_model.safetensors" \\
  --local-dir models/TaoMate-H3

生成的目录应包含:

models/TaoMate-H3/
├── config.json
├── adapter_config.json
└── adapter_model.safetensors

对于私有或受限的 Hugging Face 仓库,请先进行身份验证:

hf auth login

或者通过标准的 HF_TOKEN 环境变量提供访问权限。

以五秒为区块进行提示

TaoMate-H3 支持在整个序列中重复使用单个提示词,也支持使用 JSON 文件为每个五秒时间区间指定一个提示词。基于区块的提示对于长时序生成非常有用,因为它可以让你改变场景、动作、对白或镜头方向,同时运行时通过 KV-cache 和音频引导机制保持连续性。

示例提示文件:

{
  "prompts": [
    "0-5 秒的提示词",
    "5-10 秒的提示词"
  ],
  "seeds": [8301, 8301]
}

在不同区块中使用相同的 seed,有助于保持经过设计的请求配置稳定。--prompt--prompt-json 不能同时使用。

运行 10 秒生成任务

以下命令会使用八张 GPU,生成一个 768p 的 10 秒竖屏视频:

python -m taomate_h3 \\
  --model-root models/MiniMax-H3 \\
  --prompt-json examples/prompts_10s.json \\
  --duration 10 \\
  --resolution 768x1376 \\
  --gpus 8 \\
  --devices 0,1,2,3,4,5,6,7 \\
  --seed 8301 \\
  --output outputs/demo_10s

完整流程会将最终结果写入:

outputs/demo_10s/video.mp4

启动器会自行创建本地分布式工作进程,因此不需要额外使用 torchrun 命令。如需使用其他适配器,请显式指定:

--adapter /path/to/adapter

输出目录必须是新建的或为空目录。除非从提示 JSON 配置中推断时长,否则总时长必须是五秒的倍数。

支持的分辨率

TaoMate-H3 同时支持竖屏和横屏布局:

目标 竖屏 横屏
480p 480x864 864x480
768p 768x1376 1376x768
1080p 1088x1920 1920x1088

1080p 尺寸使用 1088 像素的边长,以确保两个维度都能被 32 整除。如果交付要求精确的 1080 像素边长,请在推理后裁剪生成的输出。

重要命令行选项

选项 用途 默认值
--model-root 包含 FL2VA/ 的 MiniMax H3 目录 必填
--adapter 本地 TaoMate-H3 LoRA 目录 自动下载到 models/TaoMate-H3
--prompt 为每个五秒区块重复使用一个提示词
--prompt-json 为每个五秒区块提供一个提示词
--duration 总时长(秒) 5,或从 JSON 推断
--resolution WIDTHxHEIGHT;短边必须为 480、768 或 1088 768x1376
--gpus 本地 GPU 数量;支持 4 或 8 8
--devices 以逗号分隔的 CUDA 设备 ID 0gpus-1
--seed 设计好的请求 seed 8301
--output 新建或为空的输出目录 必填

分辨率的两个维度都必须能被 32 整除。运行时支持四 GPU 和八 GPU 配置;基准结果使用八张 GPU,并采用 TP2 × Ulysses4。

基准结果

项目报告了以下测量结果:测试在一个包含 8 × NVIDIA H20 96 GB GPU 的节点上进行,画布为 480×864,输出时长为 10 秒,seed 为 8301。

指标 TaoMate-H3 MiniMax H3 提升
纯 DiT 耗时 14.810 秒 169.572 秒 快 11.45 倍
首个最终分块潜变量 6.148 秒 170.052 秒 快 27.66 倍
首个可播放视频 17.287 秒 183.313 秒 快 10.60 倍
DiT 峰值已分配显存 31.37 GiB 32.03 GiB

这些数字区分了几种不同的延迟测量方式。纯 DiT 耗时不包括模型加载、文本编码、VAE 解码和媒体编码。首个可播放视频包含 Video VAE 解码和 H.264 发布,对应匹配的首分块发布基准。该基准涵盖 Stage3 生成路径,但不包括命令内部的音频准备过程。

一次 10 秒的 TaoMate-H3 运行包含 24 次生成前向计算和 8 次干净 KV 更新。最值得关注的不仅是端到端速度提升:首个最终分块潜变量仅需 6.148 秒即可到达,这为一种新路径提供了可能——在后续分块仍在生成时,应用就可以开始播放。

何时使用 TaoMate-H3

当首个视频到达时间与总生成时间同样重要时,TaoMate-H3 尤其有价值。潜在应用包括:

  • 交互式数字人和虚拟主持人
  • 实时或半实时故事讲述系统
  • 支持提示词区块之间场景切换的长时序 AI 视频
  • 音频响应式视频生成
  • 同步对白、声音和画面的原型开发
  • 无法等待整个片段渲染完成的流式创作工具

它并不是轻量级的消费级推理软件包。Hopper GPU 要求、经过验证的八 GPU 配置以及专用的 CUDA/PyTorch 技术栈,意味着它更适合部署在专用服务器或研究基础设施上。

许可证和致谢

TaoMate-H3 依据 MiniMax H3 社区许可协议发布。用户必须遵守该许可证关于使用和分发的条款。

项目向 MiniMax H3、Qwen3-VL、PyTorch、FlashAttention、Triton 和 vLLM 背后的团队表示感谢。

如需了解实现细节和最新示例,请访问 TaoMate-H3 GitHub 仓库

来源

TaoLiveAIGC/TaoMate-H3