FL CosyVoice3 Model Loader
Every CosyVoice workflow starts here — the loader that fetches the ~2GB model for you
- model
The door to the whole pack
The name tells you what it does, and that's fine - there's nothing glamorous about a model loader, but this one is the difference between CosyVoice working and a wall of "missing node" errors. Every other node in the FL CosyVoice3 pack takes a model input that only this node produces. You wire its output into Zero-Shot Clone, Cross-Lingual, Voice Conversion, Dialog, or the speaker nodes, and that's the whole pack assembled.
The reassuring part for beginners: nothing here calls an API and nothing needs a key. The loader downloads an actual open-weights model to your machine and runs inference locally. No accounts, no rate limits, no 400 error because your token expired.
The one choice that matters
There are three model_version options and you can basically ignore two of them:
- Fun-CosyVoice3-0.5B - the default and the one you want. About 2GB.
- CosyVoice2-0.5B - the older sibling, still supported by the pack's nodes.
- CosyVoice-300M - listed in the dropdown, and the README is blunt: "won't work well, do not use." Believe it.
That last warning is worth taking at face value. The 300M model is the lightweight CosyVoice1, and the pack is built around the v3 formatting; it's not the quality you're after.
How it works
First time you run the workflow, the loader pulls the model snapshot from HuggingFace (the default download_source) or ModelScope into ComfyUI/models/cosyvoice/<version>/, then loads it. Next run, it checks whether the config plus the llm.pt and flow.pt weights already exist, and skips the download entirely. If the primary source fails, it quietly tries the alternate - genuinely handy if you're in a region where HuggingFace is glacially slow.
Two optional inputs are worth knowing: force_redownload (flip to true if a download corrupted and the model won't load) and force_reload (drop the cached instance and load fresh after you've poked at files). device defaults to auto, which follows whatever ComfyUI is running on - CPU and Apple MPS are officially supported, but "supported" and "runs well" are different things. 8GB+ VRAM is the comfortable spot, and the README suggests 16GB+ RAM.
Install
ComfyUI Manager is the easy route: search "FL CosyVoice3" and hit install. For the manual crowd:
cd ComfyUI/custom_nodes
git clone https://github.com/filliptm/ComfyUI_FL-CosyVoice3.git
cd ComfyUI_FL-CosyVoice3
pip install -r requirements.txt
Restart ComfyUI after. The requirements list is a wall - transformers, onnxruntime, librosa, openai-whisper, modelscope, pyworld - which is normal for a TTS pack, but remember ComfyUI installs every node's deps into one Python environment. The usual dependency-hell rules apply once you have a big node collection. The CosyVoice code itself ships vendored inside the pack, so you do not install the FunAudioLLM repo separately.
Where people get burned
- First run looks hung because it's silently downloading ~2GB. Watch the console; give it time.
- Download and install are separate steps. If the loader errors on a missing file, it's usually the download, not your setup - flip
force_redownloadonce and let it redo it. - Keep one loader per workflow. The models are cached, so loading Fun-CosyVoice3-0.5B twice just returns the same object - no need to save a few seconds by stringing loaders together.
The pack is from filliptm (who posts as machinedelusions / Lividmusic1 - same person behind several music-and-audio ComfyUI packs), and landed with a real splash in late 2025. The loader is the unglamorous entry ticket: one node, one wire, and you're in.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| model_version | COMBO | Fun-CosyVoice3-0.5B | 3 options: Fun-CosyVoice3-0.5B, CosyVoice2-0.5B, CosyVoice-300M |
| download_source | COMBO | HuggingFace | 2 options: HuggingFace, ModelScope |
| device | COMBO | auto | 4 options: auto, cuda, cpu, mps |
| force_redownloadopt | BOOLEAN | false | — |
| force_reloadopt | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| model | COSYVOICE_MODEL | — |