Configuration Parsing Warning:Config file tokenizer_config.json cannot be fetched (too big)

mlx-community/ACE-Step-1.5-planner-1.7B-bf16

ACE-Step 1.5 planner 1.7B (the 5 Hz language model) — MLX, bf16. Converted from ACE-Step/Ace-Step1.5 @ 19671f4 by the converter of xocialize/mlx-ace-step-swift (Tools/convert/convert.py, mlx 0.32.4), a full port of ace-step/ACE-Step-1.5 @ ca1e85f to Swift-MLX.

What is in the bundle

acestep-5Hz-lm-1.7B of ACE-Step 1.5: a Qwen3-1.7B fine-tune (28 layers, hidden 2048, a 217 204-token vocabulary with 65 536 <|audio_code_N|> tokens, tied embedding) that plans a song — a constrained YAML reasoning block (bpm, caption, duration, keyscale, language, time signature) followed by duration × 5 audio codes — in mlx-lm's model.* layout with the tokenizer files beside it, so mlx_lm.load reads it as a qwen3 model. 310 tensors, bit-equal to the checkpoint. The Qwen3 base is Apache-2.0 (Qwen); the fine-tune is ACE-Step's (MIT).

Licence

MIT. The Hugging Face repository ACE-Step/Ace-Step1.5 ships no LICENSE file; its model-card tag and README state MIT and the GitHub LICENSE (Copyright (c) 2026 ACEStep) is the controlling text. The Qwen3 base model is Apache-2.0.

The full notice travels with the bundle as NOTICE; LICENSE is the MIT text. Nothing in the weights is modified beyond the layout conversion (key prefix / conv layout / weight-norm folding) — the converter Tools/convert/convert.py in xocialize/mlx-ace-step-swift is gated bit-equal against upstream's own dit_convert.py / vae_convert.py (its MEASUREMENTS.md §V1).

Use

Every tier of the Swift package loads four bundles — the turbo DiT, one planner, the text encoder and the VAE — and this bundle is one of them. The planner choices: ACE-Step-1.5-planner-1.7B-8bit for .int8 (the default), -4bit for .int4, -bf16 for .bf16 / .fp32, and ACE-Step-1.5-planner-0.6B-bf16 for the lite planner on any tier. The package, xocialize/mlx-ace-step-swift, runs ACE-Step 1.5 on Apple Silicon through MLX Swift and plugs into MLXEngine on the music capability (caption + lyrics → a 48 kHz stereo song; reference-audio timbre; cover / repaint / extend of a source clip; LRC timestamps). The package's ACEStepConfiguration names these repos and the engine materialises them; the parity gates against the upstream oracle (fp32, TF32 off) are recorded in the package's MEASUREMENTS.md.

let engine = MLXServeEngine()
let id = try await engine.register(ACEStepPackage.registration, configuration: ACEStepConfiguration(quant: .bf16))
try await engine.prepare(.music, package: id)
let song = try await engine.run(MusicRequest(caption: "…", lyrics: "[Verse]\n…", durationSeconds: 120, seed: 7), package: id)

The published .int8 / .int4 tiers load the pre-quantised -8bit / -4bit siblings; a LOCAL copy of this bf16 bundle is still quantised at load (group 64) when a tier asks for 8 or 4 bits and no pre-quantised folder is beside it.

Upstream: ACE-Step/Ace-Step1.5 @ 19671f4 (weights), ace-step/ACE-Step-1.5 @ ca1e85f (code) — ACE Studio + StepFun, tech report.

Downloads last month
68
Safetensors
Model size
2B params
Tensor type
BF16
·
MLX
Hardware compatibility
Log In to add your hardware

Quantized

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

Model tree for mlx-community/ACE-Step-1.5-planner-1.7B-bf16

Finetuned
(26)
this model

Collection including mlx-community/ACE-Step-1.5-planner-1.7B-bf16

Paper for mlx-community/ACE-Step-1.5-planner-1.7B-bf16