Nodes/civitai-comfy-nodes/Civitai MiniMax Music 3
ComfyUI Node

Civitai MiniMax Music 3

MiniMax Music 3 in ComfyUI

By civitai·Created 3 months ago·Updated 2 days ago· 44
Civitai MiniMax Music 3
  • diffusion_model
  • text_encoder
  • vae
  • loras
  • api_config
  • blob
  • workflow_id
  • raw_json
caption
lyrics
seed0
max_duration120.00
steps30
cfg1.70
top_k50

Song generation is the one audio job where the hosted services still beat everything local - Suno made that the consensus years ago, and it hasn't moved. This node is that category inside ComfyUI: MiniMax's Music 3 model, a hosted music generator that takes a structured description and optional lyrics and returns an actual song, as a native AUDIO output in your graph. No audio model to download, no inference rig, just Buzz.

What it is

Civitai MiniMax Music 3 from civitai/civitai-comfy-nodes, under Civitai/Audio. It's a miniMaxMusic3 recipe on Civitai's orchestration API: MiniMax is the Shanghai lab behind Hailuo video and a full audio line, and Music 3 is their diffusion-based song generator. Mechanically it's a cloud job like every node in this pack - prompt components up, poll, audio back.

The interesting part is the architecture leaking through the inputs. Music 3 is a diffusion model with a MiniMax text encoder and an audio VAE - and the pack lets you swap all three with model selector overrides and even apply LoRAs to the pair. That's a lot of power you will almost never touch, but it's nice to know it's there.

The inputs that matter

  • caption - the required text, and the one that decides your result. The tooltip is the author's own advice and you should take it: for best results use Global Metadata, Vocal Details, and Arrangement sections. Structure your description and the model rewards you.
  • lyrics - optional, and it accepts section markers like [Intro], [Verse], [Chorus], [Outro]. This is how you get an actual song structure instead of a wall of sound.
  • seed - reproducible generation. Set it to lock a result, randomize to explore.
  • max_duration - up to 360 seconds, default 120. The tooltip notes the model may end the song earlier when the lyric structure is complete - so don't be confused when a 3-minute budget returns a 2:10 track with a clean outro.
  • steps (30), cfg (1.7), top_k (50) - diffusion sampling knobs. The 1.7 cfg default is low for a reason; these hosted defaults are tuned.
  • diffusion_model / text_encoder / vae / loras - the override sockets. Leave them empty unless you know why you're changing them.

The outputs

  • blob - an AUDIO output. Wire it to a Preview Audio / Save Audio node and it behaves like any locally-decoded audio.
  • workflow_id and raw_json - the pack standard; raw_json is where you'd check cost.

Installing it

ComfyUI Manager → Civitai Comfy Nodes → Install → restart. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/civitai/civitai-comfy-nodes.git
pip install -r civitai-comfy-nodes/requirements.txt

requests + python-socketio; the audio decoding uses PyAV, which ships inside ComfyUI.

Gotchas

  • Credentials and Buzz, per song. Music generation is metered, and songs aren't the cheapest thing on the roster. raw_json shows the run cost.
  • A blank caption is the #1 way to get garbage. This isn't a prompt-refinement model; give it the Global/Vocal/Arrangement structure or accept whatever it guesses.
  • The caption and lyrics are separate inputs - don't jam the lyrics into the caption and leave the lyrics field empty. The model reads structure from the lyrics field specifically.
  • Credential order - Civitai Auth node → CIVITAI_API_TOKEN → stored OAuth from the sidebar.
  • Expect a real song back, not a demo loop, but treat the mix as a starting point - hosted music is genuinely good now, and still not a finished master.
CategoryCivitai/Audio

Inputs (12)

NameTypeDefaultDescription
captionSTRINGStructured music description. For best results use Global Metadata, Vocal Details, and Arrangement sections.
lyricsSTRINGLyrics with section markers such as [Intro], [Verse], [Chorus], and [Outro].
seedINT00–4294967295Random seed for reproducible generation.
max_durationoptFLOAT120.000.03999999910593033–360Maximum generated song duration in seconds. The model may end the song earlier when the requested lyric structure is complete.
stepsoptINT301–100Number of diffusion sampling steps.
cfgoptFLOAT1.700–100Classifier-free guidance scale used by both text encoding and sampling.
top_koptINT501–16384Top-k sampling limit used by the MiniMax music text encoder.
diffusion_modeloptCIVITAI_AIROptional diffusion model override.
text_encoderoptCIVITAI_AIROptional MiniMax text encoder override.
vaeoptCIVITAI_AIROptional audio VAE override.
lorasoptCIVITAI_LORASOptional LoRAs to apply to both the diffusion model and MiniMax text encoder. Compatibility with the selected base resources is the caller's responsibility.
api_configoptCIVITAI_CONFIGOptional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login.

Outputs (3)

NameTypeDescription
blobAUDIO
workflow_idSTRING
raw_jsonSTRING