Raon OpenTTS Load Model
The Raon OpenTTS loader, and what int8-convrot actually buys you
- raon_model
Every TTS pack needs a loader, and this one is where the interesting decisions live. Raon OpenTTS Load Model doesn't just load a checkpoint - it decides which checkpoint you're running, at what precision, on what device, with what attention backend, and whether to grab it from Hugging Face when it's missing. It's the first node in any Raon-OpenTTS workflow, and the only thing it outputs is a raon_model object that you feed into Raon OpenTTS Generate (Voice Clone).
The build question, front and center
The loader reads from ComfyUI/models/raon_opentts, where the 1B and 0.3B sizes live in separate folders, and each comes in three flavors: fp32, bf16, and int8-convrot. You'll notice the fp32 files aren't even listed in the dropdown - they're the archival conversion reference, not something you run. So your real choice is:
int8-convrot(the default) - 1.41 GB for the 1B. The DiT's linear layers stay INT8-resident and execute through comfy-kitchen's quantized kernels; no dequantize-to-bf16 at load. Roughly 66% of the 1B model's params are quantized, at about 1% mel deviation from bf16. On the README's numbers that's ~1.7 GB peak VRAM during inference versus 2.4 GB for bf16 and 4.5 GB for fp32.- bf16 - 2.08 GB, the full-precision runtime build. Use it if you want zero quantization weirdness and you've got the headroom; it's the safer default for quality-critical work.
So the pitch is the usual one, and it holds: INT8 is basically bf16 with a much smaller footprint, and this is a TTS model - the last thing you want to starve your VRAM for when it's the cheap part of the pipeline anyway. If you have any GPU at all, reach for int8-convrot first.
The other knobs
dtype (auto/bf16/fp32) controls compute precision for the DiT - auto picks bf16 on supported cards. Note that INT8 weights stay INT8 and their scales stay fp32 no matter what you set here. device is auto/cuda/cpu, and cpu is genuinely a fallback, not a recommendation.
attention is the one worth knowing about: auto uses flash-attention (FA2) when it's installed and you're on half precision, otherwise it drops to torch SDPA. The upstream model defaults to SDPA, and FA2 is numerically equivalent within bf16 rounding - it mostly helps on long generations. sageattention is there if you have it, running as an SDPA patch. For everyone else: leave it on auto.
Downloads and memory management
download_if_missing (on by default) is the nicest touch in this pack: it fetches only the exact build you selected, plus its config/vocab and the HiFi-GAN vocoder, from drbaph/Raon-OpenTTS-comfyui on Hugging Face - never the whole repo. The loader also registers the model with ComfyUI's memory management (it picks up AIMDO DynamicVRAM if you have it, otherwise falls back to static ComfyUI management), which is why the INT8 build can sit in so little VRAM while your image models are also loaded.
Installing
ComfyUI Manager will find "ComfyUI-Raon-OpenTTS", or:
cd ComfyUI/custom_nodes
git clone https://github.com/Saganaki22/ComfyUI-Raon-OpenTTS
# restart ComfyUI
Its requirements are the standard TTS stack - torchdiffeq, transformers, accelerate, huggingface_hub, plus comfy-kitchen for the INT8 kernels. If you pick an int8 build and something errors at load about comfy-kitchen, that's your missing piece; the pip deps install alongside the pack but a stale environment is the usual culprit. First run downloads the weights into ComfyUI/models/raon_opentts, so give the console a moment before you assume it's hung. From there, wire raon_model into Generate and you're done.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| weights | COMBO | Raon-OpenTTS-1B-int8-convrot.safetensors | Checkpoint file from ComfyUI/models/raon_opentts (0.3B and 1B in separate folders). int8-convrot is the quantized build (smallest, runs through comfy-kitchen INT8 kernels); bf16 is the half-precision reference. The fp32 extraction is conversion reference only and is not listed. With download_if_missing on, only the selected build (plus its config/vocab and the vocoder) is downloaded — never the whole repo. |
| dtype | COMBO | auto | Compute/storage dtype for the DiT. auto picks bf16 on supported GPUs. INT8 weights always stay INT8 and their scales fp32 regardless of this choice. |
| device | COMBO | auto | Device for inference. auto follows ComfyUI's current torch device; cpu is a slow fallback. |
| attention | COMBO | auto | Attention backend for the DiT blocks. auto uses flash_attn (FA2) when installed with half-precision compute, otherwise torch SDPA. sageattention patches SDPA at generation time. |
| download_if_missing | BOOLEAN | true | Download the HiFi-GAN vocoder into ComfyUI/models/raon_opentts when missing. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| raon_model | RAON_OPENTTS_MODEL | — |