MiniMax H3-World Model Composer / 模型组合 (T8)
The H3-World LoRA loader that also installs the secret runtime
- model
- model
- report_json
If you've loaded H3-World workflows, this node is doing more than the name suggests. On the surface it's a LoRA loader for the H3-World control LoRA - swap it in wherever you'd normally put a LoraLoaderModelOnly. But it also installs two things a stock LoRA loader can't: the per-action text refiner segmentation and the directed FlexAttention runtime that make the per-latent action control work at all. In other words, this node is the reason the whole H3-World trick functions.
What you're actually loading
The workflow needs the model at ComfyUI/models/loras/minimax/H3-World/step-10000.safetensors. Easiest path is the pre-organized pack from the author's HF repo:
hf download t8star/Minimax-H3-World-Comfy --include "loras/**" --local-dir ComfyUI/models
That drops the LoRA in the right relative folder. It's already ComfyUI-loadable 104-pair A/B weights, byte-identical to the original DANNY621/H3-World release at a pinned revision - nothing converted, merged or quantized. If you grab the original from elsewhere, get it into that exact folder or just pick it from the node's lora_name dropdown instead.
Inputs
model- a native ComfyUI MiniMax H3 FL2VA model, straight from your diffusion model loader. Don't pass an already-OpenVDN'd or already-World'd model; this node wants the clean base.lora_name- the dropdown, defaulting to the H3-World LoRA.strength_model- default 1.0. This is the trained-strength control LoRA; resist cranking it to 1.5 to "make it more obvious." The node's report will tell you if something's off.compile_flex_attention- defaulttrue, and the tooltip's "Recommended" is right. The directed attention that keeps action sentence N glued to latent N is a custom FlexAttention pass, and the first run compiles one shape-specific kernel. Keep it on; the one-time compile hiccup is worth the speed on every frame after.
Why the plain LoRA loader isn't enough
The H3-World LoRA shapes the model, but the per-latent action binding lives in how text is segmented and attended to. Each action sentence has to be refined and steered toward exactly one latent region - otherwise "camera pans left" at latent 5 bleeds into the whole clip and you're back to regular H3 prompting. This node composes the LoRA and installs that segmentation + directed-attention runtime on top of the model, then hands the prepared model out.
Wiring
You'll use it exactly once per chain, right after loading your H3 base model:
Model loader → MiniMaxH3WorldModelComposerT8Advanced → sampler (with conditioning from MiniMaxH3WorldI2VAConditioningT8Advanced)
Follow the examples/workflows/26-h3-world example and don't improvise: the README is explicit that you should not layer OpenVDN, SLA, VSA, Sol-Attn, BlockCache or any other model/attention takeover node onto the H3-World chain. Those all fight over the same branches this runtime just claimed. This is the "more speed nodes = faster" trap wearing its worst disguise - it usually produces a conflict error or quietly wrong output, not a speedup.
Install and expectations
Same shared install as every node in the pack: ComfyUI Manager (search "MiniMax H3 Audio T8") or clone into custom_nodes, restart. No new pip packages. You need a recent ComfyUI with native H3 support - if the node shows red, update ComfyUI, the frontend and Manager first, then do a full exit and relaunch.
Then set expectations: H3-World is one fixed contract (832×480, 124 frames, first-frame I2VA). It passed an anonymous blind test on a fixed parking-garage sample - stable motion, matched quality - but that's one contract, not a promise for arbitrary characters, actions, or VRAM sizes. MiniMax H3 itself is a 33B model that's genuinely heavy, so on a 16GB card run this chain alone and nothing else at the same time.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | Native ComfyUI MiniMax H3 FL2VA MODEL. | |
| lora_name | COMBO | 1 options: minimax\H3-World\step-10000.safetensors | |
| strength_model | FLOAT | 1.000–2 | — |
| compile_flex_attention | BOOLEAN | true | Recommended. First run compiles one shape-specific FlexAttention kernel. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| report_json | STRING | — |