Nodes/TTS Audio Suite/⚙️ Higgs Audio 2 Engine
ComfyUI Node

⚙️ Higgs Audio 2 Engine

The voice-cloning one people actually recommend

By diodiogod·Created 12 months ago·Updated 18 days ago· 1,098
⚙️ Higgs Audio 2 Engine
  • opt_second_narrator
  • tts_engine
modelhiggs-audio-v2-3B
deviceauto
multi_speaker_modeCustom Character Switching
system_promptGenerate audio following instruction.
temperature0.8
top_p0.60
top_k80
max_new_tokens2048
force_audio_genfalse
ras_win_len7
ras_max_num_repeat2
enable_cuda_graphstrue
runtime_mode⚠️ Shared Runtime

When someone in an r/StableDiffusion thread asks "what actually clones a voice well," Higgs Audio is the name that keeps coming up. That's its niche in this suite: high-fidelity zero-shot voice cloning from a reference clip. Feed it 30-odd seconds of clean audio of a target voice and it'll speak new text in something convincingly close. It's a ~9GB, 3B-parameter model, and it earns the download.

Same pattern as every engine here: this node is the configuration, not the generator. It outputs a TTS_engine that you plug into 🎤 TTS Text or 📺 TTS SRT. Those nodes hold the text; this one holds the model settings.

How it works

You point it at the model, pick a multi-speaker mode, and set your sampling knobs. The reference voice itself comes in through the TTS Text/SRT node (via a voice file or a Character Voices node), and Higgs conditions its generation on that reference. One thing worth doing that the node itself flags in its tooltip: provide reference text along with your reference audio. Higgs clones noticeably better when it knows what the reference clip is saying, so a matching transcript is worth the effort. For multi-speaker work it offers a Custom Character Switching mode plus two native conversation modes that generate a dialogue in one shot.

The inputs and outputs that matter

  • model - one option, higgs-audio-v2-3B. Nothing to decide.
  • multi_speaker_mode - Custom Character Switching (the default, per-character generation with full tag support), or one of the two Native Multi-Speaker modes (Conversation / System Context) for single-pass dialogue.
  • system_prompt - a plain-language instruction to the model. The default "Generate audio following instruction." is a fine baseline.
  • temperature / top_p / top_k - the usual creativity dials. Higher temperature = more variation, more risk of a weird take. Defaults are reasonable; nudge, don't yank.

The advanced set is mostly leave-alone: ras_win_len and ras_max_num_repeat govern the model's repetition-avoidance sampling (they stop it from getting stuck looping a sound - defaults are fine), max_new_tokens caps segment length, and force_audio_gen forces output even when the model would otherwise stay quiet. enable_cuda_graphs (default on) is the speed feature - it's what lets Higgs hit 55+ tokens/sec on a capable GPU. Keep runtime_mode on the default Shared Runtime.

Output is a single tts_engine → wire it into TTS Text or TTS SRT.

Installing it

Ships with the pack. ComfyUI Manager"TTS Audio Suite" → install → restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/diodiogod/TTS-Audio-Suite.git
cd TTS-Audio-Suite
python install.py

The Higgs models (generation model + tokenizer, ~9GB) auto-download to ComfyUI/models/TTS/HiggsAudio/ on first run.

Common issues & troubleshooting

The clone doesn't sound like the target. Two usual causes. First, no reference transcript - add the exact text of your reference clip and quality jumps. Second, a rough reference: Higgs wants a clean, ~30-second, single-speaker clip with no music or noise underneath. Garbage in, uncanny out.

Repetition or stuck sounds. That's what the RAS parameters exist to prevent, so if you've been fiddling with them, put ras_win_len and ras_max_num_repeat back to defaults before blaming the model.

CUDA graphs error out. On some setups the graph capture is fragile. If you get a crash on generation, turn enable_cuda_graphs off - you lose the speed boost but it'll run.

First run stalls. It's downloading ~9GB. Watch the console; it's a one-time cost, cached afterward.

Which cloning engine, honestly? For faithful cloning of a specific voice, Higgs is the one to try first - it's widely rated ahead of VibeVoice for that specific job. If instead you want ninety minutes of natural multi-speaker reading and don't need a tight clone, VibeVoice is the better tool. Pick by the job.

CategoryTTS Audio Suite/⚙️ Engines

Inputs (14)

