Nodes/TTS Audio Suite/⚙️ ChatterBox Official 23-Lang Engine
ComfyUI Node

⚙️ ChatterBox Official 23-Lang Engine

One model, 23 languages, no swapping

By diodiogod·Created about a year ago·Updated 4 days ago· 1,177
⚙️ ChatterBox Official 23-Lang Engine
    • TTS_engine
    model_versionv3
    languageEnglish
    deviceauto
    exaggeration0.5
    temperature0.80
    cfg_weight0.50
    repetition_penalty1.2
    min_p0.05
    top_p1.00

    This is the grown-up ChatterBox. Where the community-model engine loads a separate finetune per language, this one is ResembleAI's official multilingual model - 23 languages baked into a single checkpoint, and you switch between them with a parameter instead of reloading a whole model. If you're doing anything multilingual, this is the ChatterBox you want. It's the same lineage that ResembleAI benchmarked against closed systems like ElevenLabs, it's MIT-licensed, and it landed to a lot of interest when "ChatterBox now supports 23 languages" made the rounds.

    Like every engine in the suite, it's a configurator: it outputs a TTS_ENGINE, and the actual speech happens over in 🎤 TTS Text or 📺 TTS SRT.

    How it works

    One model holds all the languages, so [En:Alice] Hello [De:Hans] Guten Tag [Es:Maria] ¡Hola! in your TTS Text prompt switches language and voice inline without the model-reload stall you get from community finetunes. That's the practical win: language switching is a parameter flip, not a disk load. Zero-shot voice cloning works across all 23 languages from a few seconds of reference audio, and the clone comes from the TTS Text side (via narrator_voice or Character Voices), not from this node.

    The inputs and outputs that matter

    The two you'll actually set:

    • model_version (default v2) - v2 is the current tokenization with the experimental emotion/sound tokens; v1 is the plain original. There are also two community finetunes in the dropdown, Vietnamese (Viterbox) and Egyptian Arabic (oddadmix). Just leave it on v2 for normal use.
    • language (default English) - the language to speak. 23 options plus Vietnamese. This is the whole reason you're here.

    The generation knobs matter less but exist:

    • exaggeration (0–5, default 1) - expressiveness, same idea as classic ChatterBox but a wider range. 1 is a fine baseline.
    • temperature (default 0.8) - randomness; keep it near default.
    • cfg_weight (default 0.5), repetition_penalty (default 2), min_p (default 0.05), top_p (default 1) - the fine-tuning sampler controls. The 23-Lang model exposes more of these than the community engine; you can mostly ignore them until a specific voice is misbehaving, then nudge repetition_penalty up if it loops or min_p if it rambles.

    Single output: TTS_engine, straight into TTS Text or TTS SRT.

    Installing it

    Part of TTS Audio Suite, so you install the pack. ComfyUI Manager is easiest: search TTS Audio Suite, install, restart - Manager runs install.py, which sorts out the dependency tangle (NumPy, librosa, s3tokenizer) and Python 3.13. Manual: cd ComfyUI/custom_nodes && git clone https://github.com/diodiogod/TTS-Audio-Suite.git, then python install.py inside the folder with your venv active (run the script, don't just pip-install requirements). Linux needs portaudio19-dev libsamplerate0-dev. The official model (~4.3GB) auto-downloads on first use into ComfyUI/models/TTS/chatterbox_official_23lang/, and v1/v2 coexist in that same folder.

    Common issues

    • The v2 emotion/sound tokens barely do anything. The README is blunt about this: the <laughter>, <whisper>-style special tokens are experimental and often produce "minimal or no audible effects" - ResembleAI hasn't documented them and there's an open upstream issue. Don't build a workflow that depends on them working; treat them as a maybe.
    • Perth watermarking. The official model can embed an inaudible watermark for responsible-use tracking. The suite ships it disabled by default for compatibility, but it's worth knowing it exists if you care either way.
    • Picking the wrong ChatterBox. If you only ever generate English and want the maximum community-finetune quality for a specific language, the community ⚙️ ChatterBox TTS Engine may suit you better. Use this node when you need multiple languages in one workflow without model-swap latency.
    • First run is slow. That's the 4GB+ download, not a hang. Watch the console.
    CategoryTTS Audio Suite/⚙️ Engines

    Inputs (9)

    NameTypeDefaultDescription
    model_versionCOMBOv3ChatterBox model version: • v3: Latest opt-in official multilingual checkpoint; skips the legacy alignment analyzer and trims the final token artifact • v2: Upstream default multilingual checkpoint with the suite's v2 special-token support • v1: Original 23-language model • Vietnamese (Viterbox): Community finetune optimized for Vietnamese • Egyptian Arabic (oddadmix): Community finetune optimized for Egyptian Arabic (requires 'Arabic' language selection)
    languageCOMBOEnglishChatterBox language model to use for text-to-speech generation. Local models are preferred over remote downloads.
    deviceCOMBOautoDevice to run ChatterBox model on: • auto: Automatically select best available (MPS on Apple Silicon, CUDA on NVIDIA, XPU on Intel, CPU fallback) • cuda: NVIDIA GPU (requires CUDA-capable GPU) • xpu: Intel GPU (requires Intel PyTorch XPU) • cpu: CPU-only processing (slower) • mps: Apple Metal Performance Shaders (Apple Silicon Macs only)
    exaggerationFLOAT0.50–5Emotion exaggeration value passed to the model. V3 uses the native value directly, but current V3 weights show little or no audible response. Legacy v1/v2 keep the suite's historical scaling workaround.
    temperatureFLOAT0.800.05–5Controls randomness in ChatterBox generation. Higher values = more creative/varied speech, lower values = more consistent speech.
    cfg_weightFLOAT0.500–1Classifier-Free Guidance weight for ChatterBox. Controls how strongly the model follows the text prompt.
    repetition_penaltyFLOAT1.21–5Penalty for repeated tokens. Higher values reduce repetition in generated speech.
    min_pFLOAT0.050–1Minimum probability threshold for token selection. Lower values allow more diverse tokens.
    top_pFLOAT1.000–1Nucleus sampling threshold. Controls the probability mass of tokens to consider.

    Outputs (1)

    NameTypeDescription
    TTS_engineTTS_ENGINE