--- library_name: sglang-omni pipeline_tag: text-to-audio tags: - music-generation - text-to-music - pytorch - sglang-omni --- # MiniMax Music 3 MiniMax Music 3 is a non-streaming music generation model conditioned on lyrics and a natural-language music description. Inference is implemented in SGLang-Omni with PyTorch and uses two CUDA GPUs: - GPU 0: Qwen3 + eight-codebook RVQ autoregressive generation; - GPU 1: flow-matching DIT + DAV waveform decoding. The generated audio is returned as a 32 kHz, 16-bit stereo WAV file. ## Model files ```text minimax_ttm/ config.json flowmatching_vae.pth dav.pth qwen_7B/ qwen_7B/ config.json model.safetensors.index.json model-*.safetensors qwen3-8B-tokenizer-music/ tokenizer.json tokenizer_config.json ... assets/ minimax_ttm.wav ``` ## Usage Download the repository to a local directory before starting the service: ```bash hf download MiniMaxAI/MiniMax-Music3 --local-dir /path/to/minimax_ttm ``` From the SGLang-Omni repository root: ```bash python -m sglang_omni.cli serve \ --config examples/configs/minimax_ttm.yaml \ --model-path /path/to/minimax_ttm \ --host 127.0.0.1 \ --port 8000 ``` Send a non-streaming request through the shared speech API. `input` contains the lyrics and `instructions` contains the music description. ```bash curl http://127.0.0.1:8000/v1/audio/speech \ -H 'Content-Type: application/json' \ -d '{ "model": "minimax_ttm", "input": "[Verse]\nHello from SGLang Omni", "instructions": "A bright piano pop song with a warm female vocal", "response_format": "wav", "seed": 7, "max_new_tokens": 9000, "stream": false }' \ --output minimax_ttm.wav ``` An example generated with this checkpoint is available at [`assets/minimax_ttm.wav`](assets/minimax_ttm.wav). ## Limitations - Inference requires two CUDA GPUs. - Only non-streaming generation is supported. - The tokenized text prompt is limited to 5000 tokens. - Audio generation is limited to 9000 acoustic frames.