NameTypeDefaultDescription
modelCOMBOhiggs-audio-v2-3BHiggs Audio 2 model selection: • higgs-audio-v2-3B: Main 3B parameter model with best quality and voice cloning capabilities • Future models will appear here when available The model handles voice cloning, multi-speaker generation, and natural speech synthesis.
deviceCOMBOautoComputation device selection: • auto: Automatically select best available (MPS on Apple Silicon, CUDA on NVIDIA, XPU on Intel, CPU fallback) • cuda: Force GPU acceleration (requires NVIDIA GPU with CUDA) • xpu: Intel GPU acceleration (requires Intel PyTorch XPU) • cpu: Force CPU-only processing (slower but works on any hardware) • mps: Apple Metal Performance Shaders (Apple Silicon Macs only) Recommended: Leave on 'auto' unless you have specific hardware requirements.
multi_speaker_modeCOMBOCustom Character SwitchingIMPORTANT: Each mode requires different text formats! • Custom Character Switching: ⭐ MAIN METHOD - Use ANY character names like [Alice], [Bob], [Narrator]. Each segment generated separately with character-specific voice files from voices folder. Supports [pause:2] tags. Most flexible and reliable. • Native Multi-Speaker (Conversation): Higgs Audio 2's native mode. MUST use [SPEAKER0] and [SPEAKER1] tags only! Requires opt_second_narrator input. NO pause tag support. • Native Multi-Speaker (System Context): ⚠️ EXPERIMENTAL - Higgs Audio 2's native mode. MUST use [SPEAKER0] and [SPEAKER1] tags only! May produce audio artifacts. NO pause tag support.
system_promptSTRINGGenerate audio following instruction.System instruction that guides how Higgs Audio 2 generates speech: • Default: 'Generate audio following instruction.' - Works for most cases • Custom examples: - 'Speak clearly and slowly.' - For clearer pronunciation - 'Generate dramatic, emotional speech.' - For expressive delivery - 'Speak in a calm, professional tone.' - For business/formal content This is an advanced parameter - the default usually works best unless you need specific speech characteristics.
temperatureFLOAT0.80–2🌡️ Controls speech creativity and randomness: • 0.0-0.5: Very predictable, robotic speech (not recommended) • 0.6-0.8: 🎯 RECOMMENDED - Conservative, natural speech with excellent consistency • 1.0: Balanced natural variation but less consistent • 1.2-1.5: More expressive, varied pronunciation and pacing • 1.8-2.0: Highly creative but potentially unstable 0.8 provides the best balance of natural speech and consistency.
top_pFLOAT0.600.1–1🎯 Nucleus sampling - controls vocabulary diversity: • 0.1-0.3: Very limited vocabulary, may sound repetitive • 0.5-0.7: 🎯 RECOMMENDED - Focused vocabulary for consistent, clear pronunciation • 0.8-0.9: More varied speech patterns but less consistent • 0.95-1.0: Maximum vocabulary diversity, may include rare pronunciations 0.6 provides excellent consistency while maintaining natural speech variation.
top_kINT80-1–100🔢 Limits vocabulary choices per word: • -1: Disabled (uses only top_p) • 10-30: Very focused, consistent pronunciation • 40-60: Balanced consistency and variation • 70-90: 🎯 RECOMMENDED - Broader vocabulary pool for natural speech • 95-100: Maximum vocabulary freedom, more diverse but potentially inconsistent Works with top_p (0.6) to provide good vocabulary range while maintaining consistency.
max_new_tokensINT20481–4096🔤 Maximum token limit - safety cap on generation length: ⚠️ This is a LIMIT, not a target. Model stops when audio is complete OR limit is reached. • <10 tokens: ⚠️ May cause errors or cut off mid-word • 200-500: Safe for short sentences, faster processing • 1000-2048: 🎯 RECOMMENDED - Handles most content safely • 3000-4096: For very long paragraphs only For normal text like 'Hello Bob', 200 vs 2048 makes no difference - same quality and length. Only matters for very short limits (causes truncation) or very long text (needs higher limits).
force_audio_genBOOLEANfalse🎵 Force Audio Generation: • False: 🎯 RECOMMENDED - Model naturally chooses to generate audio tokens • True: Force model to generate audio tokens rather than text tokens ⚠️ Only enable if model is generating text instead of audio. Usually not needed as the model should naturally generate audio for TTS requests.
ras_win_lenINT70–20🪟 RAS Window Length - Repetition Avoidance Sampling window size: • 0: Disable RAS completely (may cause repetitive speech) • 3-5: Very strict repetition control (may sound unnatural) • 7: 🎯 RECOMMENDED - Good balance of natural speech and repetition control • 10-15: Looser repetition control, more natural but may repeat • 20: Very loose control, natural speech but potential repetition RAS prevents the model from repeating the same audio patterns within a sliding window.
ras_max_num_repeatINT21–5🔄 RAS Max Repetitions - Maximum allowed repetitions within RAS window: • 1: No repetitions allowed (very strict, may sound choppy) • 2: 🎯 RECOMMENDED - Allow minimal repetition for natural speech flow • 3: Allow moderate repetition (more natural but some repetition) • 4-5: Allow significant repetition (natural speech but potential repetitive patterns) Works with RAS Window Length to control speech repetition patterns.
opt_second_narratoropt*Second narrator voice for native multi-speaker modes. Used as SPEAKER1 voice when multi_speaker_mode is set to Native Multi-Speaker. Only needed for native modes, ignored in Custom Character Switching mode. First narrator (from Character Voices or TTS Text) becomes SPEAKER0.\n\n💡 TIP: Reference text significantly improves Higgs Audio voice cloning quality - always provide reference text with voice files.
enable_cuda_graphsoptBOOLEANtrue⚡ CUDA Graph Optimization: • True (High Performance): 55+ tokens/sec generation speed with safe VRAM unloading. CUDA graphs auto-recreate on next generation. Recommended for best performance. • False (Memory Safe): ~12 tokens/sec generation speed (78% slower), but uses no CUDA graphs. Use if you encounter any issues or need to minimize memory fragmentation. ✅ Both modes now support safe 'Unload Models' - CUDA graphs are automatically managed.
runtime_modeoptCOMBO⚠️ Shared RuntimeIMPORTANT: Higgs Audio 2 is not stable enough on the main Transformers 5 environment right now. Runtime Isolation: • Main Environment: Use the main ComfyUI Python environment • Shared Runtime: Use the existing shared legacy Transformers 4 runtime already used by VibeVoice/Qwen Why this matters: • The main ComfyUI env is on Transformers 5 • Higgs Audio 2 previously worked on the old T4 stack • Shared runtime reuses that older stack without downgrading the whole app ⚠️ First run may create or refresh the shared secondary runtime and take a while.

Outputs (1)

NameTypeDescription
tts_engineTTS_ENGINE