ACE-Step 1.5, MLX 8-bit (language model and DiT)

8-bit MLX versions of the three large parts of ACE-Step 1.5 by ACE Studio and StepFun, for Apple Silicon: the 5 Hz language model (1.7B) and the DiT decoders of acestep-v15-turbo and acestep-v15-base. They are used by Audante Link, the desktop helper of the music app Audante, so that ACE-Step 1.5 runs on Macs with 24 to 32 GB of memory. This is not an official ACE-Step release.

The files need ACE-Step 1.5's own code (commit ca1e85fe9430179831e6bc6be790c332190a3866) with Audante's patch ace-step-mlx-quant.patch: upstream converts the DiT from PyTorch at start-up and has no way to load a pre-quantized one.

Contents

Folder File What it is
acestep-5Hz-lm-1.7B/ model.safetensors (1.97 GB) the language model, 8-bit
config.json the original plus a quantization entry
tokenizer files, chat_template.jinja unchanged
acestep-v15-turbo/ mlx_dit.safetensors (1.78 GB), mlx_dit.json the DiT decoder in MLX, 8-bit
model.safetensors (1.64 GB) the original without the decoder: lyric and timbre encoders, audio tokenizer and detokenizer, bf16
config.json, silence_latent.pt, model code unchanged
acestep-v15-base/ the same files for the base DiT (add a track, accompaniment)

Not included, unchanged in ACE-Step/Ace-Step1.5: the VAE (vae/), the text encoder (Qwen3-Embedding-0.6B/) and the top-level config.json. To use the files, put these three folders over a download of the original (base goes into acestep-v15-base/) and apply the patch to ACE-Step 1.5.

Changes made by Audante (19.10.2026)

Source: ACE-Step/Ace-Step1.5 at revision 19671f406d603126926c1b7e2adc169acbcade22 and ACE-Step/acestep-v15-base at revision e432212fec32b8965a14ffa57ae653438d6abd14. No retraining, no fine-tuning.

  • Language model: loaded with mlx-lm 0.29.1 (model. prefix added to the key names, as ACE-Step does when it loads the original) and quantized with mlx-lm's quantize_model: every linear layer and the tied embedding (which is also the output layer) at 8 bits, affine, group size 64 (8.5 bits per weight on average). config.json gets "quantization": {"group_size": 64, "bits": 8, "mode": "affine"}.
  • DiT decoders (turbo and base): the decoder.* tensors of model.safetensors (bf16) are rearranged the way ACE-Step's own acestep/models/mlx/dit_convert.py does it at start-up, cast to float32 and loaded into ACE-Step's MLXDiTDecoder. Every linear layer is quantized to 8 bits, affine, group size 64 (the timestep embeddings as well); convolutions, norms and the AdaLN tables stay float32, as ACE-Step runs them. The result is mlx_dit.safetensors; mlx_dit.json records bits, group size and the 8-bit layers. model.safetensors keeps all other tensors unchanged.
  • The model code (*.py), config.json of the DiTs, silence_latent.pt and the tokenizer files are byte-identical to the originals. SHA256SUMS lists every file.

The patch makes ACE-Step load mlx_dit.safetensors when it is there and leave its PyTorch copy of the decoder empty, and it loads the 8-bit language model with mlx-lm's load_model. It also adds settings Audante uses with the original files: a cap on MLX's buffer cache (ACESTEP_MLX_CACHE_GB), freeing the unused PyTorch decoder (ACESTEP_FREE_TORCH_DIT=1, the audio stays byte-identical), a seed for the language model of a single song (ACESTEP_MLX_LM_SEED=1; upstream seeds it only in batches) and no model downloads at run time (ACESTEP_NO_DOWNLOAD=1).

Measured

On a Mac Studio (M3 Ultra) with ACE-Step's API server at commit ca1e85f and the patch, ACE-Step set up as on a 32-GB Mac (MAX_MPS_VRAM=21.3), MLX cache 0.5 GB, a fixed seed, one song at 30 and 180 seconds. Peak = lifetime maximum of the server's physical footprint, GPU memory included.

Disk (without base) Peak 30 s 路 180 s
Original files, as upstream loads them 10.1 GB 55.8 路 60.7 GB
Original files, MLX cache capped 10.1 GB 31.7 路 32.8 GB
Original files, unused PyTorch decoder freed 10.1 GB 26.3 路 26.6 GB
These files 7.0 GB 20.2 路 20.3 GB

As on a 24-GB Mac (MAX_MPS_VRAM=16, CPU offload off), these files peak at 17.3 GB (30 s) and 17.5 GB (180 s). With the base DiT loaded as a second model for add-track, the server peaked at 29.7 GB instead of 42.8 GB with the original files (decoder freed).

Sound and fidelity, against the original files with the same seed:

  • DiT (turbo), 8-bit: with identical language-model codes, mean log-mel distance 0.31 dB (30 s) and 0.46 dB (180 s), waveform SNR 17 and 21 dB.
  • Language model, 8-bit: against bf16 on the same 901 audio codes and 166 metadata tokens (teacher forcing): mean KL divergence 0.052 on the codes (0.18 with classifier-free guidance), 0.012 on the metadata; negative log likelihood 6.57 instead of 6.52. Because ACE-Step samples the codes at temperature 0.85, any change of the language model makes a different song from the same seed.
  • DiT (base), 8-bit: adding a drum track to the same 30-s song with the same seed: 1.03 dB log-mel distance and 17.5 dB SNR for the new track alone, 0.47 dB for the mix (two runs of the original differ by 0.05 dB). This is more than the turbo DiT; the base DiT runs 32 steps with guidance.
  • Speed: the 8-bit language model writes the codes of a 3-minute song in 9.1 instead of 13.0 seconds; the DiT is as fast as before.

Licence and origin

ACE-Step 1.5 is developed by ACE Studio and StepFun and licensed under the MIT licence. Its Hugging Face repositories state the licence in their metadata and model cards but carry no licence file; LICENSE is the MIT text with its copyright line ("Copyright (c) 2026 ACEStep"), unchanged from github.com/ace-step/ACE-Step-1.5 at commit ca1e85f. The patch is a modification of that MIT-licensed code and is offered under the same licence.

The 5 Hz language model is pretrained from Qwen3-1.7B, 漏 2024 Alibaba Cloud, licensed under the Apache License 2.0. Its licence text is in LICENSE-Qwen, unchanged from Qwen/Qwen3-1.7B at revision 70d244cc86ccca08cf5af4e1e306ecf908b1ad5e. Audante changed it only as described above (quantized to 8 bits).

From ACE-Step's licence and disclaimer: "To ensure responsible use, we encourage users to verify the originality of generated works, clearly disclose AI involvement, and obtain appropriate permissions when adapting protected styles or materials."

Please cite the authors:

@misc{gong2026acestep,
    title={ACE-Step 1.5: Pushing the Boundaries of Open-Source Music Generation},
    author={Junmin Gong, Yulin Song, Wenxiao Zhao, Sen Wang, Shengyuan Xu, Jing Guo},
    howpublished={\url{https://github.com/ace-step/ACE-Step-1.5}},
    year={2026},
    note={GitHub repository}
}
Downloads last month

-

Downloads are not tracked for this model. How to track
MLX
Hardware compatibility
Log In to add your hardware

8-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 馃檵 Ask for provider support

Model tree for Audante/ACE-Step-1.5-mlx-8bit

Finetuned
(18)
this model