NeuTTS-2E
Q8 GGUF version, Q4 GGUF version
Created by Neuphonic - building faster, smaller, on-device voice AI
NeuTTS-2E is a super-fast, highly realistic, on-device emotional TTS speech language model. It is an early alpha release, English-only model, supporting six emotions plus neutral (angry, disgusted, fearful, happy, sad, surprised and neutral) across four fixed speakers (emily, paul, sophie, steven). With a compact backbone and an efficient LM + codec design, NeuTTS-2E delivers strong naturalness and expressive control at a fraction of the compute, making it ideal for embedded voice agents, assistants, toys, and privacy-sensitive applications.
This model is English only with fixed speakers: for other languages and instant voice cloning, see the NeuTTS Nano Multilingual Collection.
Key Features
- β‘οΈ Ultra-fast for on-device β built for real-time or better-than-real-time generation on laptop-class CPUs
- π ππ Emotional control β six emotions plus neutral, selected with a single argument
- π£ High realism for its size β natural, expressive speech in a compact footprint
- π¦ GGUF/GGML-friendly deployment β easy to run locally via CPU-first tooling
- π Local-first + compliance-friendly β keep audio and text on-device
Websites like neutts.com are popping up and they're not affliated with Neuphonic, our github or this repo.
We are on neuphonic.com only. Please be careful out there! π
Model Details
NeuTTS-2E is designed for maximum speed per parameter while retaining strong naturalness and expressive control:
- Backbone: compact LM backbone tuned for emotional TTS token generation
- Input Format: text β no phonemizer or system dependencies required
- Speakers: four fixed speakers (
emily,paul,sophie,steven) - Emotions:
angry,disgusted,fearful,happy,sad,surprisedandneutral - Audio Codec: NeuCodec - our open-source neural audio codec that achieves exceptional audio quality at low bitrates using a single codebook
- Format: quantisations available in GGUF format for efficient on-device inference
- Responsibility: Watermarked outputs
- Inference Speed: Optimised for real-time generation on CPUs
- Power Consumption: Designed for mobile and embedded devices
Parameter Count
- Active params (backbone only): ~125M
- Total params (backbone + tied embeddings/head): ~236M
Get Started with NeuTTS
Install NeuTTS
pip install neuttsOr for a local editable install, clone the neutts repository and run in the base folder:
pip install -e .Alternatively to install all dependencies, including
onnxruntimeandllama-cpp-python(equivalent to steps 2 and 3 below):pip install neutts[all]or for an editable install:
pip install -e .[all](Optional) Install
llama-cpp-pythonto use.ggufmodels.pip install "neutts[llama]"Note that this installs
llama-cpp-pythonwithout GPU support. To install with GPU support (e.g., CUDA, MPS) please refer to: https://pypi.org/project/llama-cpp-python/(Optional) Install
onnxruntimeto use the.onnxdecoder.pip install "neutts[onnx]"
Examples
To get started with the example scripts, clone the neutts repository and navigate into the project directory:
git clone https://github.com/neuphonic/neutts.git
cd neutts
Basic Example
Run the emotional example script to synthesize speech:
python -m examples.basic_example_emotions \
--input_text "I can't believe it's finally here!" \
--speaker emily \
--emotion happy
Simple One-Code Block Usage
from neutts import NeuTTS2E
import soundfile as sf
tts = NeuTTS2E()
wav = tts.infer(
"I can't believe it's finally here!",
speaker="emily",
emotion="happy",
)
sf.write("test.wav", wav, 24000)
Responsibility
Every audio file generated by NeuTTS-2E includes by default a Perth (Perceptual Threshold) Watermark.
Disclaimer
Don't use this model to do bad things⦠please.
- Downloads last month
- -
