Nodes/ComfyUI_AIIA/Qwen3-Model Router (Bundle)
ComfyUI Node

Qwen3-Model Router (Bundle)

Bundle Your Qwen TTS Models

By havvk·Created about a year ago·Updated 6 months ago· 13
Qwen3-Model Router (Bundle)
  • qwen_default
  • qwen_base
  • qwen_custom
  • qwen_design
  • qwen_bundle

The Qwen3-TTS family has a frustrating split: the Base model is great at 3-second voice cloning but can't do text-driven voice design, while the VoiceDesign model is the opposite, and CustomVoice handles the built-in preset timbres. For a dialogue with "Speaker A cloned, Speaker B invented from a description", you need two different models feeding one conversation. Qwen3-Model Router (Bundle) is the tiny node that makes that possible: it bundles several loaded Qwen models into one pipe, and the Qwen dialogue node picks the right one per speaker.

How it works

It has no required inputs and one output. You connect up to four QWEN_MODEL objects into its optional slots - qwen_default, qwen_base, qwen_custom, qwen_design - and it packages them into a single qwen_bundle output. That bundle plugs into the Qwen3-TTS Dialogue (Specialist) node's single qwen_model input.

The naming is the roadmap: qwen_base for cloning, qwen_custom for the built-in presets (Vivian, Dylan…), qwen_design for text-designed voices, and qwen_default as the fallback when a speaker mode doesn't have a dedicated model. In the dialogue node, speaker A running in Clone mode pulls from the base model while speaker B in Design mode pulls from the design model - no rewiring needed mid-conversation.

The one hard rule: at least one model must be connected. Wire it up empty and it raises a clear error (At least one Qwen model must be connected) instead of silently doing nothing.

Why this exists

Before the router, the dialogue node took a single QWEN_MODEL, which forced you to pick one model family for the whole script. The router is what unlocks the mixed scenario - and it matters because Qwen3-TTS's variants really are that different. Community experience backs this up hard: voice clone "never works" for people who loaded a CustomVoice model expecting cloning, and VoiceDesign ignores style prompts when you're on the wrong variant. The router makes the right-tool-per-job setup explicit instead of a footgun.

The inputs that matter

The mapping is the whole game:

  • qwen_base → speakers in Clone mode (needs speaker_X_ref audio).
  • qwen_custom → speakers in Preset mode.
  • qwen_design → speakers in Design mode.
  • qwen_default → what every other speaker mode falls back to.

You don't need all four. A podcast that clones both speakers only needs qwen_base (plus qwen_default for safety). Add qwen_design only when a character gets a text-designed voice.

Install & troubleshooting

Standard pack install: havvk/ComfyUI_AIIA via ComfyUI Manager or git clone https://github.com/havvk/ComfyUI_AIIA.git into custom_nodes/, restart. The node itself is pure plumbing - the real work is loading each Qwen model (they auto-download to ComfyUI/models/qwen_tts/Qwen/ on first use; manual download instructions are in the README). If a speaker comes out sounding like a different variant than you picked, check which slot their mode routes to - that's the usual mix-up.

CategoryAIIA/Loaders

Inputs (4)

NameTypeDefaultDescription
qwen_defaultoptQWEN_MODEL
qwen_baseoptQWEN_MODEL
qwen_customoptQWEN_MODEL
qwen_designoptQWEN_MODEL

Outputs (1)

NameTypeDescription
qwen_bundleQWEN_MODEL