ComfyUI Node

Qwen3-TTS 1.7B Base

Clone a voice from a 3-second clip — Qwen3-TTS as a ComfyUI node

By Runware·Created 2 years ago·Updated about a month ago· 140
Qwen3-TTS 1.7B Base
  • speech
  • audioSettings
  • audio
audio
numberResults1
settings.maxNewTokens2048
settings.transcript
settings.xVectorOnlyfalse
ttlfalse
ttl_value60
outputFormatMP3

Qwen3-TTS 1.7B Base is Alibaba's voice-cloning model, and this node is its ComfyUI front-end. You hand it a short reference clip of a voice and the text to speak, and it reads the text back in that voice. Alibaba's own marketing claims 3-second cloning across ten languages, and the community reaction at launch was genuinely warm - with the running complaint that, like most of Alibaba's newer models, it's API-only (the "can't count to 3 in open weights" joke gets a workout here). So this node isn't an alternative to a local TTS setup; it's the way you get at a model you can't download.

Two things set it apart from naive voice-clone tools. First, the input audio is a STRING - a Runware-hosted UUID or URL - not a ComfyUI AUDIO socket, because the audio never has to come through your graph to reach the API. Second, it gives you a real choice about how the clone works, via settings.xVectorOnly.

What you set

speech (the text to say, via a RUNWARE_SPEECH input) and audio (reference clip) are both required. The knobs:

  • settings.xVectorOnly - the big one. true uses only a speaker embedding from the reference clip: simple, no transcript needed, lower similarity. false (default) uses ICL mode - the model learns from the reference audio's actual speech patterns, which needs a settings.transcript of that reference audio and gives noticeably better fidelity. If your reference clip is clean speech, write the transcript and use ICL.
  • settings.maxNewTokens - audio output token cap (default 2048). Higher = longer output but the tooltip warns it "risks hangs." Don't crank it to infinity.
  • settings.transcript - required for ICL mode, optional otherwise.
  • numberResults - variations, each a billed run.

Output is audio as an AUDIO dict (waveform + sample rate) → Save Audio. outputFormat MP3/WAV/FLAC/OGG.

Installing

Part of the Runware/ComfyUI-Runware pack.

ComfyUI Manager: search Runware, install, restart.

Manual:

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

Deps are runware-sdk, pillow, soundfile; no model files. Runware API key from runware.ai/api-keys (Settings panel or RUNWARE_API_KEY).

Where people get burned

The xVectorOnly trap is the classic one: people skip the transcript, leave ICL mode on, and the clone sounds off - then blame the model. If you won't write the transcript, flip xVectorOnly on instead; it's the correct setting for a lazy-but-decent clone. Also, because the reference audio is a URL/UUID, a local file on your disk won't work - host it or upload via Runware first. And remember this is a voice clone: it's great for narration and characters, and you should be sensible about whose voice you're cloning and what you do with it.

CategoryRunware/Audio/alibaba

Inputs (10)

NameTypeDefaultDescription
speechRUNWARE_SPEECH
audioSTRINGAudio input (UUID or URL).
audioSettingsoptRUNWARE_AUDIOSETTINGS
numberResultsoptINT11–4Number of results to generate. Each result uses a different seed, producing variations of the same parameters.
settings.maxNewTokensoptINT2048Audio output token cap. Higher values allow longer audio but risk hangs.
settings.transcriptoptSTRINGTranscript of the reference audio. Required for ICL mode, optional for x-vector-only mode.
settings.xVectorOnlyoptBOOLEANfalseIf true, uses speaker embedding only (no transcript needed, lower similarity). If false, uses ICL mode (requires transcript, higher quality).
ttloptBOOLEANfalseEnable to set ttl. Off uses the model's default.
ttl_valueoptINT60Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.
outputFormatoptCOMBOMP3File format for the generated audio.

Outputs (1)

NameTypeDescription
audioAUDIO