Audio8-TTS-Preview-0.6b-MLX-4bit

MLX 4-bit (group size 32) quantization of Edge0/Audio8-TTS-Preview-0.6b, a 0.6B DualAR text-to-speech model with zero-shot voice cloning across 11 languages (Cantonese, Chinese, Dutch, English, French, German, Italian, Japanese, Korean, Polish, Spanish). Runs on Apple Silicon with mlx-audio (arktts model class).

Provenance

  • Source: Edge0/Audio8-TTS-Preview-0.6b @ revision f07040f3d151f1ba0253bfb92cb2f5dd38b44594 (Apache-2.0).
  • Only the language model's linear layers are quantized to 4-bit affine (gs32). The 44.1 kHz codec is kept in fp32 and the tied token-embedding table in bf16 (it doubles as the output head), so audio fidelity is bounded by the LM tier, not the vocoder.
  • The upstream codec.pth (torch pickle) was re-serialised to safetensors with keys unchanged; auto_map was dropped from config.json so loading never asks for remote code.
  • Built with the standalone lane pipelines/audio8_tts_mlx_release.py in ajentik/majek.

Smoke gate

Before upload this tier synthesised one sentence per language below with the default voice and was transcribed back by majentik/Qwen3-ASR-1.7B-MLX-8bit. A tier ships only if every sample is finite, > 1 s, non-silent and has character error rate <= 0.35.

Lang Audio RTF CER Verdict
en 3.7 s 0.44 0.000 pass
zh 3.9 s 0.42 0.000 pass
ko 4.7 s 0.53 0.000 pass
ja 4.7 s 0.48 0.036 pass
yue 4.3 s 0.34 0.250 pass

Peak unified memory during synthesis: 6.4 GB (mlx 0.32.2, mlx-audio 0.5.4, Apple M5 Max 128GB). Gate record: .sisyphus/evidence/audio8-tts/4bit/smoke.json in the repo above.

Usage

pip install -U mlx-audio soundfile
python -m mlx_audio.tts.generate --model majentik/Audio8-TTS-Preview-0.6b-MLX-4bit \
  --text "The quick brown fox jumps over the lazy dog." --output_path out
import mlx.core as mx, numpy as np, soundfile as sf
from mlx_audio.tts.utils import load

model = load("majentik/Audio8-TTS-Preview-0.6b-MLX-4bit")
for r in model.generate(
    text="今天天气很好,我们一起去公园散步吧。",
    # optional zero-shot cloning:
    # ref_audio="speaker.wav", ref_text="transcript of speaker.wav",
):
    sf.write("out.wav", np.asarray(r.audio.astype(mx.float32)), 44100)

Evaluation

Only the multilingual smoke gate above is run at publish time; no MOS or speaker-similarity study has been done on this tier. Upstream reports token-exact greedy parity between the MLX port and the reference implementation for the unquantized model.

Available tiers

No bf16 tier is published here: the source is already bf16 and mlx-community/Audio8-TTS-Preview-0.6b-bf16 covers it.

License

Apache-2.0, inherited from the source model. See the source card for the model's intended use and limitations.

Downloads last month
36
Safetensors
Model size
0.9B params
Tensor type
F32
·
BF16
·
U32
·
MLX
Hardware compatibility
Log In to add your hardware

4-bit

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

Model tree for majentik/Audio8-TTS-Preview-0.6b-MLX-4bit

Quantized
(11)
this model

Collection including majentik/Audio8-TTS-Preview-0.6b-MLX-4bit