Precision-preserving MLX-native layout conversion of
MiniMaxAI/MiniMax-Music3
for local inference on Apple silicon. It is designed for use with
mlx-minimax-music3,
the independent pure-MLX inference project and Python package that generates
complete stereo music from lyrics and a structured music caption without
PyTorch, CUDA, or a cloud API at inference time.
This is a format and tensor-layout conversion. It is not trained, fine-tuned,
merged, or quantized, and it does not claim authorship of the underlying model.
MiniMax developed and released MiniMax Music 3; App Automaton converted the
published checkpoint for the independent MLX runtime.
Checkpoint contents
Component
Stored dtype
Size
Role
Global language model
BF16
15.99 GiB
Long-range structure and semantic music tokens
RVQ depth decoder
BF16
1.20 GiB
Seven residual acoustic codebooks
Condition encoder
FP32
0.09 GiB
Continuous hidden-state fusion
Flow transformer
FP32
9.06 GiB
Flow-matching acoustic synthesis
Vocoder
FP32
0.20 GiB
Stereo waveform decode
Tokenizer, scheduler, and metadata
—
0.01 GiB
Prompting and checkpoint contract
The complete checkpoint is 26.56 GiB (28.52 GB decimal). The repository contains
only the dense profile. It does not contain selective-q8 or persistent FP16
derivatives.
Conversion contract
The conversion is pinned to official source revision
fbdf52fbaaca799592917417eb05f1899f1255ec.
Its manifest.json records the source revision, mapping version, component file
sizes, tensor counts, dtypes, and SHA-256 digests.
Qwen3 and RVQ tensors retain their published BF16 values.
Condition, flow, and vocoder tensors retain their published FP32 values.
Convolution kernels are transposed into the channels-last layout expected by
MLX.
Vocoder weight normalization is folded into the stored convolution weights.
No tensor is downcast or quantized.
The converter reads and writes SafeTensors directly through MLX. PyTorch is not
part of conversion or runtime inference.
Generate one minute of instrumental melodic techno:
python
1from mlx_minimax_music3 import(2 GenerationRequest,3 Music3Pipeline,4 instrumental_lyrics,5)67pipeline = Music3Pipeline("weights/mlx-dense/MiniMax-Music3")8result = pipeline.generate(9 GenerationRequest(10 caption=(11"Global Metadata: melodic techno, 128 BPM, A minor, nocturnal and "12"cinematic, gradually rising energy. Vocal Details: instrumental, "13"no vocals. Arrangement: deep rounded kick, warm sub-bass, crisp "14"hats, syncopated percussion, analog arpeggiator, evolving pads, "15"a glassy bell motif, controlled builds, and a spacious final drop."16),17 lyrics=instrumental_lyrics(18"intro","groove","build","drop","breakdown","outro"19),20 audio_duration=60.0,21 seed=7,22),23 output="outputs/melodic-techno.wav",24)2526print(result.metadata.stage_timings)27print(result.metadata.memory_reports)
audio_duration is a ceiling because the model may emit its end token earlier.
Set min_audio_duration when a minimum frame count is required. The default
checkpoint path keeps the official mixed precision: BF16 autoregressive models
and FP32 acoustic models.
Runtime behavior
The runtime loads one stage at a time. Autoregressive models are released before
the flow transformer is loaded, and acoustic models are released before final
waveform decoding. This bounds unified-memory residency and avoids retaining the
entire checkpoint in memory at once.
The current runtime writes native 44.1 kHz stereo PCM16 WAV. The official serving
profile resamples its output to 32 kHz; reference-output parity for that final
profile remains in progress.
Validation status
This is an alpha release. The dense checkpoint has passed:
strict tensor-name, shape, dtype, and shard-index validation;
tensor-by-tensor conversion checks against the pinned source;
complete checkpoint manifest digest verification;
weightless golden regression tests for dense loading and inference; and
end-to-end local generation, including a three-minute default-FP32 run.
On an Apple M5 Max with 128 GB unified memory, the three-minute validation run
took 18 minutes 16 seconds, peaked at approximately 19.93 GiB of process memory,
and did not increase swap usage. This is one machine-specific observation, not a
portable performance guarantee.
Listening validation across more prompts and seeds, long-form quality parity,
and the reference 32 kHz output profile are still in progress.
Intended use and limitations
This checkpoint is intended for local research, development, and music
generation with the MLX runtime on Apple silicon.
Prompt controls such as tempo, key, instrumentation, lyrics, and structure are
generative guidance rather than strict symbolic guarantees.
Outputs can contain artifacts, incorrect words, unexpected structure, or
content that does not follow every requested attribute.
Users are responsible for evaluating generated content, respecting applicable
rights, and complying with the model license and acceptable-use policy.
The checkpoint is not an official MiniMax MLX release, and this project is not
affiliated with or endorsed by MiniMax.
The converted checkpoint remains governed by the included
MiniMax-Music3 Community License,
including its attribution, acceptable-use, safeguards, and commercial terms.
Review that license before downloading, redistributing, or deploying the model.
The mlx-minimax-music3 runtime code is separately licensed under MIT.