Open-source text-to-speech model family by Resemble AI, with voice cloning from a short reference clip across English and many other languages.
KittenML/KittenTTS
Open-source text-to-speech library whose KittenTTS 2 model clones voices from 5 seconds of audio and runs in real time on a CPU.
Open-source alternative to:ElevenLabs
- Stars
- 16,193
- Forks
- 967
- Open issues
- 138
- Last commit
- 4 days ago
What is it?
Kitten TTS is a Python text-to-speech library built around KittenTTS 2, a 1.7B-parameter 1-bit speech language model. It supports in-context voice cloning from 5-30 seconds of a speaker's audio, 47 built-in voices, 20 languages, and optional emotion, vocal-event and emphasis tags that steer delivery.
The library also includes lightweight ONNX models ranging from 15M to 80M parameters that run on CPU without a GPU, all loaded through the same KittenTTS constructor. Long input is split on sentence boundaries and joined seamlessly, and a streaming generator yields audio chunk by chunk.
Inference can be done with the standard Python package, a C++ backend built on llama.cpp, or vLLM on NVIDIA GPUs. Model weights are licensed separately from the Apache-2.0 code and carry their own terms.
Key features
- 01Voice cloning from 5-30 seconds of reference audio, with no fine-tuning
- 0247 built-in voices across 20 languages
- 03Emotion tags, inline vocal events and emphasis spans for expressive speech
- 04Lightweight ONNX models that run on CPU without a GPU
- 05Sentence-aware chunking for long text and a streaming generator
- 06Optional C++ backend and vLLM support for faster inference
Use cases
- Adding offline speech output to a CPU-only application or edge device
- Generating narration for long scripts or articles
- Prototyping a custom voice from a short sample of a speaker
- Building low-latency voice playback that starts before synthesis finishes
Quick start
- 1
Install the package with pip
pip install kittenml - 2
Generate speech with KittenTTS 2 and save it to a WAV file
python -c "from kittenml import KittenTTS; import soundfile as sf; m = KittenTTS('KittenML/kitten-tts-2'); audio = m.generate('One day, a little girl named Lily found a needle in her room.', voice='Bruno'); sf.write('output.wav', audio, m.sample_rate)"
Things to know
- KittenTTS 2 weights are under the separate Stellon Labs Community License, not Apache-2.0, so check its terms before commercial use.
- Expression control is in beta and its effect varies by voice and sentence.
- Streaming is chunk-level, so the first audio chunk still has a real generation delay.
- The C++ CPU path is in beta.
Topics
FAQ
- What is KittenTTS?
- Open-source text-to-speech library whose KittenTTS 2 model clones voices from 5 seconds of audio and runs in real time on a CPU. Kitten TTS is a Python text-to-speech library built around KittenTTS 2, a 1.7B-parameter 1-bit speech language model. It supports in-context voice cloning from 5-30 seconds of a speaker's audio, 47 built-in voices, 20 languages, and optional emotion, vocal-event and emphasis tags that steer delivery.
- Is KittenTTS free to use? What license does it have?
- KittenTTS is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is KittenTTS still maintained?
- Actively maintained. The last commit to KittenTTS was on Oct 16, 2026.
- What can I use KittenTTS for?
- Adding offline speech output to a CPU-only application or edge device Generating narration for long scripts or articles Prototyping a custom voice from a short sample of a speaker Building low-latency voice playback that starts before synthesis finishes
- How do I install KittenTTS?
- Install the package with pip: pip install kittenml Generate speech with KittenTTS 2 and save it to a WAV file: python -c "from kittenml import KittenTTS; import soundfile as sf; m = KittenTTS('KittenML/kitten-tts-2'); audio = m.generate('One day, a little girl named Lily found a needle in her room.', voice='Bruno'); sf.write('output.wav', audio, m.sample_rate)"
- Where can I get KittenTTS?
- The source code and installation instructions are on GitHub: https://github.com/KittenML/KittenTTS
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A 0.1B-parameter multilingual text-to-speech model that runs in realtime on CPU, with voice cloning and 48 kHz stereo output.
Open-source text-to-speech system with voice cloning, natural-language emotion control and multi-speaker generation, built on LLM-style models.
Python inference library for Kokoro-82M, an open-weight text-to-speech model with 82 million parameters.
Lightweight zipvoice-based TTS model for voice cloning and 48kHz speech generation, running at over 150x realtime on GPU.
Python package for offline text-to-speech using the Kokoro model running on ONNX Runtime, with CPU and GPU support.