SongBloom Model Loader
Loading the 2B SongBloom model
- model
Every SongBloom workflow starts here, because this is the node that turns an empty ComfyUI into a machine that can write a song. SongBloom is Tencent AI Lab's open 2B-parameter music model - the closest thing the local scene has to a Suno, and this loader is the front door to it. Nothing else in the pack runs until this node finishes, and "finishes" can mean a while: the weights are around 8GB, and if you've never loaded them, the first run downloads them to disk.
What it actually does is decide between two jobs: grab the weights from ComfyUI/models/SongBloom/ if they're already there, or pull them from HuggingFace (CypressYang/SongBloom) when they aren't. Then it builds the model from the config file, wires up the VAE, and hands you a model object the rest of the pack consumes.
The inputs that matter
Only four, and two of them do most of the work:
- model_name -
songbloom_full_150sorsongbloom_full_150s_dpo. Pick the DPO variant. The community consensus is that the DPO fine-tune sounds noticeably better, even if it clearly got overtrained on Chinese pop with a female lead. - dtype -
float32(default) orbfloat16. This is your VRAM lever. Under about 8GB,bfloat16is the difference between "works" and "CUDA out of memory." - load_mode -
local_first(default),local_only, ordownload_only.local_onlyis handy if you've already got the files and don't want the node touching the network;download_onlyforces a fresh pull. - lyric_processor -
pinyin,phoneme(default), ornone. This drives how your lyrics get turned into something the model can sing.phonemeis the general choice;pinyinhelps with Chinese;noneskips conversion entirely.
force_reload is the only optional input - set it true to force a re-download of the model files when a download went sideways.
Output is a single model (SONGBLOOM_MODEL), which feeds straight into SongBloomGenerator or SongBloomBatchProcessor.
Installing the pack
ComfyUI Manager users: search "SongBloom_ComfyUI" and install. Manual path:
cd ComfyUI/custom_nodes
git clone https://github.com/xuchenxu168/SongBloom_ComfyUI
cd SongBloom_ComfyUI
pip install -r requirements.txt
Restart ComfyUI after that. The requirements list is heavy - torchaudio, lightning, transformers, omegaconf, descript-audio-codec, spacy, nltk, and the g2p stack. If you skip the pip install step, the loader just fails with "SongBloom dependencies not available," which is the pack's most common first-run error. There's also an optional python install.py that checks your environment and sets up the model directories.
Where people get burned
- The first load is slow and eats bandwidth. The auto-download is ~8GB. If it fails, check your HuggingFace access and retry with
force_reloadon. - VRAM. SongBloom wants 8GB for
float32, 6GB forbfloat16per the README - and the community would tell you those are optimistic. If you get "CUDA out of memory," the fix order is:bfloat16→ fewer steps downstream → reducemax_frames. - The OmegaConf "resolver 'eval' is already registered" error when you reload or switch models. That's a known multi-load bug, patched in v1.1.0; if you still hit it, restart ComfyUI.
- Mind the license. SongBloom's weights are academic/non-commercial. Fine for experiments, not for release-day commercial distribution.
One last honest note: this pack only loads the 150-second variants, not the newer 240-second (4-minute) SongBloom weights that landed later - so if you've already grabbed the bigger model from HuggingFace, it won't appear in the dropdown.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| model_name | COMBO | songbloom_full_150s | 2 options: songbloom_full_150s, songbloom_full_150s_dpo |
| dtype | COMBO | float32 | 2 options: float32, bfloat16 |
| lyric_processor | COMBO | phoneme | 3 options: pinyin, phoneme, none |
| load_mode | COMBO | local_first | 3 options: local_first, local_only, download_only |
| force_reloadopt | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| model | SONGBLOOM_MODEL | — |