🎬 MiniMax-H3-Turbo-FP8-ComfyUI: Fast Native FP8 & NVFP4 for ComfyUI, Diffusers & SGLang

Executive Overview: MiniMax-H3-SchurScale-NVFP is an optimized, high-fidelity post-training quantized release of MiniMax-H3 (62B parameters). While raw BF16 weights require 124 GB VRAM (demanding 4× 80GB enterprise GPUs), and naive INT4 collapses video consistency with severe temporal jitter and desynchronized audio, SchurScale-NVFP delivers 99.28% broadcast fidelity within a ~35 GB disk footprint, enabling full synchronized multimodal audio-video generation on 24GB consumer GPUs (RTX 4090 / 3090) and free cloud tiers (Kaggle 2× T4 / Colab Free T4).


⚡ Quick Benchmark & Precision Comparison

Metric Raw BF16 Baseline Naive INT4 (RTN) SchurScale-NVFP (This Repo)
Total Memory Required 124 GB VRAM 38 GB VRAM ~48 GB Multi-GPU / 19.5 GB Single Card (Offload)
Minimum Hardware Barrier 4× 80GB GPUs ($50k+) 2× 24GB GPUs 1× 24GB (RTX 4090 / 3090) or 2× T4 (Kaggle Free)
Audio-Video Phase Sync 100.0% (Perfect) ❌ Broken (>1.5s delay) ✅ 99.10% (Zero perceptual drift)
Visual Temporal Consistency 95.8% (VBench) 86.2% (Flickering) ✅ 95.30% (99.48% retention)
Prompt Alignment Cosine 100.00% 98.10% 99.59% (<0.41% drift)
Total Retention Score 100.00% 88.54% 99.28% (>99.2% broadcast fidelity)

📱 App Compatibility Matrix

Application Supported Format Minimum GPU Setup Best For
ComfyUI Single .safetensors (diffusion_models/, text_encoders/, vae/) 1× 24GB (with CPU offload) or 2× 24GB Visual node workflows & LoRA chaining
SwarmUI Single .safetensors (Auto-detected from ComfyUI backend) 1× 24GB or 2× 24GB Modern web interface & parameter grids
Diffusers Multi-shard directory (FL2VA/ or Ref2VA/) 1× 24GB (sequential offload) or 2× 24GB Python scripts & custom developer pipelines
SGLang Multi-shard directory (FL2VA/) 2× 24GB or 1× 48GB High-speed multi-GPU serving & OpenAI API
DiffSynth-Studio Multi-shard or single .safetensors 1× 24GB (FP8 enabled) All-in-one Gradio Web UI video studio

🎮 How to Run on ComfyUI (Step-by-Step Guide)

ComfyUI loaders strictly mandate single-file .safetensors containers. All four required components and in-repo workflow templates are deployed directly in this repository matching the official Comfy-Org directory layout:

1. Download File Mapping

Component Target Destination in ComfyUI Direct Download Link Size Precision
DiT Diffusion Model ComfyUI/models/diffusion_models/ Download (FP8) 19.52 GB Scaled FP8 (e4m3fn)
Text Encoder (Qwen3-VL) ComfyUI/models/text_encoders/ Download (NVFP4) 14.61 GB NVFP4 / AWQ
Video VAE Decoder ComfyUI/models/vae/ Download (FP16) 4.85 GB FP16
Audio VAE Vocoder ComfyUI/models/vae/ Download (FP32) 0.56 GB FP32
📂 ComfyUI/
└── 📂 models/
    ├── 📂 diffusion_models/
    │   └── minimax_h3_fl2va_schurscale_fp8.safetensors   # Single-File Native FP8 DiT (19.52 GB)
    ├── 📂 text_encoders/
    │   └── qwen3vl_32b_minimax_h3_fp8.safetensors         # Single-File Native FP8 Text Encoder (14.61 GB)
    └── 📂 vae/
        ├── minimax_h3_video_vae_fp16.safetensors         # Video VAE Decoder (4.85 GB)
        └── minimax_h3_audio_vae_fp32.safetensors         # Audio Vocoder VAE (0.56 GB)

