OpenVDN/vdn-minimax-h3
VideoDeltaNet-H3: Live T2VA / I2VA / FL2VA generation based on Minimax H3.
What is VDN‑Minimax‑H3?
VDN‑H3 (Video DeltaNet on MiniMax H3) is a hybrid‑attention video diffusion model that builds on the MiniMax H3 backbone. It adds a lightweight linear‑attention branch and a few LoRA adapters, letting the model generate 14‑second, 768p videos faster than real‑time while keeping visual quality close to the original dense model.
Key ideas
| Idea | Why it matters |
|---|---|
| Hybrid architecture | One branch uses cheap linear attention for speed; the other keeps a full softmax attention branch for quality and temporal consistency. |
| Plug‑and‑play LoRA adapters | The extra linear branch and two tiny LoRA modules are merged at inference time, leaving the original MiniMax weights untouched. |
| FP8 inference + FlashAttention‑4 | Mixed‑precision (FP8) and the newest FlashAttention kernels give up to 3×‑5× speed‑ups on modern NVIDIA H200/B200 GPUs. |
| Open‑source stack | Both the optimized inference code and the full training recipes are released, so anyone can reproduce or fine‑tune the model. |
Getting started (quick‑start)
- Clone & create a conda env (Python 3.12, PyTorch 2.13+CUDA 12.9). Install the
uvpackage manager and runuv pip install -e .to pull in all dependencies, including the pre‑releaseflash‑attn‑4. - Patch Diffusers – a helper script (
scripts/setup_diffusers.sh) applies the required changes to the HuggingFace Diffusers library. - Download the weights (≈ 82 GB) with the HuggingFace CLI:
The directory will contain the MiniMax‑H3 base model (≈ 72 GB) and two VDN‑H3 checkpoints (≈ 4‑5 GB each).hf download OpenVDN/vdn-minimax-h3 --local-dir ckpts - Run a single‑GPU test:
The script compiles the Flash kernels on first run and then denoises an 8‑step video in ~11 s on an 8‑GPU B200 node (or ~6 s on a single B200).bash scripts/inference/8nfe_tuned_fp8.sh - Render your own prompt – encode a text prompt with the Qwen3‑VL‑32B VLM, then call the inference script:
(The README recommends rewriting prompts with MiniMax‑H3‑Context‑IR for best quality.)python src/inference/encode_prompt.py --prompt "..." --out prompts/mine.pt python src/inference/infer.py \ --config configs/inference/8nfe_tuned_fp8.yaml \ checkpoint=ckpts/stage-dmd-step-250 \ render.prompt_file=prompts/mine.pt \ render.out=results/mine.mp4
Performance numbers (steady‑state denoising, 768p, 14.4 s video)
| GPU type | #GPUs | Seconds per NFE | 50‑step VDN‑H3 (≈ 9 min) | 8‑step VDN‑H3 |
|---|---|---|---|---|
| H200 | 1 | 11.2 | 9.4 min | 90.5 s |
| H200 | 8 | 2.29 | 1.9 min | 18.3 s |
| B200 | 1 | 6.41 | 5.3 min | 51 s |
| B200 | 8 | 1.40 | 1.2 min | 11.23 s |
(These timings exclude model loading, warm‑up, VAE decoding, and MP4 encoding.)
Training pipeline
VDN‑H3 is trained in four stages on top of a frozen MiniMax‑H3 transformer:
| Stage | What is trained | Steps |
|---|---|---|
| A1 | Linear‑attention branch (layer‑wise alignment) | 200 |
| A2 | Same branch, end‑to‑end fine‑tune | 500 |
| B | LoRA adapters on QKV/O projections + linear branch | 2000 |
| DMD | 8‑step “turbo” LoRA (data‑free, initialized from a community LoRA) | 250 |
Training scripts live under src/training/ and scripts/training/. Data must be pre‑encoded latents (video, audio, text) following the MiniMax‑H3 format; a video_index.jsonl points to each clip’s video latent file.
License & attribution
- Code – Apache 2.0 (see
LICENSE). - Model weights – Distributed separately on HuggingFace under the MiniMax H3 Community License (not covered by Apache 2.0).
- Cite the work with the provided BibTeX entry.
TL;DR
VDN‑Minimax‑H3 is an open‑source, hybrid‑attention video diffusion model that adds a fast linear‑attention branch and tiny LoRA adapters to MiniMax H3, achieving near‑real‑time generation of high‑resolution videos. The repo supplies everything needed to run inference on a single GPU or an 8‑GPU cluster, and includes full training recipes for reproducing the model.
Related
- Project
- Project
- Project
- Project