Instructions to use PocketAiHub/MiniMax-Music3-MLX with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use PocketAiHub/MiniMax-Music3-MLX with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] huggingface-cli download --local-dir MiniMax-Music3-MLX PocketAiHub/MiniMax-Music3-MLX
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Atomic Chat
MiniMax-Music3 MLX
Experimental native Apple Silicon MLX inference for MiniMax-Music3. This repository runs the complete autoregressive, flow-DiT, and DAV synthesis path locally on macOS without CUDA or ComfyUI.
This is an independent community port, not an official MiniMax release. PocketAI did not train, fine-tune, or quantize the model weights; the packaged weights are unchanged from the pinned Comfy-Org repack identified below. No endorsement is implied.
Example
The following one-minute rock-and-roll song was generated locally by this repository at 30 flow steps and seed 20260815.
Download the WAV ยท Generation parameters and signal checks
Requirements
- Apple Silicon Mac
- macOS 14 or newer
- Python 3.11โ3.13 recommended
- 32 GB unified memory minimum; 48 GB or more recommended
- Approximately 12 GB disk space for this repository
The acceptance render was produced as a 44.1 kHz, 16-bit stereo WAV. A 60-second song at 30 steps takes several minutes; exact speed depends on the Mac and available memory.
Install
hf download PocketAiHub/MiniMax-Music3-MLX \
--local-dir MiniMax-Music3-MLX
cd MiniMax-Music3-MLX
python3.11 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Generate a song
Create lyrics.txt:
[Verse]
Neon on the dashboard, midnight in the street
Engine keeps on rumbling to a backbeat
[Chorus]
Turn it up, let the good times roll
Fire in the speakers, thunder in your soul
Then run:
python generate.py \
--prompt "High-energy rock and roll, gritty male vocal, crunchy guitars, boogie piano, live drums, punchy bass, 148 BPM" \
--lyrics-file lyrics.txt \
--seconds 60 \
--steps 30 \
--seed 20260815 \
--output song.wav
For an instrumental, pass --lyrics "[Instrumental]". Supported duration is 10โ300 seconds and supported flow-step count is 1โ30.
What is included
| Component | File | Format |
|---|---|---|
| Global + local autoregressive model | text_encoders/minimax_music3_text_encoder_pruned_int8_convrot.safetensors |
INT8 tensorwise + ConvRot |
| Flow diffusion transformer | diffusion_models/minimax_music3_dit_int8_convrot.safetensors |
INT8 tensorwise + ConvRot |
| DAV waveform decoder | vae/minimax_music3_dav.safetensors |
FP32 |
| Native runtime | minimax_mlx_model.py |
MLX |
| Standalone CLI | generate.py |
Python |
The weights are unchanged copies of the pinned Comfy-Org MiniMax-Music-3 repack. Exact sizes and SHA-256 checksums are recorded in model_manifest.json.
Implementation notes
The runtime mirrors the MiniMax-Music3 implementation in ComfyUI commit efd4e951, including:
- Qwen-style global autoregressive generation with a KV cache
- Seven-codebook local RVQ depth decoding
- Classifier-free guided flow matching
- Tensorwise INT8 ConvRot linear layers evaluated with MLX quantized matmul
- DAV stereo waveform decoding
Long DAV decodes are processed using overlap-cropped safe-size chunks. Direct multi-million-sample MLX Conv1d execution produced incorrect channel collapse during testing; the chunked path is bit-for-bit identical to direct decoding at safe tensor sizes. The runtime also rejects outputs exhibiting the diagnosed stereo-collapse signature.
Validation
The included one-minute example passed these signal checks:
| Check | Result |
|---|---|
| Duration | 59.9888 seconds |
| Channel RMS | 0.1478 / 0.1501 |
| Channel peak | 0.9740 / 0.9900 |
| Stereo correlation | 0.7086 |
| Collapsed one-second blocks | 0% |
| Clipped samples | 0 |
Run the lightweight tests with:
python -m unittest tests/test_minimax_mlx_model.py
Limitations
- Apple Silicon macOS only; this port does not target Intel Macs, Linux, Windows, CUDA, or CPU-only execution.
- Inference is memory-intensive and currently batch-size one.
- The port uses the pinned Comfy-Org INT8 artifact set rather than the upstream full-precision Diffusers layout.
- Prompts and section tags provide generative control, not strict guarantees. Lyrics, tempo, instrumentation, and song structure may vary.
- Seeded output is deterministic for the pinned runtime and MLX versions but is not expected to match PyTorch/ComfyUI sample-for-sample because sampling backends use different random-number generators.
License and attribution
Model weights, this derivative package, and use of generated outputs are subject to the included MiniMax-Music3 Community License, including its acceptable-use policy and commercial-use terms. MiniMax-Music3 builds on Qwen3-8B and software components described in the upstream license.
Please review the license before downloading, redistributing, or deploying this repository. Users are responsible for ensuring they have the necessary rights to prompts, lyrics, reference material, and generated content.
Quantized
Model tree for PocketAiHub/MiniMax-Music3-MLX
Base model
MiniMaxAI/MiniMax-Music3