Chatterbox Turbo GGUF

GGUF conversion of ResembleAI/chatterbox-turbo for codec.cpp and llama.rn.

Chatterbox Turbo pairs a GPT-2 T3 (text โ†’ S3 speech tokens) with a MeanFlow S3Gen decoder (2 flow steps, no CFG). It is split into two files:

  • Backbone (chatterbox-turbo-t3-<quant>.gguf): the T3 transformer as a stock gpt2 GGUF with its GPT-2 BPE vocabulary (paralinguistic tags such as [laugh] are added tokens). Runs in stock llama.cpp with embeddings=true.
  • Codec + codec_lm (chatterbox-turbo-codec-<quant>.gguf): the MeanFlow S3Gen decoder and HiFT vocoder, the T3 adaptor (speech embedding, speech head, voice-encoder conditioning), the builtin voice, and the speaker encoders used for voice cloning (S3 tokenizer, CAMPPlus, VoiceEncoder). Runs in codec.cpp.

Files

Backbone

File Size
chatterbox-turbo-t3-f16.gguf 709 MB
chatterbox-turbo-t3-q8_0.gguf 393 MB
chatterbox-turbo-t3-q4_k_m.gguf 259 MB

Codec + codec_lm

File Size
chatterbox-turbo-codec-f32.gguf 1.24 GB
chatterbox-turbo-codec-f16.gguf 648 MB
chatterbox-turbo-codec-q8_0.gguf 339 MB
chatterbox-turbo-codec-q5_k_m.gguf 248 MB
chatterbox-turbo-codec-q4_k_m.gguf 217 MB

Precision-sensitive tensors (mel filterbanks, windows, the S3 tokenizer codebook) stay F32 in every file.

The quantized codec files need codec.cpp 0289fcc or newer (quantized conv layouts and their kernel sizes). The f16 / f32 files also work with 360163d. llama.rn vendors 0289fcc on its chore/bump-codec-cpp branch.

Quantized codec recipe (scripts/quantize-gguf.py): the decoder at Q8_0 / Q5_K / Q4_K with Q8_0 fallback, the LM adaptor (lm.*) at Q8_0 in every file, the S3 tokenizer codebook kept F32.

Validation (codec.cpp tts-cli, Whisper CER, CPU and Vulkan): every codec variant, with the builtin voice and with a cloned voice, CER 0.

Voices

  • One builtin voice, default.
  • Voice cloning from reference audio: the clip conditions both the T3 (voice-encoder row) and the S3Gen decoder (prompt tokens, prompt mel and CAMPPlus x-vector, derived in-library). Speakers derived from audio can be saved to a speaker file and reloaded.

Sampling

The reference sampling settings (tts_turbo.py) are stored as metadata in the codec GGUF:

Setting Key Value
Temperature codec.lm.chatterbox.sampling.temperature 0.8
Top-k codec.lm.chatterbox.sampling.top_k 1000
Top-p codec.lm.chatterbox.sampling.top_p 0.95
Repetition penalty codec.lm.chatterbox.sampling.repetition_penalty 1.2

Generation stops on the stop-speech token. Three S3Gen silence tokens are appended before decoding, as upstream does.

Usage

codec.cpp:

tts-cli synthesize --model chatterbox-turbo-codec-f16.gguf --backbone chatterbox-turbo-t3-f16.gguf \
    --text "Hello, this is Chatterbox Turbo." --output out.wav
# voice clone
tts-cli synthesize ... --ref-audio ref.wav --text "..." --output out.wav

llama.rn: load the backbone with embedding: true, attach the codec with initVocoder, and follow the TTS section of the llama.rn README. getTTSCapabilities().samplingDefaults returns the settings above.

License

MIT, as the original model.

Downloads last month
-
GGUF
Model size
0.3B params
Architecture
chatterbox_s3g
Hardware compatibility
Log In to add your hardware

4-bit

5-bit

8-bit

16-bit

32-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for BricksDisplay/Chatterbox-Turbo-GGUF

Quantized
(20)
this model