license: other
license_name: minimax-h3-community
license_link: LICENSE
base_model: FastVideo/FastVideo-Minimax-FastH3-Preview-v0.2
tags:
- video-generation
- minimax-h3
- lora
- distillation
- few-step
- comfyui
MiniMax H3 FastH3 4-Step LoRA (ComfyUI)
LoRA extraction of FastVideo-Minimax-FastH3-Preview-v0.2, the 4-step DMD2 distillation of MiniMax-H3 FL2VA, as the weight difference against the base Comfy-Org fl2va release. Apply to any fl2va base model to sample in 4 steps instead of 50; guidance-distilled, so cfg 1.0.
Files
| file | for | size |
|---|---|---|
loras/..._lora_pruned_rank128_fp16 |
minimax_h3_fl2va_pruned_* bases (recommended) |
1.33 GB |
loras/..._lora_pruned_rank64_fp16 |
same, smaller | 0.71 GB |
loras/..._lora_full_max256_avg253_fp16 |
full (non-pruned) fl2va bases only | 5.06 GB |
The pruned and full variants are not interchangeable: the adaln projections differ between the two base layouts (see below).
Usage
Standard LoRA Loader (model only) at strength 1.0 on the matching fl2va base, then sample with
4 steps, euler, simple scheduler, cfg 1.0 (this reproduces the trained ladder
[999, 749, 500, 250] under the model's shift-12/3 schedule). Other step counts are
off-distribution per the FastVideo model card. fl2va / t2va only; there is no ref2va student.
Extraction
Layer-by-layer SVD of the weight difference (student minus base), following the
KJNodes LoraExtractKJ recipe: rank 256 standard,
bias diffs included, no quantile clamp, fp16 output, with exact svd_linalg instead of
svd_lowrank. Lower ranks are truncations of the same SVD. Norm weights ship as .diff,
biases as .diff_b.
Two things specific to this model:
- Pruned adaln refit. The pruned bases replace the time embedder with an 8-dim curve table,
so ordinary adaln LoRA keys cannot apply there. The pruned variant instead refits the student's
adaln projections onto the base's
adaln_t_table(least squares over the 1025-point grid, residual ~1e-5) and stores them as exact.diffkeys, tiny at[out, 8]. - The delta is mostly not low-rank. FastH3 is a full fine-tune saved in bf16; each layer's difference is a strong low-rank head plus a flat rounding-dither tail no rank can carry. The LoRA captures the distillation direction well but is not a perfect stand-in for the full checkpoint.
Measured on a live 4-step run (960x544, 73 frames, same seed/prompt, PSNR vs the actual FastH3 checkpoint; ceiling is the same student under a different quantization):
| run | PSNR |
|---|---|
| base, no LoRA | 14.6 dB |
| base + rank 64 | 17.1 dB |
| base + rank 128 | 17.6 dB |
| base + rank 256 | 17.7 dB |
| FastH3 itself, different quant (ceiling) | 19.9 dB |
Rank 128 is the sweet spot; rank 256 adds almost nothing at double the size. Visually all ranks land on FastH3's composition and sharpness.
Credits
- FastVideo (hao-ai-lab) for the FastH3 distillation
- MiniMax-H3 (MiniMax) and the Comfy-Org repack used as the base
- Kijai for the extraction recipe and node math
- Extraction planned, executed, and verified with the help of Claude (Claude Fable 5, via Claude Code)
Distributed under the MiniMax H3 Community License (see LICENSE), inherited from the base model. Review its territory and acceptable-use terms before use or redistribution.