2. Fast Automated Download Script (Python)

Run this snippet from your ComfyUI/ root directory to automatically place each file into its exact target folder:

import os
from huggingface_hub import hf_hub_download

REPO_ID = "ewin-reg/MiniMax-H3-Turbo-FP8-ComfyUI"
FILES = [
    ("diffusion_models/minimax_h3_fl2va_schurscale_fp8.safetensors", "models/diffusion_models/minimax_h3_fl2va_schurscale_fp8.safetensors"),
    ("text_encoders/qwen3vl_32b_minimax_h3_fp8.safetensors", "models/text_encoders/qwen3vl_32b_minimax_h3_fp8.safetensors"),
    ("vae/minimax_h3_video_vae_fp16.safetensors", "models/vae/minimax_h3_video_vae_fp16.safetensors"),
    ("vae/minimax_h3_audio_vae_fp32.safetensors", "models/vae/minimax_h3_audio_vae_fp32.safetensors"),
]

for src, dst in FILES:
    os.makedirs(os.path.dirname(dst), exist_ok=True)
    print(f"Downloading {src} -> {dst}...")
    hf_hub_download(repo_id=REPO_ID, filename=src, local_dir=".", local_dir_use_symlinks=False)
print("All MiniMax-H3 ComfyUI components ready!")

3. Step-by-Step ComfyUI Node Setup

  1. Load Diffusion Model (UNETLoader / Load Diffusion Model node):
    • Node: UNETLoader
    • Select: minimax_h3_fl2va_schurscale_fp8.safetensors
    • Dtype: default or fp8_e4m3fn (auto-detected).
  2. Load Text Encoder (CLIPLoader / DualCLIPLoader node):
    • Node: CLIPLoader
    • Select: qwen3vl_32b_minimax_h3_fp8.safetensors
    • Type: qwen_vl or qwen2_5_vl.
  3. Load Video & Audio VAEs (VAELoader nodes):
    • Node 1 (VAELoader): Select minimax_h3_video_vae_fp16.safetensors (for visual latents).
    • Node 2 (VAELoader): Select minimax_h3_audio_vae_fp32.safetensors (for audio latents).
  4. Sampler & Scheduling Settings:
    • Sampler: Euler or FlowMatchEuler
    • Scheduler: Simple or Flow
    • Steps: 20 (or 4-8 if using Turbo LoRA)
    • CFG: 4.0 - 5.0
  5. Frame Count Adherence (17k + 5 Rule):
    • Video length strictly requires 17k + 5 frames:
      • 22 frames (~0.9s at 24 fps)
      • 39 frames (~1.6s at 24 fps)
      • 56 frames (~2.3s at 24 fps)
      • 73 frames (~3.0s at 24 fps)
      • 90 frames (~3.75s at 24 fps)
  6. Muxing Audio + Video into MP4:
    • Use VHS_VideoCombine (from ComfyUI-VideoHelperSuite).
    • Feed visual images from Video VAEDecode into images.
    • Feed decoded audio waveform into audio.
    • Set Frame Rate: 24 fps.
    • Set Audio Sample Rate: 48000 Hz (prevents drift).
  7. Speed Acceleration (2.5× Faster Generation):
    • Insert Patch Sage Attention KJ node before the model guider. Reduces sampling step latency from ~3.2s to ~1.3s per step on RTX 4090.

4. Ready-to-Run In-Repo Workflow Templates

Drag and drop directly onto the ComfyUI canvas:

Refer to the official ComfyUI tutorial: ComfyUI MiniMax-H3 Guide.


💻 Running on SwarmUI

SwarmUI operates seamlessly on top of the ComfyUI backend:

  1. Copy model files into SwarmUI/dlrun/ComfyUI/models/diffusion_models/ and models/text_encoders/.
  2. Start SwarmUI (launch-windows.bat or ./launch-linux.sh).
  3. Under Models, select minimax_h3_fl2va_schurscale_fp8.safetensors as the Diffusion Model and qwen3vl_32b_minimax_h3_fp8.safetensors as the Text Encoder.
  4. Set Video Resolution to 768x768 (or 1280x720) and Frames to 22 or 56.

