Add the community Turbo nodes to a working H3 ComfyUI baseline, render usable clips at 6–8 steps, and follow a controlled fallback order when VRAM runs out.
Original: ComfyUI-MiniMax-H3-Turbo
Larryvrh · Source
Run MiniMax-H3 —
joint video + synchronized audio — in as few as 4 sampling steps instead
of ~20, with the
MiniMax-H3 Turbo LoRA.
Two nodes drop straight into the official H3 workflow (text-to-video and
image-to-video):
Which checkpoint — v4 (600) or v1 (850)?
For most work, use minimax_h3_turbo_v4_step600_ema.safetensors (from the
LoRA repo). It's the
strongest checkpoint so far: much better static / small-motion shots, markedly
better micro-detail (faces, fingers, texture), and the over-sharpening / plastic
look of the earlier v1 (~850) line is fully resolved.
v4 introduced a static-frame enhancement. The one trade-off shows up only at
4 steps with large, fast motion, where v4 can produce motion-smear / trailing
ghosting (actively being fixed). Using 6–8 steps largely removes it — and v4
tolerates higher step counts better than v1 (which over-sharpens at high steps +
strength 1.0). For the narrow case of 4 steps and heavy motion, the older
v1 ~850 checkpoint can still be friendlier.
Using 6–8 steps? ── yes ──► v4-600 (recommended)
│ no (4 steps)
▼
Heavy / fast motion? ── no ──► v4-600 (recommended)
│ yes
▼
v1-850 (friendlier at 4-step heavy motion)Still a preview — the two areas still being improved are audio and fast,
intense motion.
Install
Via ComfyUI-Manager — search "MiniMax-H3 Turbo" and install. Or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/larryvrh/ComfyUI-MiniMax-H3-Turbo
Then restart ComfyUI. Keep the node updated (Manager, or git pull) — it evolves
alongside the weights.
Put the LoRA .safetensors into ComfyUI/models/loras/. You also need the base
MiniMax-H3 model, VAEs and text encoder from the official release — see the
MiniMax-H3 tutorial.
Use
Start from the official MiniMax-H3 workflow (t2v or i2v) and make two changes:
- Insert MiniMax-H3 Turbo LoRA between the model loader and the sampler
(… → Load Diffusion Model → MiniMax-H3 Turbo LoRA → SamplerCustomAdvanced),
and pick the turbo .safetensors.
- Feed SamplerCustomAdvanced from MiniMax-H3 Turbo Sampler, and set the
scheduler node (BasicScheduler) to simple at ≥ 4 steps.
Everything else — conditioning, VAE decode, audio output — stays as in the
official graph, so both t2v and i2v work unchanged. A ready-made t2v workflow
is in example_workflows/ — drag it
into ComfyUI to see the wiring.
Steps and strength
- 4 steps is the recommended minimum; 4–8 is the useful range. 6–8 steps
look noticeably better than 4, so add steps if you can afford them. Past 8
steps it stops helping and can start to introduce over-sharp artifacts —
no benefit to going higher, so stay in 4–8.
- Keep strength at 1.0. It's tuned for 1.0 and holds up across the 4–8 step
range. Only reach for the dial if a specific clip misbehaves: blurry ghosting
/ smear → nudge up (~1.05–1.2), over-sharp grain → nudge down
(~0.8–0.95).
- Keep the scheduler on simple.
Base model & low_vram
Base model — works with any MiniMax-H3 base: full (bf16, int8_convrot)
and the pruned/curve variants (pruned_int8, pruned_fp8). The node detects a
pruned base automatically and re-injects the LoRA's time-conditioning at run time
(a small silu(t_emb) grid ships with the node for this), so one LoRA file
covers every base.
low_vram (node switch) trades sharpness for peak VRAM:
- off (default) — applies the LoRA at run time (bypass): sharpest, recommended,
a little extra peak VRAM.
- on — merges the LoRA into the weights: lowest peak VRAM, so smaller GPUs run
and longer / higher-res clips fit, but the result is softer on quantized
(int8 / fp8 / pruned) bases (the tiny update is partly rounded away when
folded into the quantized weights).
The node streams the base model, so it runs on much smaller GPUs than the ~33 B
size suggests — an 80 GB GPU is only needed for the largest resolutions in bypass
mode. If you hit out-of-memory, turn low_vram on and/or lower the resolution
or frame count.
Why a custom sampler (and how it adapts)
MiniMax-H3 denoises the video and audio streams on two different flow schedules
(video shift 12, audio shift 3). Recent ComfyUI handles this natively — its
ModelSamplingAV carries the audio latent on the video schedule — so a stock
sampler already produces correct audio there. On older ComfyUI without that
support, a stock sampler steps both streams on one schedule and badly over-steps
the audio at 4 steps, so the audio comes out distorted.
This node's sampler auto-detects which ComfyUI it's on: on recent builds it
steps as a plain single-schedule sampler (bit-for-bit the stock result); on older
builds it steps each stream on its own clock so audio stays clean at 4 steps. Keep
it in the workflow and it does the right thing across ComfyUI versions — nothing to
change when you update. (On recent ComfyUI a stock euler also works; the Turbo
Sampler just keeps existing graphs running unchanged.)
Notes
- Resolution / length: width and height are multiples of 32 (short edge
typically 768); frame count is at 24 fps and snaps to the model's 17·k+5 grid
(124 ≈ 5 s). Validated range ~124–362 frames.
License
Apache-2.0.
In depth · Source checked: 2026-09-06 · Site testing: No generation test performed
Separate memory limits from speed: establish a baseline, then test Turbo alone. The video demonstrates nodes and the repository documents plugin settings.
Local generation uses your own hardware, RAM and storage. See the original model and tool terms.
Links lead to the original workflows, models or examples. Supply your own reference assets where needed. This generation workflow has not been independently run by this site.
Larryvrh H3 Turbo · v4 step600 EMA · Native template Turbo and plugin Turbo use different setup paths
Troubleshooting
The new nodes do not appear in search
Confirm the repository is under custom_nodes, inspect startup import errors, and fully restart.
Four-step output smears or loses audio quality
Return to eight steps at strength 1.0 and remove Spectrum or EasyCache from the comparison.
Reference audio triggers a tensor-size mismatch
Check Issue #27 and merged PR #16, update the Turbo nodes and fully restart. If it persists, return to the official reference workflow without Turbo; low_vram is not an established fix.
Out of VRAM: generation stops
Reduce resolution and frame count, then enable low_vram as described in the Turbo README. Merging LoRA into a quantized base can soften output; compare against the native baseline.