Point the q8dit rows at audio.cpp#464
Browse files
README.md
CHANGED
|
@@ -1,93 +1,94 @@
|
|
| 1 |
-
# audio.cpp GGUF
|
| 2 |
-
|
| 3 |
-
GGUF conversions of music and speech models for
|
| 4 |
-
[audio.cpp](https://github.com/0xShug0/audio.cpp), the ggml-based native audio
|
| 5 |
-
inference framework.
|
| 6 |
-
|
| 7 |
-
## ACE-Step 1.5 XL
|
| 8 |
-
|
| 9 |
-
| File | Size | Package | Upstream |
|
| 10 |
-
|---|---:|---|---|
|
| 11 |
-
| `ACE-Step1.5-GGUF/xl-turbo/ace-step-1.5-xl-turbo-bf16.gguf` | 14.2 GiB | `ace_step_xl_turbo_bf16` | [acestep-v15-xl-turbo](https://huggingface.co/ACE-Step/acestep-v15-xl-turbo) |
|
| 12 |
-
| `ACE-Step1.5-GGUF/xl-sft/ace-step-1.5-xl-sft-bf16.gguf` | 14.2 GiB | `ace_step_xl_sft_bf16` | [acestep-v15-xl-sft](https://huggingface.co/ACE-Step/acestep-v15-xl-sft) |
|
| 13 |
-
| `ACE-Step1.5-GGUF/xl-turbo-q8dit/ace-step-1.5-xl-turbo-q8dit.gguf` | 9.97 GiB |
|
| 14 |
-
| `ACE-Step1.5-GGUF/xl-sft-q8dit/ace-step-1.5-xl-sft-q8dit.gguf` | 9.97 GiB |
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
--keep-type "
|
| 36 |
-
--keep-type "
|
| 37 |
-
--type
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
|
| 41 |
-
|
| 42 |
-
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
|
|
| 46 |
-
|
|
| 47 |
-
| XL Turbo
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
|
| 72 |
-
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
--
|
| 76 |
-
--
|
| 77 |
-
|
| 78 |
-
|
| 79 |
-
|
| 80 |
-
|
| 81 |
-
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
|
| 85 |
-
|
| 86 |
-
|
| 87 |
-
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
|
|
|
|
|
| 1 |
+
# audio.cpp GGUF
|
| 2 |
+
|
| 3 |
+
GGUF conversions of music and speech models for
|
| 4 |
+
[audio.cpp](https://github.com/0xShug0/audio.cpp), the ggml-based native audio
|
| 5 |
+
inference framework.
|
| 6 |
+
|
| 7 |
+
## ACE-Step 1.5 XL
|
| 8 |
+
|
| 9 |
+
| File | Size | Package | Upstream |
|
| 10 |
+
|---|---:|---|---|
|
| 11 |
+
| `ACE-Step1.5-GGUF/xl-turbo/ace-step-1.5-xl-turbo-bf16.gguf` | 14.2 GiB | `ace_step_xl_turbo_bf16` | [acestep-v15-xl-turbo](https://huggingface.co/ACE-Step/acestep-v15-xl-turbo) |
|
| 12 |
+
| `ACE-Step1.5-GGUF/xl-sft/ace-step-1.5-xl-sft-bf16.gguf` | 14.2 GiB | `ace_step_xl_sft_bf16` | [acestep-v15-xl-sft](https://huggingface.co/ACE-Step/acestep-v15-xl-sft) |
|
| 13 |
+
| `ACE-Step1.5-GGUF/xl-turbo-q8dit/ace-step-1.5-xl-turbo-q8dit.gguf` | 9.97 GiB | `ace_step_xl_turbo_q8dit` * | as above |
|
| 14 |
+
| `ACE-Step1.5-GGUF/xl-sft-q8dit/ace-step-1.5-xl-sft-q8dit.gguf` | 9.97 GiB | `ace_step_xl_sft_q8dit` * | as above |
|
| 15 |
+
|
| 16 |
+
\* proposed in [audio.cpp#464](https://github.com/0xShug0/audio.cpp/pull/464); until that lands, download the file and point `--model` at its directory.
|
| 17 |
+
|
| 18 |
+
The XL DiT is the larger ACE-Step 1.5 transformer: 32 layers of 2560 against
|
| 19 |
+
turbo's 24 of 2048, with 32 attention heads of 128. Each file is self-contained
|
| 20 |
+
the way audio.cpp's other ACE-Step GGUFs are — XL DiT, planner LM, text encoder
|
| 21 |
+
and VAE in one file — so none of them needs another download.
|
| 22 |
+
|
| 23 |
+
XL Turbo is guidance-distilled and ignores `guidance_scale`; XL SFT takes the
|
| 24 |
+
CFG path. Both were converted from the float32 upstream snapshots.
|
| 25 |
+
|
| 26 |
+
## The `q8dit` builds
|
| 27 |
+
|
| 28 |
+
`ace_step` is graded `No (planner sampling can fail)` for q8_0 in audio.cpp's
|
| 29 |
+
[gguf.md](https://github.com/0xShug0/audio.cpp/blob/main/docs/gguf.md#support-and-test-status),
|
| 30 |
+
and that grade is about the **planner LM**, not the DiT. The `q8dit` files
|
| 31 |
+
quantise the DiT to q8_0 and keep the planner LM, text encoder and VAE at bf16:
|
| 32 |
+
|
| 33 |
+
```bash
|
| 34 |
+
audiocpp_gguf ... \
|
| 35 |
+
--keep-type "lm_weights*=bf16" \
|
| 36 |
+
--keep-type "text_encoder_weights*=bf16" \
|
| 37 |
+
--keep-type "vae_weights*=bf16" \
|
| 38 |
+
--keep-type "dit_xl_turbo_silence_latent*=bf16" \
|
| 39 |
+
--type q8_0 --output ace-step-1.5-xl-turbo-q8dit.gguf
|
| 40 |
+
```
|
| 41 |
+
|
| 42 |
+
Measured on an RTX 5090 (CUDA), against the bf16 file at the same prompt and
|
| 43 |
+
seed:
|
| 44 |
+
|
| 45 |
+
| | size | 20 s of audio | RTF | waveform correlation vs bf16 |
|
| 46 |
+
|---|---:|---:|---:|---:|
|
| 47 |
+
| XL Turbo bf16 | 14.2 GiB | 14.2 s | 0.71 | reference |
|
| 48 |
+
| XL Turbo q8dit | 9.97 GiB | 9.3 s | 0.46 | **0.989** |
|
| 49 |
+
| XL Turbo, everything q8_0 | 8.36 GiB | 8.2 s | 0.41 | 0.094 |
|
| 50 |
+
|
| 51 |
+
Every build is deterministic at a fixed seed (run-to-run correlation 1.0000), so
|
| 52 |
+
the last column isolates what quantisation changes. On a sung 40 s take the
|
| 53 |
+
q8dit build scores **0.997** for XL Turbo and **0.999** for XL SFT, and an ASR
|
| 54 |
+
pass over both returns the same lyric line. A fully quantised build returns a
|
| 55 |
+
different song from the same seed — it plays, it just isn't the same model.
|
| 56 |
+
|
| 57 |
+
Validated on three prompts on one machine. Treat these as a preview: they are
|
| 58 |
+
not covered by audio.cpp's path-test matrix.
|
| 59 |
+
|
| 60 |
+
## Install
|
| 61 |
+
|
| 62 |
+
```bash
|
| 63 |
+
python tools/model_manager_v2.py install ace_step_xl_turbo_bf16
|
| 64 |
+
```
|
| 65 |
+
|
| 66 |
+
The `q8dit` ids arrive with [audio.cpp#464](https://github.com/0xShug0/audio.cpp/pull/464);
|
| 67 |
+
until then, download the file and point `--model` at its directory.
|
| 68 |
+
|
| 69 |
+
## Run
|
| 70 |
+
|
| 71 |
+
The DiT variant is a load option, so name it explicitly:
|
| 72 |
+
|
| 73 |
+
```bash
|
| 74 |
+
audiocpp_cli --task gen --family ace_step --model models/ACE-Step1.5-GGUF/xl-turbo \
|
| 75 |
+
--backend cuda --task-route text2music \
|
| 76 |
+
--text "warm lo-fi hip hop with a soft rhodes piano" --duration-seconds 60 \
|
| 77 |
+
--load-option ace_step.dit_model_path=acestep-v15-xl-turbo --out song.wav
|
| 78 |
+
```
|
| 79 |
+
|
| 80 |
+
For sung vocals, pass the lyrics *and* a language, and give the DiT more steps
|
| 81 |
+
than the turbo default:
|
| 82 |
+
|
| 83 |
+
```bash
|
| 84 |
+
--lyrics "[verse]
|
| 85 |
+
City lights are falling slow" --language en --num-inference-steps 24
|
| 86 |
+
```
|
| 87 |
+
|
| 88 |
+
XL support landed in audio.cpp via
|
| 89 |
+
[PR #235](https://github.com/0xShug0/audio.cpp/pull/235); see
|
| 90 |
+
`docs/models/ace_step.md` there for the full option reference and for rebuilding
|
| 91 |
+
these files yourself.
|
| 92 |
+
|
| 93 |
+
Weights are MIT-licensed by ACE-Step; this repository only redistributes them in
|
| 94 |
+
a different container format.
|