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.

Matched controlled decoder fidelity

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.

Matched naturalness and prosody analysis

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
Safetensors
Model size
0.7B params
Tensor type
F32
ยท
U32
ยท
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 groxaxo/chatterbox-multilingual-MLX-Q8-G64

Quantized
(2)
this model