pocket-tts
Kyutai's pocket-sized text-to-speech!
What it is and what it does
Pocket TTS is a CPU-based text-to-speech engine built on a 100M-parameter model that generates natural speech without requiring GPU hardware or external APIs. It runs on Python 3.10–3.14 with PyTorch 2.5+ and provides both a command-line interface and a Python library for integration into applications. The model supports six languages (English, French, German, Portuguese, Italian, Spanish) and includes voice cloning from audio samples, streaming output, and a local HTTP server for batch or interactive use.
The package depends on a substantial ML stack—torch, numpy, scipy, einops, safetensors, huggingface-hub—plus FastAPI and Uvicorn for the server mode. It achieves low-latency streaming (first chunk in ~200ms) and runs faster than real-time on modest CPU hardware. The library is designed for straightforward integration: load the model once, create voice states for each speaker, then generate audio in a single function call. Voice cloning requires preprocessing audio files into safetensors embeddings for fast inference.
Use it for:
- Generate speech from user input in a web or desktop application without deploying a GPU server or calling a cloud API.
- Clone a speaker's voice from a sample audio file and synthesize new utterances in that voice for accessibility or personalization.
- Build a local TTS microservice with the `serve` command to batch-process text-to-speech requests over HTTP.
- Integrate multilingual speech synthesis into a Python script or Jupyter notebook for data annotation, testing, or prototyping.
- Stream audio output in real time to reduce latency when generating long or interactive speech content.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Pocket TTS generates speech from text on CPU using a lightweight 100M-parameter model, with support for multiple languages, voice cloning, and audio streaming via Python API or CLI.
Yes, if you need CPU-based TTS without GPU overhead and can accept unclear licensing. The package is actively maintained, installs easily, has no known vulnerabilities, and offers a practical balance of quality and speed. Verify the license terms before production use, and test performance on your target hardware. The 15 runtime dependencies are substantial but standard for ML workloads.
Install
pocket-tts on PyPI
pip
pip install pocket-ttsuv
uv add pocket-ttspoetry
poetry add pocket-ttsInstalling pocket-tts
Before you install
Low install friction with a pure-Python wheel. Active maintenance as of 102 days since last release. Requires PyTorch 2.5+ and Python 3.10–3.14, but does not mandate GPU PyTorch.
License in practice
License treatment is unclear; no SPDX identifier or raw license text is available in the metadata. Verify the actual license before use in proprietary or copyleft-sensitive projects.
Quickstart
pip install pocket-tts
from pocket_tts import TTSModel
import scipy.io.wavfile
tts_model = TTSModel.load_model()
voice_state = tts_model.get_state_for_audio_prompt("alba")
audio = tts_model.generate_audio(voice_state, "Hello world")
scipy.io.wavfile.write("output.wav", tts_model.sample_rate, audio.numpy())
Requires PyTorch 2.5+; Python 3.10–3.14 only. Model and voice state loading are slow operations; keep them in memory for repeated use.
Verify before relying
- Actual license terms and attribution requirements for the model and voice samples
- Whether voice cloning respects speaker consent and licensing of source audio
- Performance characteristics on systems other than MacBook Air M4
- Stability and API compatibility across minor versions
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (<3.15,>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 15 — beartype, einops, fastapi, huggingface-hub, numpy, pydantic, python-multipart, requests, safetensors, scipy, sentencepiece, torch, typer, typing-extensions, uvicorn |
| Maintenance | actively maintained — 102 days since the last release |
| First released | |
| Downloads | 76,294/month — #14,639 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pocket_tts-2.1.0-py3-none-any.whl
Tags
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to…
permissive · top 100 on PyPI
huggingface-hubClient library and CLI tool for downloading,…
permissive · top 100 on PyPI
langchainLangChain provides a framework for building…
permissive · top 1,000 on PyPI
hf-xethf-xet provides chunk-based deduplication and…
permissive · top 1,000 on PyPI
tokenizersTokenizers converts raw text into token…
permissive · top 1,000 on PyPI
transformersTransformers provides a unified framework for…
permissive · top 1,000 on PyPI
TTSTTS is a deep learning library for…
copyleft · top 15,000 on PyPI
pyttsx3pyttsx3 converts text to speech offline using…
copyleft · top 5,000 on PyPI
piper-ttsPiper TTS is a local neural text-to-speech…
copyleft · top 5,000 on PyPI
kokoro-onnxConverts text to speech using ONNX Runtime,…
unclear · top 15,000 on PyPI
chatterbox-ttsChatterbox TTS converts text to speech using…
permissive · top 15,000 on PyPI
voxcpmVoxCPM2 is a tokenizer-free text-to-speech…
permissive · top 15,000 on PyPI
gTTSgTTS converts text to speech using Google…
permissive · top 5,000 on PyPI
omnivoiceOmniVoice generates speech from text in over…
permissive · top 15,000 on PyPI
qwen-ttsQwen-TTS generates speech from text using…
permissive · top 15,000 on PyPI
edge-ttsConverts text to speech using Microsoft Edge's…
copyleft · top 5,000 on PyPI