Nodes/ComfyUI_AIIA/IndexTTS-2 Loader
ComfyUI Node

IndexTTS-2 Loader

The Loader With a Small Mountain of Models Behind It

By havvk·Created about a year ago·Updated 6 months ago· 13
IndexTTS-2 Loader
    • indextts_model
    use_fp16true
    use_cuda_kerneltrue
    model_dir

    IndexTTS-2 is Bilibili's open-source TTS model that made a name for itself in 2025 for zero-shot voice cloning with decoupled voice and emotion - you can crank the emotion without the speaker's timbre drifting. Several ComfyUI wrappers exist for it; this is the one that rides inside the AIIA pack. The loader itself is simple - two toggles and one optional path. The setup hidden behind it is not, and that's where people quit.

    What the inputs do

    • use_fp16 (default on) - half-precision inference. Keep it on unless you're fighting accuracy issues; it halves VRAM and speeds things up.
    • use_cuda_kernel (default on) - the BigVGAN vocoder's custom CUDA kernel. NVIDIA-only, and genuinely faster. If you're on AMD or hit a build error, flip it off and fall back to the standard vocoder path.
    • model_dir - override the model folder. Empty means it looks in ComfyUI/models/indextts2/, which is where you want your files anyway.

    Output is a single indextts_model object that feeds the pack's IndexTTS-2 TTS node.

    The model situation (read this before installing)

    IndexTTS-2 doesn't ship as one file. The main checkpoint (gpt.pth, s2mel.pth, config, plus the Qwen emotion LLM) needs four external sub-models to actually synthesize: MaskGCT (semantic codec), Campplus (speaker embedding), BigVGAN (vocoder), and W2V-BERT 2.0 (speech encoder). The README's full one-shot is roughly:

    cd ComfyUI/models
    HF_ENDPOINT=https://hf-mirror.com huggingface-cli download IndexTeam/IndexTTS-2 --local-dir indextts2
    cd indextts2
    huggingface-cli download amphion/MaskGCT semantic_codec/model.safetensors --local-dir .
    huggingface-cli download funasr/campplus campplus_cn_common.bin --local-dir .
    huggingface-cli download nvidia/bigvgan_v2_22khz_80band_256x --local-dir bigvgan_v2_22khz_80band_256x
    huggingface-cli download facebook/w2v-bert-2.0 --local-dir w2v-bert-2.0 --exclude "*.pt"
    

    (The HF_ENDPOINT=https://hf-mirror.com prefix is for users in China, where the mirror is dramatically faster - safe to drop elsewhere.) If a sub-model is missing, the node falls back to downloading it from HuggingFace on first run into your cache - which works but makes the first load slow and flaky. Get them all into indextts2/ yourself and loading is fully offline.

    Two more things that surprise people:

    • The pack ships compatibility patches so IndexTTS-2 works on modern transformers (the official code was written against 4.52 and breaks on current versions). Keep the pack updated and stop worrying about pinning transformers.
    • The first load compiles WeTextProcessing's FST grammar for Chinese text normalization - that's a 3–5 minute one-time wait that looks like a hang. It's not broken, it's compiling.

    Install

    Standard pack install: havvk/ComfyUI_AIIA via ComfyUI Manager or git clone https://github.com/havvk/ComfyUI_AIIA.git into custom_nodes/, restart. Grab the models above, and if the loader still throws, check models/indextts2/ for a config.yaml - the node copies one from its bundled libs if it's missing, so don't panic if you didn't download one.

    CategoryAIIA/Loaders

    Inputs (3)

    NameTypeDefaultDescription
    use_fp16BOOLEANtrueUse half-precision for lower VRAM and faster inference.
    use_cuda_kernelBOOLEANtrueUse BigVGAN custom CUDA kernel for faster vocoder inference (NVIDIA GPU only).
    model_diroptSTRINGOverride model directory. Leave empty to use ComfyUI/models/indextts2/.

    Outputs (1)

    NameTypeDescription
    indextts_modelINDEXTTS_MODEL