Local speech recognition & synthesis

Generate speech on a CPU with Pocket TTS in six languages

Supports English, French, German, Portuguese, Italian, and Spanish.

Pocket TTS1 is an approximately 100M-parameter model that turns text into speech on a CPU2, with a Python API3 and CLI4. Its current language list is English, French, German, Portuguese, Italian, and Spanish. Korean and Japanese are not listed, so this is not a TTS choice for those languages.

Requirements and key details
  • Current languages are English, French, German, Portuguese, Italian, and Spanish.
  • It is a lightweight CPU-focused TTS with a Python API and CLI.
  • Korean and Japanese are not currently included.

Create speech on a CPU and save it to a file

Pocket TTS is Kyutai's lightweight TTS. Its documentation lists Python 3.10+ and PyTorch5 2.5+ and says it runs on CPU without the GPU6 build of PyTorch. Pass text through its CLI or Python API and save a WAV. Official model card and documentation

An open book, a small computer, and a speaker on a desk
Choose an input language and synthesize a short sentence.

Confirm the language before installing

Supported languages are English, French, German, Portuguese, Italian and Spanish. For Korean announcements or Japanese narration, compare Supertonic 3 or VoxCPM2. Current language list

Save a sentence to WAV with the Python API

Install pocket-tts and scipy for WAV writing in a virtual environment7, then download the official Hugging Face voice asset. Save the code as generate.py and run it; the prompt8 is assets/alba-mackenna/casual.wav, and output.wav is written to the current folder.

Install the Python package
python -m pip install pocket-tts scipy
Download the example voice asset
python -m pip install "huggingface_hub[cli]"
hf download kyutai/tts-voices alba-mackenna/casual.wav --local-dir assets
Generate an English speech WAV
from pocket_tts import TTSModel
import scipy.io.wavfile

model = TTSModel.load_model()
voice = model.get_state_for_audio_prompt("assets/alba-mackenna/casual.wav")
audio = model.generate_audio(voice, "Hello, this is a short test.")
scipy.io.wavfile.write("output.wav", model.sample_rate, audio.numpy())
Run the script
python generate.py

Read speed figures with their hardware conditions

The card reports faster-than-real-time generation and first-audio delay measured on a MacBook Air M4 CPU. Those results belong to that CPU and runtime9 setup, not a promise for your device. Generate a representative script on your hardware and record first-audio delay and total completion time separately.

A microphone, headphones, and a monitor showing an audio waveform
Check sentence flow and number readings in the WAV.

Treat browser implementations as a separate path

The official Pocket TTS project also describes browser implementations. Python CPU installation and web execution are separate environments, so do not use these steps as browser setup. For browser use, check the current implementations and language coverage in the model card's in-browser section. Pocket TTS browser implementations

Check the weights license and intended use

The current model card lists CC-BY-4.0. Check the current license text for model-weight and generated-output terms and attribution requirements. Local execution can keep processing on your device, but you still need rights to the audio and voices you use.

Headphones, an audio player, and an open notebook on a desk
Check the language list first, especially if you need Korean.

Terminology notes

  1. Text-to-Speech — Technology that converts text into spoken audio with pronunciation and prosody.

    Back to the text
  2. CPU — The central processor that runs the operating system and general-purpose instructions; in AI workloads it also handles tasks such as preprocessing and data movement.

    Back to the text
  3. API — A defined interface that lets other code call a program’s functions.

    Back to the text
  4. CLI — Short for Command-Line Interface: operating a program by entering commands in a terminal.

    Back to the text
  5. PyTorch — A software framework for building and running AI models. Check the compatible PyTorch version and hardware support along with the model.

    Back to the text
  6. GPU — A processor designed to handle many calculations in parallel. It performs model computations during AI inference.

    Back to the text
  7. Python virtual environment — An isolated space for installing Python packages per project, helping reduce package-version conflicts.

    Back to the text
  8. Prompt — The input text sent to a model. For generative models it describes the desired result and strongly shapes the output.

    Back to the text
  9. Runtime — The software environment that provides facilities needed while a program runs. In local AI, it can also refer to a model execution engine.

    Back to the text

Frequently asked questions

What should you check first in this article?
Pocket TTS is an approximately 100M-parameter model that turns text into speech on a CPU, with a Python API and CLI. Its current language list is English, French, German, Portuguese, Italian, and Spanish. Korean and Japanese are not listed, so this is not a TTS choice for those languages.
Where can you check the conditions and sources?
Pocket TTS is Kyutai's lightweight TTS. Its documentation lists Python 3.10+ and PyTorch 2.5+ and says it runs on CPU without the GPU build of PyTorch. Pass text through its CLI or Python API and save a WAV. [Official model card and documentation](https://huggingface.co/kyutai/pocket-tts)