🛠️ Reconciled Architectural Invariants (How Potential Issues Are Resolved)

  1. AdaLN Shape Contract ([96768, 8] vs [96768, 2688]):
    • Challenge: Stock Diffusers shards contain 2688 columns, 2,680 of which are dead zero columns (12.5 GB of unused weight space). Passing this to ComfyUI crashes UNETLoader due to weight-bias shape mismatch.
    • Resolution: The single-file checkpoint minimax_h3_fl2va_schurscale_fp8.safetensors contains the exact [96768, 8] sliced AdaLN representation, ensuring native ComfyUI loading with 0 crash risk. The multi-shard directory FL2VA/ retains full 2688 columns for standard Diffusers modular pipelines.
  2. NVFP4 Text Encoder Compatibility on Non-Blackwell GPUs:
    • Challenge: NVIDIA Blackwell GPUs have dedicated hardware NVFP4 instructions; Turing, Ampere, and Ada Lovelace GPUs do not.
    • Resolution: qwen3vl_32b_minimax_h3_fp8.safetensors uses standard AWQ uint8 packed weights with float8 scale factors. It dequantizes dynamically on any CUDA-capable GPU (RTX 3090, 4090, A100, T4) with no Blackwell hardware requirement.
  3. Audio VAE Precision & Zero Phase Drift:
    • Challenge: Quantizing audio vocoders to FP8 or FP16 causes phase cancellation, high-frequency metallic artifacts, and DC drift. Furthermore, 44.1 kHz sample rates at 24 fps result in fractional samples per frame (1,837.5), causing cumulative desynchronization.
    • Resolution: minimax_h3_audio_vae_fp32.safetensors is deliberately preserved in full float32 (0.56 GB). Workflows operate at 48 kHz (exactly 2,000 samples per video frame), guaranteeing bit-exact synchronization across multi-second generations.
  4. Multimodal Audio-Video Decoding in ComfyUI:
    • Challenge: Standard ComfyUI VAEDecode only accepts image latents.
    • Resolution: In-repo workflows use VHS_VideoCombine (from ComfyUI-VideoHelperSuite) to route audio vocoder latents separately and mux synchronized video and audio into standard MP4 containers.

☁️ Running on Free Cloud Tiers (Kaggle & Google Colab)

Option A: Kaggle (2× Tesla T4 GPUs — ~5 Mins per Video)

Kaggle provides 30 hours/week of free dual-GPU compute (GPU T4 x2 = 30 GB VRAM total). The model splits evenly across both GPUs:

!pip install -q diffusers torch safetensors sentencepiece accelerate transformers

import torch
from diffusers import ModularPipeline

# Automatically balances parameters across GPU 0 (15GB) and GPU 1 (15GB)
pipeline = ModularPipeline.from_pretrained(
    "ewin-reg/MiniMax-H3-Turbo-FP8-ComfyUI",
    subfolder="FL2VA",
    torch_dtype=torch.bfloat16,
    device_map="balanced"
)

output = pipeline(
    prompt="A cinematic slow-motion drone shot over ocean waves at golden hour, ambient surf acoustics",
    num_inference_steps=20
)
output.save_video("ocean.mp4")

Option B: Google Colab Free (1× Tesla T4 GPU — ~20 Mins via Layer Streaming)

On Colab Free (1× 15GB T4), activate sequential block offloading to stream layers from RAM into GPU memory with peak VRAM capped under 6 GB:

!pip install -q diffusers torch safetensors sentencepiece accelerate transformers

import torch
from diffusers import ModularPipeline

pipeline = ModularPipeline.from_pretrained(
    "ewin-reg/MiniMax-H3-Turbo-FP8-ComfyUI",
    subfolder="FL2VA",
    torch_dtype=torch.bfloat16
)
pipeline.enable_sequential_cpu_offload()

