Downloads · 30 days
4.7K
45% of all-time downloads
cstr/pocket-tts-GGUF
pocket-tts-GGUF is a text-to-speech model from cstr. Use it when you need text read aloud. It is set up for ggml. The card lists the license as cc-by-4.0.
GGUF / ggml conversion of kyutai/pocket-tts for use with CrispStrobe/CrispASR.
Downloads · 30 days
4.7K
45% of all-time downloads
All-time downloads
10.6K
Public
Repo size
4.7 GB
Likes
7
Public
Click a slice to open those files.
.gguf3.2 GB · 100%
From the Hugging Face model README
GGUF / ggml conversion of kyutai/pocket-tts for use with CrispStrobe/CrispASR.
Pocket TTS is a lightweight (~100M param) continuous-latent autoregressive TTS model from Kyutai, based on the CALM paper (arXiv:2509.06926). Unlike codebook-based TTS models, Pocket TTS emits continuous float vectors — no discrete tokens, no softmax sampling:
Single GGUF file — no separate codec companion needed (Mimi weights and the tokenizer are embedded).
Released under CC-BY-4.0 license.
Pocket TTS is zero-shot: it clones the timbre of a short reference clip. The
voice-cloning builds (the files without novc in the name) embed the Mimi
VAE encoder and speaker projection needed to condition on a reference; the
English-only novc builds omit that encoder and are ~20 MB smaller.
# clone the timbre of ref.wav (any sample rate; mono is used)
./build/bin/crispasr --backend pocket-tts -m pocket-tts-english-f16.gguf \
--voice ref.wav \
--tts "The quick brown fox jumps over the lazy dog." \
--tts-output fox.wav --seed 42
Pocket TTS produces near-silence without voice conditioning, so if you omit
--voice a built-in default reference is used automatically. Use a clean,
single-speaker reference of a few seconds for best results.
The multilingual Q8_0/F16 files are full voice-cloning models. German, Spanish,
Italian, and Portuguese are Kyutai's distilled 6-layer releases; French is the
larger, undistilled 24-layer preview. The decoder-only novc alternatives
are currently English-only.
| File | Voice clone | Quant | Size | Notes |
|---|---|---|---|---|
pocket-tts-english-f16.gguf | ✅ | F16 | 219 MB | Reference quality, cloning |
pocket-tts-english-q8_0.gguf | ✅ | Q8_0 | 124 MB | Near-F16, cloning |
pocket-tts-english-q4_k.gguf | ✅ | Q4_K | 73 MB | Smallest with cloning |
pocket-tts-english-novc-f16.gguf | — | F16 | 200 MB | Decoder only |
pocket-tts-english-novc-q8_0.gguf | — | Q8_0 | 110 MB | Decoder only |
pocket-tts-english-novc-q4_k.gguf | — | Q4_K | 62 MB | Decoder only, smallest |
pocket-tts-german-q8_0.gguf | ✅ | Q8_0 | 124 MB | German, distilled 6L |
pocket-tts-spanish-q8_0.gguf | ✅ | Q8_0 | 124 MB | Spanish, distilled 6L |
pocket-tts-italian-q8_0.gguf | ✅ | Q8_0 | 124 MB | Italian, distilled 6L |
pocket-tts-portuguese-q8_0.gguf | ✅ | Q8_0 | 124 MB | Portuguese, distilled 6L |
pocket-tts-french_24l-q8_0.gguf | ✅ | Q8_0 | 365 MB | French, undistilled 24L preview |
F16 equivalents of every multilingual Q8_0 file are also available (about 219 MB for each 6-layer model and 673 MB for French).
# 1. Build CrispASR
git clone https://github.com/CrispStrobe/CrispASR
cd CrispASR
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j --target crispasr-cli
# 2. Download a model (voice-cloning F16 shown)
huggingface-cli download cstr/pocket-tts-GGUF pocket-tts-english-f16.gguf --local-dir .
# 3. Synthesize
./build/bin/crispasr --backend pocket-tts -m pocket-tts-english-f16.gguf \
--tts "Hello, how are you today?" \
--tts-output hello.wav --seed 42
Or with auto-download. -l de, es, it, pt, or fr selects and caches
the matching Q8_0 checkpoint; omit -l for English:
./build/bin/crispasr --backend pocket-tts -m auto --auto-download -l es \
--accept-license pocket-tts-terms \
--voice ref.wav --i-have-rights \
--tts "Hola, este modelo ya habla español." \
--tts-output hola.wav
from crispasr import Session
sess = Session("pocket-tts-english-f16.gguf")
sess.set_tts_seed(42)
pcm = sess.synthesize("Hello world.")
sess.write_wav("hello.wav", pcm)
Converted with models/convert-pocket-tts-to-gguf.py from the CrispASR repo
(--voice-cloning bakes in the Mimi encoder + speaker projection). The Mimi
codec and SentencePiece tokenizer are embedded in the single GGUF.