Nodes/BlueMagpie TTS/BlueMagpie Model Loader
ComfyUI Node

BlueMagpie Model Loader

The 8 GB door to Taiwanese Mandarin TTS

By endman100·Created 2 months ago·Updated 2 months ago· 1
BlueMagpie Model Loader
    • model
    • model_info
    model_pathOpenFormosa/BlueMagpie-TTS
    deviceauto

    Most open TTS is English-first. Kokoro, Chatterbox, F5 - read the release threads and they're all narrating to an anglophone. When you need real Traditional Chinese, Taiwanese Mandarin, or Mandarin sentences that casually drop English words into the middle, your options thin out fast. BlueMagpie-TTS is one of the few open models aimed squarely at that gap, and BlueMagpie Model Loader is how you get it into a ComfyUI graph. It's a loader and nothing else - the pack's other half, BlueMagpie TTS, does the talking.

    What it does is simple: point at the model, pick a device, get a BLUE_MAGPIE_MODEL handle. Two inputs, both dropdowns:

    • model_path - defaults to OpenFormosa/BlueMagpie-TTS. The loader checks your local model folders first (it registers bluemagpie as a model type and also watches llm/LLM and anything you've mapped in extra_model_paths.yaml). Only when it can't find a complete local copy does it download the public Hugging Face release.
    • device - auto, cuda, mps, or cpu. Auto picks CUDA when torch sees a GPU, then Apple Silicon MPS, then CPU. Pick cuda or mps explicitly and it throws a clear error instead of silently falling back when the hardware isn't there - the right behavior when you're running a headless render and don't want to discover the CPU fallback by listening to the output.

    The download is the headline. First run grabs about 8 GB into ComfyUI/models/bluemagpie/OpenFormosa/BlueMagpie-TTS/, and the loader insists on five specific files: config.json, pytorch_model.bin, audiovae.pth, tokenizer.json, and checkpoints/speaker_centroids.pt - that last one is what the built-in speakers in the TTS node use. If the snapshot lands incomplete, it tells you exactly which file is missing instead of failing mysteriously halfway through generation.

    Outputs: model (the BLUE_MAGPIE_MODEL you feed into BlueMagpie TTS) and model_info, a JSON string with the resolved path, device, sample rate, and the list of speakers it found. It's a handy sanity check that you're actually on CUDA before you start blaming the audio. The loader also caches the loaded model keyed by path + device, so re-queuing the graph doesn't reload 8 GB of weights every time.

    Installing it

    Both nodes ship in one pack. ComfyUI Manager - search "BlueMagpie TTS" (or ComfyUI-BlueMagpie-TTS) and install - or by hand:

    cd ComfyUI\custom_nodes
    git clone https://github.com/endman100/ComfyUI-BlueMagpie-TTS
    python -m pip install -r ComfyUI-BlueMagpie-TTS\requirements.txt
    

    Then restart ComfyUI. The requirements pull the upstream bluemagpie-tts package pinned to a specific commit (that's where the heavy machinery - torch, transformers, librosa - lives, and most of it ComfyUI already ships) plus soundfile. Python 3.10–3.12 is supported. The author tested on Windows with Python 3.12.8 and an RTX 5090, but upstream documents Linux and macOS and Windows is officially "experimental." MPS on Apple Silicon works.

    Gotchas

    The first run looks like a hang while 8 GB downloads - give it time. If you already have the model elsewhere, drop the folder into ComfyUI/models/bluemagpie/ and the download never fires. One honest note: this is a very new pack with essentially no community footprint yet, so treat smooth sailing as a bonus and check the GitHub issues when something odd happens. You're early to this one.

    Categoryaudio/BlueMagpie TTS

    Inputs (2)

    NameTypeDefaultDescription
    model_pathCOMBOOpenFormosa/BlueMagpie-TTSUses a local ComfyUI model folder first; downloads the public Hugging Face model when absent.
    deviceCOMBOauto4 options: auto, cuda, mps, cpu

    Outputs (2)

    NameTypeDescription
    modelBLUE_MAGPIE_MODEL
    model_infoSTRING