Instructions to use groxaxo/chatterbox-multilingual-MLX-Q8-G64 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use groxaxo/chatterbox-multilingual-MLX-Q8-G64 with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] hf download groxaxo/chatterbox-multilingual-MLX-Q8-G64 --local-dir chatterbox-multilingual-MLX-Q8-G64
- Chatterbox
How to use groxaxo/chatterbox-multilingual-MLX-Q8-G64 with Chatterbox:
# pip install chatterbox-tts import torchaudio as ta from chatterbox.tts import ChatterboxTTS model = ChatterboxTTS.from_pretrained(device="cuda") text = "Ezreal and Jinx teamed up with Ahri, Yasuo, and Teemo to take down the enemy's Nexus in an epic late-game pentakill." wav = model.generate(text) ta.save("test-1.wav", wav, model.sr) # If you want to synthesize with a different voice, specify the audio prompt AUDIO_PROMPT_PATH="YOUR_FILE.wav" wav = model.generate(text, audio_prompt_path=AUDIO_PROMPT_PATH) ta.save("test-2.wav", wav, model.sr) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Atomic Chat
Chatterbox Multilingual MLX Q8 G64
Native MLX affine 8-bit, group-64 quantization of mlx-community/chatterbox-multilingual-v3, from its original FP32 weights. The main checkpoint is 877.79 MB, versus 2,711.11 MB for FP32. This model uses a user-provided reference recording; it contains no Valentina or other private voice recording or conditioning.
651 compatible main matrices are stored as Q8. The included loader also converts 37 compatible external S3Tokenizer matrices to Q8 at load time, for 688 Q8 matrices in execution. Unsupported tensors keep original FP32. The external S3TokenizerV2 remains a separate approximately 494.87 MB download/cache; its on-disk weights are not replaced. Loading through the standard mlx-audio loader quantizes only the main checkpoint; use load_q8.py to reproduce the evaluated full configuration.
Multilingual V3 runtime compatibility
This checkpoint uses the Multilingual V3 speech architecture. For
MLX-Audio builds whose HiFT V3 decoder applies a final LeakyReLU
negative slope of 0.1 before conv_post, the official V3 source uses
0.01 at that location. Check the runtime implementation or use a
version with the V3 decoder corrected; the intermediate slopes remain
unchanged. This is a decoder compatibility consideration and does not
require re-quantizing the model.
The LatAm regular Q8 release contains a source-guarded example and measured saturation checks. Those LatAm results do not certify this checkpoint; retain the model-specific evaluations and validate audio from your own runtime.
Multilingual fidelity follow-up using the Turbo tests โ 10 October 2026
Full protocol, findings and reproduction ยท Per-clip CSV ยท Transcripts ยท Five-page figure PDF.
Fresh FP32/Q8/Q6 measurements following the pinned Turbo evaluation, adapted to Multilingual's voice cloning and native 10-step decoder. Six English/Spanish phrases ร two seeds give 72 primary clips, plus 12 FP32 self-controls and 24 timing renders. All audio and reference-derived embeddings/tokens/conditioning remain private. This package publishes derived measurements and scripts only.
| Matched FP32 comparison, mean over 12 clips | Q8 G64 | Q6 G64 |
|---|---|---|
| Controlled decoder speaker cosine โ | 0.999778 | 0.998462 |
| Controlled log-mel RMS error, dB โ | 0.332138 | 1.000980 |
| Controlled mel magnitude cosine โ | 0.999722 | 0.997190 |
| Controlled spectral convergence โ | 0.034758 | 0.111073 |
| Controlled aligned waveform cosine โ | 0.978470 | 0.878268 |
| Whole-generation speaker cosine โ | 0.954568 | 0.917357 |
| Whole-generation strict ASR word edits | 29/216 (13.43%) | 43/216 (19.91%) |
| Warm generation median, seconds | 5.569 | 5.839 |
| Whole-process peak RSS, GiB | 1.510 | 1.362 |
Interpretation: Q8 preserves the original decoder more closely on this corpus. Whole-model token generation can diverge: sentence omissions in some ASR transcripts and a Q6 400-token/16-second pacing outlier are retained in the report. FP32 has 18/216 whole-generation ASR edits itself. Cosine is an in-family VoiceEncoder identity proxy, not MOS or a perceptual percentage; strict ASR is imperfect. Three phrases per language are insufficient for equivalence or a universal ranking. Timing ran on battery amid desktop activity; a separate Q6 recheck yielded a 5.941-second median. RSS and MLX allocations overlap. No new MOS, pitch or power measurements were made in this follow-up.
The weight audit confirms 651 main + 37 external runtime matrices per quantization, with all 1,836 unsupported tensors including convolutions unchanged FP32. This differs from the Turbo checkpoint's precision policy. No model weights were modified for this study.
Manifest, scientific validation, validation limits, evidence ledger. Source archive: groxaxo/experimentos at bb217a2. The prior naturalness/prosody corpus and historical evaluations below remain separate.
Complete FP32 / Q8 / Q6 experiment and model information
Experiment entry and reproduction ยท Performance/WER/power report ยท Naturalness and prosody ยท PDF ยท CSV.
The complete experiment package is included in this model repository: six prompts (three English, three Spanish), seeds 42 and 123, 36 matched recordings' derived measurements, five PNG/SVG figures, individual transcripts, pinned model and evaluator provenance, native quantization recipes, and an offline integrity/revalidation script. Private reference/generated recordings and the local audio listening panel are excluded. This is a generic checkpoint; supply reference audio you are authorized to use.
| Fresh 9 October 2026 run, MacBook Air M5 / 24 GiB | FP32 | Q8 G64 | Q6 G64 |
|---|---|---|---|
| Main checkpoint, decimal MB | 2711.114 | 877.794 | 718.359 |
| Mean warm generation, seconds | 4.925 | 2.687 | 2.580 |
| Aggregate real-time factor | 1.386 | 0.740 | 0.705 |
| Peak process RSS, GiB | 3.226 | 1.521 | 1.372 |
| Peak MLX allocation, GiB | 4.197 | 2.029 | 1.884 |
| Strict pooled Parakeet WER | 7.33% (11/150) | 6.67% (10/150) | 8.67% (13/150) |
| English UTMOSv2 predicted MOS | 3.032 | 3.117 | 3.121 |
| Spanish predicted MOS, exploratory | 2.643 | 2.737 | 2.749 |
| Pitch standard deviation, semitones | 2.617 | 2.567 | 2.632 |
Limits: predicted MOS is not human listener MOS. English Q6โQ8 was +0.003593, phrase-bootstrap 95% interval [โ0.140297, +0.211669], with only three English prompts. This establishes neither a perceptual winner nor equivalence. Spanish calibration is unvalidated for this corpus. More pitch variation is not inherently better. Performance used battery power, active desktop and fixed FP32โQ8โQ6 order; speed/power differences need controlled replication. RSS and MLX allocations overlap. Only English and Spanish were evaluated, regardless of the upstream supported-language metadata.
Package manifest, figure source hashes, archive origin, validation methods and known limits. From the package directory, python3 scripts/audit_archive.py revalidates saved data without downloading any models. Root SHA256SUMS.json includes the unchanged model checkpoint and this documentation package.
Earlier FP32 comparison
This earlier cohort is retained for provenance; its timings must not be combined with the fresh three-way run above.
Read the full FP32 comparison report. On the documented MacBook Air M5 run with six English/Spanish prompts and two seeds, Q8 used 53.2% less process peak RSS and 51.7% less peak MLX memory, with 28.7% shorter mean generation time. Strict Parakeet WER was 7.33% FP32 versus 6.67% Q8; the difference was a single edit and does not establish improved speech quality. No perceptual naturalness/voice-similarity score is claimed. The report includes exact hashes, seeds, parameters, transcripts, resource and power limitations.
Usage on Apple Silicon
Tested with mlx-audio 0.5.7 and MLX 0.32.3. Inference uses mlx-audio/Metal. oMLX supplied the original packing primitive; the oMLX serving runtime is not required.
pip install -r requirements.txt
import sys
from pathlib import Path
from huggingface_hub import snapshot_download
import mlx.core as mx
import numpy as np
import soundfile as sf
folder = Path(snapshot_download("groxaxo/chatterbox-multilingual-MLX-Q8-G64"))
sys.path.insert(0, str(folder))
from load_q8 import load_model
model = load_model(folder)
conds = model.prepare_conditionals("your-reference.wav", 24000, 0.5)
mx.random.seed(42)
results = list(model.generate(
"Hola, esta es una prueba de voz.", conds=conds, lang_code="es",
exaggeration=0.5, cfg_weight=0.5, temperature=0.8,
repetition_penalty=1.2, min_p=0.05, top_p=0.95,
max_new_tokens=400, verbose=False,
))
mx.eval(*[r.audio for r in results])
mx.synchronize()
audio = np.concatenate([np.asarray(r.audio).reshape(-1) for r in results])
sf.write("output.wav", audio, 24000)
Use lang_code="en" for English. First use fetches the separate S3Tokenizer dependency unless it is already cached. Set offline mode only after both model and dependency are cached. Use reference audio you have permission to use.
Provenance and license
Source revision: 03565773edd72e949572557597af8063bb49a18a. External tokenizer revision tested: e0c9886f0e1c35ae85b1f27277416fb19fc72bec. Source and quantized hashes are in evaluation/weight-validation.json. 1,836 untouched tensors were verified byte-identical to the baseline. The MIT license and upstream Resemble AI attribution are retained. This is an unofficial quantization, without fine-tuning, LoRA or voice adaptation baked into the checkpoint.
Rebuild the packed matrices
quantize_q8.py uses native MLX affine Q8 with the published per-matrix policy. Run it against the pinned FP32 source into a new directory:
python quantize_q8.py --source /path/to/fp32 --out ./rebuilt-q8
The original artifact used oMLX for packing, not calibrated oQ importance weighting. The byte-identical rebuild check was performed on Apple Silicon / Metal with MLX 0.32.3. A Linux CPU rebuild with the same MLX version produced different packed bytes, so backend and serialization/library versions can affect the checkpoint hash. The published SHA-256 identifies the evaluated artifact.
- Downloads last month
- 193
8-bit
Model tree for groxaxo/chatterbox-multilingual-MLX-Q8-G64
Base model
ResembleAI/chatterbox
