Nodes/comfyui-minimax-h3-audio-T8/MiniMax H3 Audio Refine Model Route / 音频精修双模型路由 (T8 Advanced EXP)
ComfyUI Node

MiniMax H3 Audio Refine Model Route / 音频精修双模型路由 (T8 Advanced EXP)

When your audio-refine pass needs a different model, this router validates the pairing

By T8mars·Created about a month ago·Updated about 20 hours ago· 1,023
MiniMax H3 Audio Refine Model Route / 音频精修双模型路由 (T8 Advanced EXP)
  • audit
  • first_pass_model
  • refine_model
  • refine_model
  • route
  • decision
  • report_json
route_strategysame_turbo_stack
declared_first_pass_nfe4

The single-model Audio Refine chain is great when the same model that made the video can fix the audio. But a lot of real pipelines don't work that way - you generate with a Turbo LoRA, then want the refine pass to run on the base model without the LoRA, or you want a different Turbo stack for the tail. Mixing models across a refine is where things quietly go wrong, because two "same-looking" H3 models can be different under the hood in ways the sampler can't tell you about. This node is the router that binds the two models together - or refuses to.

It sits at the head of the dual-model branch: Audit → Model Route → Phase 2 Plan → Dual-Model Setup → SamplerCustomAdvanced → Quality Gate. It takes the audited first-pass model and the refine model you want to use, and checks that the pairing is real before anyone wastes a run: it compares runtime base and patch UUIDs, the weight-patch structure, and the LoRA metadata. The design word that matters is fail closed - if the stacks don't match what it knows how to pair, it rejects rather than guesses. A wrong model pairing in an audio refine doesn't usually error; it just sounds subtly broken, which is worse.

Inputs and outputs

  • audit - from the Audio Refine Audit node
  • first_pass_model - the model the original pass ran on
  • refine_model - the model you want for the refine tail
  • route_strategy - combo, default same_turbo_stack; the explicit strategy options describe which pairing you're declaring (same Turbo stack vs. base-without-Turbo)
  • declared_first_pass_nfe - fixed at 4, the number of NFE you're declaring for the first pass, which the route validates against

Outputs: refine_model (the model actually sanctioned for the tail), route (an H3_T8_AUDIO_REFINE_MODEL_ROUTE object for the Phase 2 Plan), a decision, and report_json explaining the binding or the rejection.

Installing it

Part of the T8mars/comfyui-minimax-h3-audio-T8 pack - search "MiniMax H3 Audio T8" in ComfyUI Manager, install, restart, or:

cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8.git minimax-h3-audio-T8

Update ComfyUI itself first (recent core: comfy_api.latest, comfy.weight_adapter, comfy.patcher_extension, comfy.ldm.minimax); requirements.txt is intentionally empty.

Where people get burned

Mostly, this node exists to protect you from the burn. The two failure shapes are: (1) declaring a strategy that doesn't match reality - say, picking same_turbo_stack when your refine model has no Turbo LoRA - and getting a rejection you have to read carefully to decode; and (2) assuming that because the README's rule says "don't mix FL2VA/Ref2VA/pruned/full bases," matching names means matching stacks. Base-variant mismatches are exactly what the UUID/patch check catches. If you get a rejection, treat report_json as the message: it's telling you why the two models aren't the pairing you claimed. The fix is almost always "use the matching base for both," not "force the route through."

CategoryT8/MiniMax H3/Audio/Experimental

Inputs (5)

NameTypeDefaultDescription
auditH3_T8_AUDIO_REFINE_AUDIT
first_pass_modelMODEL
refine_modelMODEL
route_strategyCOMBOsame_turbo_stack2 options: same_turbo_stack, base_without_turbo
declared_first_pass_nfeINT44–4

Outputs (4)

NameTypeDescription
refine_modelMODEL
routeH3_T8_AUDIO_REFINE_MODEL_ROUTE
decisionSTRING
report_jsonSTRING