Nodes/ComfyUI-Qwen3-TTS/Qwen3-TTS Clone Prompt 🧠
ComfyUI Node

Qwen3-TTS Clone Prompt 🧠

Analyze your reference audio once

By wanaigc·Created 7 months ago·Updated 7 months ago· 113
Qwen3-TTS Clone Prompt 🧠
  • model_obj
  • ref_audio
  • voice_clone_prompt
x_vector_onlyfalse
ref_text参考音频里的具体内容文本。

If you've tried cloning a voice with Qwen3-TTS the naive way - reference audio straight into a Voice Clone node - you've probably noticed something annoying: every time you change the target text, it re-analyzes the reference clip from scratch. Same audio, same analysis, wasted minutes. This node exists to break that cycle. Feed it your reference audio once, get back a reusable voice_clone_prompt, and from then on every generation is just text in, audio out.

The README calls the two approaches "快速模式" (quick mode) and "高效模式" (efficient mode), and it flat-out recommends the efficient one. This node is that mode.

What it does

Qwen3TTSVoiceClonePrompt turns a reference recording into the compact voice representation Qwen3-TTS uses for cloning. The output is a QWEN3_PROMPT - not audio, but a model-usable prompt object - which you can feed into a Voice Clone node's voice_clone_prompt input, hand to the Role Bank for a named character, or save with the Prompt Manager so you never need the original clip again. It's the asset that makes the pack's whole "voice as a saved file" workflow possible.

The inputs that matter:

  • model_obj - must be a Base model. The node enforces this (Model Mismatch if you feed it a CustomVoice model).
  • ref_audio - your reference clip. A clean 5–8 second sample works well in practice; that's the territory other zero-shot cloners live in too.
  • ref_text - the transcript of what's said in the clip. Required... unless...
  • x_vector_only - the escape hatch. Turn this on and it skips the text entirely and clones from the voiceprint (the README's "X-Vector 纯声纹模式"). You get slightly lower similarity, but you don't need to know what the clip says. Handy when the reference is a language you can't transcribe, or a clip you found without a script.

Output: voice_clone_prompt (QWEN3_PROMPT).

How it works

Mechanically it's thin: it flattens the ComfyUI AUDIO into a numpy waveform, then calls create_voice_clone_prompt() on the loaded model with your (audio, text) pair (or textless, in x-vector mode). The heavy lifting is inside Qwen3-TTS itself - this is where the model builds its speaker embedding. That's also why it's slow enough to be worth caching: the analysis runs once here instead of on every regeneration.

Fitting it into a workflow

Qwen3TTSLoader (Base) ─┬─> Qwen3TTSVoiceClonePrompt ─> voice_clone_prompt
                       │         ▲                          │
Load reference audio ──┘    ref_audio / ref_text            ▼
                                                    Qwen3TTSVoiceClone (target text)

Wire the voice_clone_prompt into a Voice Clone node's prompt input, and you can hammer out different target texts without touching the reference again. The pack also added [pause:0.5] support to the generated prompts, so even cached voices can hold a beat.

Gotchas

  • Don't have a transcript? Two roads: tick x_vector_only, or run the clip through this pack's SenseVoice ASR node to transcribe it and feed the text back in as ref_text. The second route keeps full similarity.
  • Emotion is the weak spot. Community testing of Qwen3-TTS cloning found the identity comes through strongly but emotion/acting instructions tend to come out neutral or inconsistent - and x_vector_only is slightly worse on expressiveness. If you need an angry or whispering take, budget for multiple seeds and some instruct fiddling.
  • Base model only, remember. Clone nodes won't accept a CustomVoice-model model_obj, and neither will this one.
  • It needs the same heavy install as the rest of the pack: clone + pip install -r requirements.txt, and let the model download once. There's no per-node install here - it's all one pack, one dependency stack.
CategoryQwen3-TTS

Inputs (4)

NameTypeDefaultDescription
model_objQWEN3_MODEL
ref_audioAUDIO
x_vector_onlyBOOLEANfalse
ref_textoptSTRING参考音频里的具体内容文本。

Outputs (1)

NameTypeDescription
voice_clone_promptQWEN3_PROMPT