Serveurperso/MiniMax-Music3-GGUF
MiniMax Music 3 GGUF
Pre-quantized GGUF models for minimaxmusic.cpp, a portable C++17 implementation of MiniMax Music 3 song generation using GGML.
Structured caption and lyrics in, stereo 44.1kHz audio out. Runs on CPU, CUDA, Vulkan.
Quick start
git clone --recurse-submodules https://github.com/ServeurpersoCom/minimaxmusic.cpp
cd minimaxmusic.cpp
pip install hf
./models.sh # downloads the Q8_0 set (~9 GB of VRAM at runtime)
mkdir build && cd build
cmake .. -DGGML_CUDA=ON
cmake --build . --config Release -j$(nproc)
cd ..
./build/mm-server --models ./models --host 0.0.0.0 --port 8086Open http://localhost:8086 in your browser. The embedded WebUI handles everything: write a structured caption, set lyrics and duration, generate, play, and download tracks.
Models load on the first job, so startup touches no GPU, and the quant of each component is switched from the UI.
<details> <summary>CLI tools (without the server)</summary>
# full pipeline
./build/mm-synth \
--models models \
--caption "Melancholic synthwave, slow tempo, analog pads" \
--lyrics "[verse]..." \
--out song.mp3
# autoregressive stage alone: writes a replayable request carrying audio_codes
./build/mm-lm --models models --request song.json --out plan.json
./build/mm-synth --models models --request plan.json --out song.mp3</details>
Available models
Five components, one GGUF each. Pick one file per component.
Global LM (8B, Qwen3 causal)
Predicts the first RVQ codebook frame by frame at 25 Hz. No Q4: an audio code LM breaks below Q5. This stage is bandwidth-bound on weight rereads, so its quant converts directly into speed.
RVQ depth decoder (0.6B)
Intra frame transformer over the 7 acoustic codebooks, run once per 25 Hz frame. Too small to survive aggressive quantization.
Flow matching DiT (2.4B)
36 self attention blocks rendering the latent track by Euler steps. Compute-bound, so its quants trade a slight slowdown for VRAM.
Condition encoder and flow VAE
Never quantized: small, bandwidth-bound and quality-critical. The vocoder GGUF carries both halves, the published decoder and the matching encoder.
The converter keeps the native dtype of the source byte for byte, so no dtype exists in a GGUF that does not exist in the checkpoint. The only transformation is the VAE weight norm folding, which is the inference form of the same weights.
Pipeline
caption + lyrics
v
global LM 8B semantic codebook, 25 Hz
v hidden states
RVQ depth decoder 0.6B 7 acoustic codebooks per frame
v fused hidden states
condition encoder 8 state mix, 25 -> 86.13 Hz
v condition track
flow matching DiT 2.4B latent 128 ch at 86.13 Hz
v
flow VAE decoder 123M 2 x 64 ch tracks -> 44.1 kHz stereoThe LM and the depth decoder build the musical structure autoregressively, the DiT renders timbre and articulation by flow matching, and the VAE turns the latents into audio. A rendered track comes back with its own code stream, so re-rendering it with other synthesis settings never pays the autoregression again.
License
The model weights are licensed by their authors under the MiniMax-Music3 Community License, and this repository redistributes them under the same terms. The license text ships here as LICENSE and travels with any copy you make.
Three conditions deserve attention before you build on it. Commercial products or services using these weights must display "MiniMax-Music3" in their user interface, and an aggregate yearly revenue above 20 million US dollars requires a prior written authorization from MiniMax. Any hosted service that lets third parties generate with the model must implement and maintain reasonable safeguards against infringing uses and outputs. Use must comply with the Acceptable Use Policy of Exhibit A in the license.
- Original work: MiniMax Music 3 by MiniMax, from MiniMaxAI/MiniMax-Music3.
- Modifications: the checkpoint tensors are converted to the GGUF container, keeping their native dtype, with the VAE weight norm folded, and quantized as listed above. No weight is retrained, fine tuned or otherwise altered in substance.
- Upstream components carry their own terms: the LM was fine-tuned from Qwen3-8B (Apache 2.0), the DiT was modified from Stable Audio and the VAE from DAC (both MIT).
The weights are offered as-is, without warranties of any kind. Nothing here is endorsed by or affiliated with MiniMax.
Acknowledgements
Independent C++/GGML implementation based on MiniMax Music 3 by MiniMax. All original model weights are theirs, this is a native backend.
@misc{minimax2026music3,
title={MiniMax Music 3},
author={MiniMax},
howpublished={\url{https://github.com/MiniMax-AI/MiniMax-Music3}},
year={2026},
note={GitHub repository}
}Links
- minimaxmusic.cpp - source code
- MiniMax Music 3 - original Python implementation
- MiniMaxAI/MiniMax-Music3 - original weights
