Qwen3-TTS Synthesis
The node that actually talks
- qwen_model
- reference_audio
- audio
The Loader picks which Qwen3-TTS you're using; this node is where text becomes an actual audio tensor. Wire a qwen_model in, type a sentence, and out the other end comes speech - and if you've loaded the right model variant, you can make it sound like your voice, a stranger's voice, or a voice that doesn't exist yet. This is the highest-leverage part of the Qwen3-TTS story, so it's worth knowing which knobs actually matter.
What you set most of the time
- text - what it says. Chinese and English both work, and the model handles the rest of the language list too.
- language -
Autohandles it, but pinning it (Chinese, English, Japanese, Korean, German, French, Russian, Portuguese, Spanish, Italian) removes ambiguity. - speaker - the nine built-in presets (Vivian, Serena, Uncle_Fu...). Only meaningful with a CustomVoice model.
- instruct - the star feature. It's a natural-language style field: "生气且激动的。" or "Very happy and excited." The README's tip: end the instruction with a period, and you can stack them ("angry and excited"). With a VoiceDesign model, this field is your voice sculptor - describe the timbre directly.
- reference_audio + reference_text - the clone path, for Base models. A few seconds of clean audio and the model does a zero-shot clone;
reference_texthelps it align (leave empty and it switches to zero-shot automatically).
The rest of the panel
There's a sampler panel (seed, speed, cfg_scale default 1.5, temperature, top_k, top_p) - you can mostly leave those alone and dial them only when output gets robotic. max_batch_char (default 1000) controls how much text the node feeds per batch; bump it for long reads, drop it if you're fighting VRAM. emotion and dialect are preset dropdowns (19 dialects including Cantonese, Shanghainese, Sichuanese...) that do the same job as writing the instruction by hand - convenient if you don't want to remember the phrasing.
How it behaves per model
The README's capability table is worth internalizing: Base = clone, no emotion control. CustomVoice = presets + emotion + dialect, terrible clone. VoiceDesign = describe a voice, best dialect/emotion fidelity. If you loaded a Base model and type "sad," nothing happens - that's not a bug, it's the model family. And on the 0.6B CustomVoice, VoiceDesign-style descriptions work unusually well, which is a nice surprise for a small model.
Output and wiring
One output: audio (AUDIO). From here it can go to AIIA Audio Post-Process for the mastering chain (resample, de-alias, normalize), into the AIIA dialogue pipeline, or straight to a save/preview node.
Troubleshooting
- Instructions ignored - check which model family you loaded; Base ignores them by design.
- Clone sounds off - feed cleaner, longer reference audio, and remember Base is the only model that clones well.
- It's slow - the 1.7B models want Flash Attention 2, and
max_batch_charat 1000 keeps batches small; raise it if you want the model to chunk less.
Inputs (18)
| Name | Type | Default | Description |
|---|---|---|---|
| qwen_model | QWEN_MODEL | — | |
| text | STRING | 你好,这是 Qwen3-TTS 的测试。 | — |
| language | COMBO | Chinese | 11 options: Auto, Chinese, English, Japanese, Korean, German, +5 |
| speakeropt | COMBO | Vivian | 9 options: Vivian, Serena, Uncle_Fu, Dylan, Eric, Ryan, +3 |
| voice_presetopt | COMBO | None | Built-in voice preset for Base/Clone models. Used when no reference_audio is connected. Auto-enables zero-shot mode. |
| instructopt | STRING | — | |
| reference_audioopt | AUDIO | — | |
| reference_textopt | STRING | — | |
| zero_shot_modeopt | BOOLEAN | false | — |
| emotionopt | COMBO | None | 20 options: None, Happy (开心), Sad (悲伤), Angry (愤怒), Excited (兴奋), Gentle (温柔), +14 |
| dialectopt | COMBO | None | 19 options: None, Mandarin (普通话), Cantonese (粤语), Shanghainese (上海话), Sichuanese (四川话), Northeastern (东北话), +13 |
| seedopt | INT | 42-1–2147483647 | — |
| speedopt | FLOAT | 1.000.5–2 | — |
| cfg_scaleopt | FLOAT | 1.51–10 | — |
| temperatureopt | FLOAT | 0.80.1–2 | — |
| top_kopt | INT | 200–100 | — |
| top_popt | FLOAT | 0.950–1 | — |
| max_batch_charopt | INT | 1000100–32768 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| audio | AUDIO | — |