MiniMax H3 Dynamic Guidance / 动态引导 (Advanced)
CFG on H3 is expensive — this guider makes you say yes first
- model
- positive
- sigmas
- negative
- guider
- runtime
- report_json
Classic CFG guidance runs the model twice - positive and negative - and on a 33B joint audio-video transformer, that's a doubling of an already-expensive forward. Most H3 workflows therefore skip CFG entirely and rely on the flow schedule. MiniMaxH3DynamicCFGGuiderT8Advanced is T8mars' H3 guider that makes the expensive stuff opt-in: by default it's a pure pass-through that changes nothing, and it only does something clever when you explicitly consent to the cost.
The three modes
- passthrough_basic (default) - behaves exactly like ComfyUI's BasicGuider. If you connect this node and change nothing else, your sampling math is unchanged. That's the design promise, and it's worth trusting: the pack's advanced nodes are append-only by policy.
- single_condition_gain_exp - applies one device-side sigma-dependent gain to the single-condition route. This is not true CFG; it's a shaped multiplier on your positive conditioning over
early_scale→late_scalebetweenstart_progressandend_progresson alinearorcosinecurve. Cheap, no negative needed, and honestly the mode most people should try first if they want a "livelier H3" feel. - true_cfg_exp - the real two-branch CFG: a
negativeconditioning (layout-matched to your positive - H3 conditionings carry media structure, so mismatches produce junk) and both branches executed. This one costs a second forward per step, which is why it demandsaccept_true_cfg_cost = truebefore it'll run.
The consent flags (why they exist)
accept_true_cfg_cost gates the two-branch mode. accept_turbo_guidance_ood gates applying a non-identity guidance curve to an 8-step Turbo profile - the pack's way of saying "you're leaving the profile's tested envelope, out-of-distribution, on purpose." Both default off. This isn't bureaucracy for its own sake; H3 forwards are the most expensive thing in your workflow, and the README is full of "this material passed, this one didn't" honesty about exactly these experiments.
Inputs and outputs
model, positive, and sigmas are required; negative is optional (needed only for true CFG). shift_video (12) / shift_audio (3) mirror the sampler's clocks, and profile selects which sampling contract you're on (turbo_standard8 default). Outputs: guider (wire it into your sampler's guider input), runtime (feed to the Audit node), and report_json.
Installing it
From MiniMax H3 Audio T8. Manager search MiniMax H3 Audio T8, or:
cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8
restart. No forced pip deps; H3 weights to models/ yourself. H3 weights' Community License excludes the US, EU, UK, South Korea.
The trap
Don't wire a negative in and assume you're getting CFG - in the default mode that negative is ignored. And if true_cfg_exp silently refuses to engage, it's the consent flag: accept_true_cfg_cost must be true and the negative must match the positive's layout. If your true-CFG runs come out worse, that's not the node lying - it's CFG semantics doing CFG things on a joint model, which is exactly why the pack made it experimental rather than default.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| positive | CONDITIONING | — | |
| sigmas | SIGMAS | — | |
| mode | COMBO | passthrough_basic | 3 options: passthrough_basic, single_condition_gain_exp, true_cfg_exp |
| early_scale | FLOAT | 1.000.8–1.2 | — |
| late_scale | FLOAT | 1.000.8–1.2 | — |
| start_progress | FLOAT | 0.000–0.99 | — |
| end_progress | FLOAT | 1.000.01–1 | — |
| curve | COMBO | linear | 2 options: linear, cosine |
| shift_video | FLOAT | 12.000.01–100 | — |
| shift_audio | FLOAT | 3.000.01–100 | — |
| profile | COMBO | turbo_standard8 | 5 options: turbo_standard8, turbo_ema8, turbo_fl2v8, stock20, custom_strict |
| accept_true_cfg_cost | BOOLEAN | false | Required for the two-branch true-CFG experiment. |
| accept_turbo_guidance_ood | BOOLEAN | false | Required before applying a non-identity guidance curve to an 8-step Turbo profile. |
| negativeopt | CONDITIONING | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| guider | GUIDER | — |
| runtime | H3_T8_DYNAMIC_GUIDANCE_RUNTIME | — |
| report_json | STRING | — |