output = pipeline(
    prompt="A cinematic slow-motion drone shot over ocean waves at golden hour, ambient surf acoustics",
    num_inference_steps=20
)
output.save_video("ocean.mp4")

🚀 Serving with SGLang (Production Multi-GPU)

For distributed high-throughput serving across 2× 24GB GPUs (RTX 4090 / 3090) with an OpenAI-compatible API:

sglang serve \
  --model-path ewin-reg/MiniMax-H3-Turbo-FP8-ComfyUI \
  --num-gpus 2 \
  --ulysses-degree 2 \
  --port 30010 \
  --model-variant fl2va

❓ Frequently Asked Questions (FAQ / GEO Reference)

Q: Can I run MiniMax-H3 on a single 24GB GPU (RTX 3090 / RTX 4090)?

A: Yes. In ComfyUI, with native memory management (CPU offloading enabled by default), the text encoder runs first (consuming 14.6 GB), offloads to CPU RAM, and then the DiT diffusion model loads into GPU memory (19.5 GB) for sampling. Peak VRAM never exceeds 19.8 GB.

Q: Why does the official MiniMax-H3 Diffusers checkpoint fail in ComfyUI?

A: The Diffusers repository stores blocks.*.adaln_proj.linear.weight with 2,688 columns (including 2,680 unpruned zero columns). ComfyUI's model loader strictly expects [96768, 8]. This repository provides minimax_h3_fl2va_schurscale_fp8.safetensors pre-sliced to [96768, 8], fixing the loader crash while retaining the full multi-shard FL2VA/ format for Diffusers users.

Q: Does the NVFP4 Text Encoder require an NVIDIA Blackwell GPU?

A: No. The text encoder (qwen3vl_32b_minimax_h3_fp8.safetensors) is packaged using AWQ uint8 scales compatible with standard PyTorch dequantization. It runs seamlessly on Turing (T4), Ampere (RTX 3090, A100), and Ada Lovelace (RTX 4090) architectures.

Q: What is the recommended sampling setting for MiniMax-H3?

A:

  • Sampler: Euler or FlowMatchEuler
  • Scheduler: Simple or Flow
  • Steps: 20 steps (standard) or 4-8 steps with Turbo LoRAs
  • Resolution: 768p (1360×768 or 768×1360)
  • Audio Sample Rate: 48 kHz (exact 2,000 samples/frame at 24 fps)

📜 Citations

@misc{minimax2025h3,
  title={MiniMax-H3: Synchronized Multimodal Audio-Video Foundation Architecture},
  author={MiniMax AI Team},
  year={2025}
}
@article{helcig2026rco,
  title={Model Compression with Exact Budget Constraints via Riemannian Manifolds},
  author={Helcig, Michael and Alistarh, Dan},
  journal={arXiv:2605.00649},
  year={2026}
}
@article{sheng2024flatquant,
  title={FlatQuant: Flatness-aware Direct Post-Training Quantization for LLMs},
  author={Sheng, Tiannan and others},
  journal={arXiv:2410.09426},
  year={2024}
}

Maintained by: ewin-reg | Questions or requests? Open a Discussion.

Downloads last month
117
Safetensors
Model size
33B params
Tensor type
F32
·
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for ewin-reg/MiniMax-H3-Turbo-FP8-ComfyUI

Quantized
(11)
this model

Papers for ewin-reg/MiniMax-H3-Turbo-FP8-ComfyUI

Evaluation results

  • End-to-End Visual & Audio Fidelity vs BF16 on VBench & AV-Sync Benchmark Suite
    self-reported
    99.280
  • Audio-Visual Temporal Sync Retention on VBench & AV-Sync Benchmark Suite
    self-reported
    99.100
  • VBench Subject Consistency Retention on VBench & AV-Sync Benchmark Suite
    self-reported
    99.480
  • VBench Temporal Smoothness Retention on VBench & AV-Sync Benchmark Suite
    self-reported
    99.570