Nodes/ComfyUI Kaola MOSS-TTS/Load MOSS-TTSD Model
ComfyUI Node

Load MOSS-TTSD Model

The 7GB dialogue model, loaded — with 4-bit and 8-bit escapes for small VRAM

By kana112233·Created 6 months ago·Updated 6 months ago· 3
Load MOSS-TTSD Model
    • moss_model
    model_path
    quantizationnone

    This is where a multi-speaker dialogue workflow starts: MossTTSDLoadModel loads MOSS-TTSD v1.0, the ~7GB text-to-spoken-dialogue model from OpenMOSS, and outputs the moss_model object that MossTTSDGenerate needs to run. If you want fake podcast hosts, an AI commentary track, or an audiobook with distinct characters, this is the model you're loading.

    The inputs

    • model_path - a single choice, OpenMOSS-Team/MOSS-TTSD-v1.0. It auto-downloads into ComfyUI/models/moss_ttsd/ on first load (that's the ~7GB download, so grab a coffee), and any folder you drop into that directory shows up here too.
    • quantization - none (default), 8bit, or 4bit. This is the knob that decides whether you need a big card. 8bit roughly halves the model's footprint; 4bit gets it down to a few GB and is the difference between "runs" and "doesn't fit" on an 8GB card. Real talk: 4-bit on a dialogue model can audibly blunt the prosody that makes this thing fun, so only drop to it if you must.

    Two caveats the loader enforces itself: quantization is GPU-only (it silently forces none on CPU), and it needs accelerate + bitsandbytes installed - the code prints a warning if those aren't there.

    How it loads

    This is the one loader in the pack with real workaround machinery in it, because MOSS-TTSD's remote code is finicky. It loads the text tokenizer with use_fast=False (to dodge a known "ModelWrapper" crash), then builds the processor manually by resolving MossTTSDelayProcessor from the model's remote code - deliberately bypassing AutoProcessor, which can crash by passing use_fast=False into the audio tokenizer. Then it loads the model itself, trying flash_attention_2 on CUDA first and falling back to sdpa if flash-attn isn't available or the load throws. Everything ends up in eval mode, bf16 on CUDA, fp32 on CPU.

    The output moss_model wires into MossTTSDGenerate's moss_model input. That generate node also needs the codec, so you'll pair this with MossAudioCodecLoadModel.

    Install

    ComfyUI Manager → search ComfyUI Kaola MOSS-TTS, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/kana112233/ComfyUI-kaola-moss-tts.git
    cd ComfyUI-kaola-moss-tts
    pip install -r requirements.txt
    

    Hard requirements worth knowing before you start: transformers>=5.0.0, and the README's recommended GPU setup is a fresh Python 3.12 environment with pip install flash-attn --no-build-isolation. If you skip flash-attn it still works - it just falls back to SDPA attention.

    Where people get burned: loading this (7GB) and a VoiceGenerator (~3GB) in the same workflow without quantization, then wondering why they OOM'd. The pack can do a lot of things in one graph; it can't do all of them in 8GB of VRAM.

    CategoryKaola/MOSS-TTSD

    Inputs (2)

    NameTypeDefaultDescription
    model_pathCOMBO1 options: OpenMOSS-Team/MOSS-TTSD-v1.0
    quantizationCOMBOnone3 options: none, 8bit, 4bit

    Outputs (1)

    NameTypeDescription
    moss_modelMOSS_TTSD_MODEL