MiniMax H3 Batch Patch ⚡
MiniMax H3 only samples one clip at a time. This node quietly fixes that.
- model
- MODEL
MiniMax H3's diffusion transformer is built around a flat sequence - text, conditioning rows and the AV streams all get packed into one [S, hidden] tensor with no batch axis at all. Ask it for batch_size of 2 and it raises, because the batch dimension simply doesn't exist in its math. This node patches around that limitation in the model's forward pass so you can sample multiple videos per job.
What it actually does
MiniMaxH3BatchPatch is the simplest kind of node there is: a MODEL in, a patched MODEL out. It wraps diffusion_model.forward so each batch row runs as its own full forward pass, then concatenates the stream outputs. The source is explicit about what that buys you: it's mathematically identical to sampling the rows separately, but you share one model load, one conditioning encode, and one sampler pass. Peak VRAM stays at the batch-1 level, and step time scales with the batch.
That last part is the whole pitch. Running three clips in one queue with this patch costs roughly the same VRAM as running one, at the price of ~3x the sampling time. If you're generating a set of H3 clips overnight or in a batch, that's a massive win over loading the 33B model three times.
Pair it with the right empty latent
The patch is half of a pair. You set batch_size > 1 on Empty MiniMax H3 AV Latent (Batch), route the model through this node, and the sampler gets a batched latent it can actually process. Use this node on an H3 model while sampling a latent from a different model's empty node and you're just patching something that doesn't need it - harmless, but pointless. And there's a sibling trap to avoid: LTX-2.5's DiT is batch-aware natively, so it needs no patch node at all; this one is specifically for MiniMax H3.
The one input
model- a MiniMax H3 diffusion model (typically from the CCTech pack's H3 loaders). The tooltip says it plainly: patch it when sampling an AV latent withbatch_size > 1.
One output
MODEL- the same model with the batch-loop patch applied. Feed this into your sampler in place of the unpatched model.
Installing it
Part of the ComfyUI-GGUF-Loader pack, under 🤖 CCTech/MiniMax H3. ComfyUI Manager → Install Custom Nodes → search "ComfyUI-GGUF-Loader" → install → restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/ChrisColeTech/ComfyUI-GGUF-Loader
cd ComfyUI-GGUF-Loader
pip install -r requirements.txt
Common issues
The main one is forgetting it exists: you set batch_size to 4, the empty-latent node happily builds a 4-wide latent, and then the sampler dies with a batch-axis error because the model wasn't patched. If you see that, check your chain - the patch node has to sit between the model and the sampler. Beyond that there isn't much to tune: it's a plumbing node, and when it's wired right you should forget it's there.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | MiniMax H3 diffusion model. Patch it when sampling an AV latent with batch_size > 1 from Empty MiniMax H3 AV Latent (Batch). |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |