Skip to main content
MiniMax Music 3 generates complete songs with vocals and accompaniment from lyrics and a music description. This page deploys an HTTP service on NVIDIA CUDA GPUs with SGLang-Omni; it is a self-hosted server deployment, not a consumer-device local-running guide.
The model card describes native generation of songs up to approximately five minutes. SGLang-Omni accepts at most 9,000 acoustic frames at 25 frames per second, which is a six-minute request cap. The framework limit is not an additional minute of validated model capability. Keep max_new_tokens at or below 7,500 when you need to remain within the model’s documented five-minute scope.

Deployment status

The pinned model revision and framework version make the commands repeatable. They do not mean that MiniMax has benchmarked every compatible GPU, driver, or operating-system combination.

Hardware baseline

SGLang-Omni publishes one reference-output configuration and two placement modes. It does not publish Music 3 peak VRAM, minimum GPU memory, host RAM, minimum driver, generation latency, or real-time factor. The single-GPU command does not imply that every CUDA GPU has enough memory. Validate a short request on your exact hardware before accepting production traffic. The model repository currently reports approximately 57.4 GB of files; reserve additional disk for the Python environment, download metadata, and temporary files.

Quickstart

Install the pinned runtime

Use a clean Linux environment with an NVIDIA CUDA GPU. SGLang-Omni 0.1.3 pins CUDA 13 runtime packages, PyTorch 2.11.0, and SGLang 0.5.16. The upstream project has not published an exact minimum NVIDIA driver for this Music 3 configuration; confirm that your driver supports the installed CUDA runtime.
The last value must be True before you continue. For UCX and CUDA build prerequisites, see the SGLang-Omni installation guide.

Download the pinned weights

Start the service

The default quickstart listens only on the loopback interface. Keep this terminal running:

Check service health

Run these commands in another terminal:
/health should return HTTP 200 with a healthy, running status. /v1/models should include MiniMaxAI/MiniMax-Music3.

Generate and verify a song

The file must be a non-empty WAV with channels=2, sample_rate=32000, and sample_width_bytes=2. 750 frames allow at most 30 seconds of audio. The duration can be shorter when the model emits its end-of-audio token.

Capability boundaries

SGLang-Omni documents byte-identical output for the same lyrics, instructions, seed, and length in the same setup. Do not assume byte-identical output across different model revisions, framework versions, or hardware stacks.

Request contract

The tokenized text prompt is limited to 5,000 tokens. Shorten the lyrics or instructions if the server rejects an otherwise valid request at this limit.
Put each structure tag on its own line. For example, use [Verse]\nWalking down the street. Lyrics placed on the same line as a tag can be removed during normalization without an error.
Do not send temperature, top_p, top_k, repetition_penalty, voice, reference-audio fields, language, or task_type. Tempo and vocal characteristics belong in instructions. There is also an HTTP client concept called a streaming response, where a client writes an already-produced response body incrementally to disk. That does not make Music 3 model generation streaming. This guide uses ordinary curl --output to avoid conflating the two concepts.

Weights, cache, and offline deployment

  • Official weights: MiniMaxAI/MiniMax-Music3
  • Pinned weights used here: revision fbdf52f
  • Default Hugging Face cache: ~/.cache/huggingface/hub; set HF_HOME or HF_HUB_CACHE to relocate it.
  • This guide uses --local-dir, so the server can load a stable filesystem path instead of resolving main at startup.
  • No official MiniMax Music 3 ModelScope mirror is linked from the model card as of the documentation review date.
For an offline host, download the pinned revision on a connected machine, copy the complete directory to the target host, and start the service with the local path. Prevent accidental network resolution with:
If a download was interrupted or a file is corrupted, rerun the same pinned hf download command. Add --force-download only when you need to replace the local files rather than resume or reuse them.

Production deployment and security

Use two GPUs

SGLang-Omni places the autoregressive stage on the first visible GPU and the DiT/audio-decoder stage on the second:
This is a placement option, not a claim about minimum memory or performance on a particular two-GPU pair.

Plan concurrency

Music 3 applies classifier-free guidance in both generation stages. Each request occupies two KV-cache rows in the autoregressive engine. If you raise the request limit, capacity-plan for twice the number of admitted requests:
Do not increase this value before measuring peak memory and latency on your own hardware. Rendering a 10-second, 250-frame clip is the lowest-cost way to validate lyrics and instructions before a full song.

Expose the service safely

Keep the model server on 127.0.0.1 when possible. If clients need remote access, place it behind an authenticated API gateway or reverse proxy with TLS, request-size limits, rate limits, timeouts, and network allowlists. Do not expose an unauthenticated 0.0.0.0:8000 endpoint to the internet. Treat lyrics and music descriptions as potentially sensitive data when configuring access logs and observability.

Troubleshooting

For multi-GPU NCCL or UCX failures, first verify that the single-GPU command starts successfully, then check GPU visibility, peer connectivity, and the UCX prerequisites documented by SGLang-Omni.

License and resources

The model license includes attribution, commercial revenue thresholds, safeguard, intellectual-property, and Acceptable Use Policy requirements. Read the authoritative license and implement all applicable terms before offering Music 3 to third parties. SGLang-Omni is distributed separately under Apache-2.0.