Nodes/ComfyUI-FL-Qwen3TTS/FL Qwen3 TTS Voice Clone Prompt
ComfyUI Node

FL Qwen3 TTS Voice Clone Prompt

Clone once, generate forever — precompute your voice prompt

By filliptm·Created 7 months ago·Updated 2 days ago· 149
FL Qwen3 TTS Voice Clone Prompt
  • model
  • ref_audio
  • voice_clone_prompt
x_vector_only_modefalse
ref_text

Every time the Voice Clone node runs, it re-extracts the speaker embedding from your reference audio. That's a chunk of work you pay for on every generation - which is dumb if you're cloning once and generating twenty lines of dialogue. This node exists to fix exactly that. You run it once on the reference clip, it hands you a voice_clone_prompt, and you feed that prompt into every Voice Clone call after it. The clone node detects the prompt and skips straight to generation.

Think of it as the "cache the prompt" node for voice - same energy as precomputing embeddings in the image world. For a single generation it's pointless overhead. For a batch, a loop, or a character who talks a lot, it's the difference between waiting on the extraction and not.

How it works

Same requirements as Voice Clone: a Base model (Qwen3-TTS-12Hz-1.7B-Base, or the 0.6B Base). The node runs the reference audio through the model's create_voice_clone_prompt - encoding the audio to speech codes and extracting the speaker embedding - and packages it into a VOICE_CLONE_PROMPT object. Wire that into Voice Clone's optional voice_clone_prompt input and the generate call reuses the prebuilt prompt instead of rebuilding it.

The inputs

  • model - the Base-model connection from the Model Loader. Non-negotiable.
  • ref_audio - your reference clip, same 5–15 second clean-speech guidance as Voice Clone.
  • x_vector_only_mode - must match what you'll use in Voice Clone. false (default) builds an ICL-mode prompt that includes the reference text and speech codes; true builds a speaker-embedding-only prompt.
  • ref_text - the transcript of the reference clip. Required when x_vector_only_mode is false - the node will error if you leave it empty, because an ICL-mode prompt without the reference text is incomplete. Wire the Transcribe node here to avoid typing it.

Output: one voice_clone_prompt (VOICE_CLONE_PROMPT).

Installing

Same as the rest of the pack. ComfyUI Manager, search "FL Qwen3 TTS", or:

cd ComfyUI/custom_nodes
git clone https://github.com/filliptm/ComfyUI-FL-Qwen3TTS.git
cd ComfyUI-FL-Qwen3TTS
pip install -r requirements.txt

Restart. First run downloads the Base model into ComfyUI/models/tts/Qwen3TTS/.

Gotchas

The two things that bite: forgetting ref_text when the mode flag is off (instant error, easy fix), and building the prompt with one x_vector_only_mode setting then using it with a different one in Voice Clone - the modes don't mix, so keep them consistent. Also, a prompt is tied to the reference audio and model you built it with. Swap the reference clip and the prompt is stale; rebuild it. This node is purely a convenience for multi-generation workflows - if you're doing one-off clones, skip it and use Voice Clone directly.

CategoryFL/Qwen3TTS

Inputs (4)

NameTypeDefaultDescription
modelQWEN3TTS_MODEL
ref_audioAUDIO
x_vector_only_modeBOOLEANfalse
ref_textoptSTRING

Outputs (1)

NameTypeDescription
voice_clone_promptVOICE_CLONE_PROMPT