Speaches
Speaches is an MIT-licensed server that presents OpenAI's audio API on your own hardware: streaming transcription and translation powered by faster-whisper, and speech generation with Kokoro and Piper voices. Any tool that works with OpenAI's API works against it with a base URL change, and models load on the first request that names them. Its README's own ambition is to be Ollama for speech models.
What does Speaches do?
Speaches "is an OpenAI API-compatible server supporting streaming transcription, translation, and speech generation". Its README's own ambition: "This project aims to be Ollama, but for TTS/STT models." Any tool or SDK that speaks OpenAI's audio API should work against it with a base URL change.
Speech to text is powered by faster-whisper, with transcription streamed back over server-sent events as it happens. Text to speech uses Kokoro and Piper voices. It also offers a realtime API and audio through the chat completions endpoint in three shapes: text in and audio out, audio in and text out, audio in and audio out. Models load on the first request that names them and unload after a period without use.
Key facts
- Licence: MIT on the server. It ships no weights; the models it loads carry their own licences.
- OpenAI API compatible: the README says all tools and SDKs that work with OpenAI's API should work with Speaches.
- Speech to text through faster-whisper, streamed back over server-sent events as the audio is transcribed.
- Text to speech through Kokoro and Piper voices.
- A realtime API, and audio through the chat completions endpoint in three shapes: text in and audio out, audio in and text out, audio in and audio out.
- Dynamic model loading and offloading: a model loads on the first request naming it and unloads after a period without use.
- Deployed through Docker or Docker Compose, with GPU and CPU support.
- Latest tagged release when read: v0.9.0-rc.3, a release candidate, on 2025-12-27.
What does it replace, and where does it fall short?
Speaches replaces Deepgram and AssemblyAI for code already written against OpenAI's transcription endpoint, and replaces ElevenLabs for code written against OpenAI's speech endpoint, because it presents both behind the same API shape on your own hardware.
Where it falls short: the README is short and defers to the website for installation and usage, and it does not state languages, word timestamps, speaker labels or model sizes. The models it loads are third-party and carry their own licences, which it does not list. Its latest GitHub release is a release candidate.
How does Speaches run?
Docker or Docker Compose, with GPU and CPU support. Nothing else is stated in the README; the documentation site covers the rest.
Who is Speaches for?
A team that wants one container serving both directions of speech behind the API its code already uses. A team that needs speaker labels should pair it with WhisperX, or use OpenWhispr or Vibe on the desktop.
What limits does the README state?
The streaming transcription demo section reads "TODO". Nothing else is listed.
Questions people ask
Is Speaches open source?
Yes. The server is MIT licensed. The models it serves are separate projects with their own licences: Whisper is MIT, Kokoro is Apache-2.0, and Piper's voices vary by voice, as recorded on their own pages on this site.
Does Speaches replace the OpenAI audio API?
For the endpoints it implements, yes: transcription, translation, speech generation, a realtime API and audio in chat completions. Code written against OpenAI's SDK points at Speaches by changing the base URL. The README does not state languages, word timestamps or speaker labels, so check those against the underlying model.
Does Speaches run on a CPU?
The README says GPU and CPU are both supported and that it deploys through Docker or Docker Compose. Everything else about installation is on the project's documentation site rather than in the README.
How does Speaches compare with Deepgram and ElevenLabs?
It covers both directions of speech behind one API on your own machine, with no per-minute or per-character bill, using models you choose. It does not offer speaker labels or a service commitment. See the alternatives to Deepgram and alternatives to ElevenLabs pages, where it appears on both.
What does Ollama for speech models mean?
The README's phrase for its design: one server, many models, loaded by name on demand and unloaded when idle, the way Ollama serves language models. You ask for a model in the request and Speaches fetches and runs it, rather than you configuring one model up front.
Sources
- Speaches README and MIT LICENSE: github.com/speaches-ai/speaches, read 2026-09-16.
Compared with the others
On the open-source alternatives to Deepgram page, Speaches is the pick for an openai-compatible server. MIT. Streaming transcription, translation and speech generation behind OpenAI's API shape, loading Whisper, Kokoro and Piper models on demand.
Also on that page: Whisper for the reference model on a gpu, whisper.cpp for a cpu, a mac, or a phone, WhisperX for word timestamps and speaker labels.
On the open-source alternatives to AssemblyAI page, Speaches is the pick for an openai-compatible server. MIT. Streaming transcription, translation and speech generation behind OpenAI's API shape, loading Whisper, Kokoro and Piper models on demand.
Also on that page: WhisperX for word timestamps and speaker labels, Whisper for the reference model on a gpu, whisper.cpp for a cpu, a mac, or a phone.
On the open-source alternatives to ElevenLabs page, Speaches is the pick for speech in and speech out from one container. MIT. One OpenAI-compatible server that serves Kokoro and Piper voices and transcribes with Whisper, loading models on demand.
Also on that page: Chatterbox for voice cloning you can ship, Kokoro FastAPI for a speech api on your own server, Piper for small devices and offline assistants.
On the open-source alternatives to the OpenAI API page, Speaches is the pick for openai's audio api on your own machine. MIT server that serves transcription, translation and speech through the OpenAI API shape with Whisper, Kokoro and Piper models loaded on demand.
Also on that page: Ollama for the quickest local start, LocalAI for every modality behind openai-compatible apis, llama.cpp for the engine on any hardware.
More speech-to-text engines
OpenAI's general-purpose speech recognition model, released with code and weights under MIT, in six sizes from 39 million to 1.55 billion parameters, with multilingual transcription, translation to English and language detection.
A dependency-free C and C++ port of Whisper under MIT that runs on CPUs, Apple Silicon and phones, with quantised models, an HTTP server and bindings for a dozen languages.
Batched Whisper transcription under BSD-2-Clause with word-level timestamps from forced alignment and speaker labels from pyannote, the closest open-source match to a hosted transcription API's output.
NVIDIA's speech models and toolkit: Apache-2.0 code, and the Parakeet TDT 0.6B v3 model under CC-BY-4.0 with 25 European languages, automatic language detection, punctuation and word timestamps.
A runtime under Apache-2.0 from the next-generation Kaldi team that runs speech to text, text to speech, speaker diarization and voice activity detection locally on CPUs, NPUs and phones, with no internet connection.
An offline speech recognition toolkit under Apache-2.0 with streaming, models of about 50 MB, 20+ languages, a reconfigurable vocabulary and speaker identification, from small boards to clusters.
Added September 16, 2026. Every claim above comes from the project's README, LICENSE or model card, read on September 16, 2026, or from the GitHub API on the date shown in the panel. Found an error? Write to reveneau@licheo.com and it is fixed in the next weekly pass. Repository: github.com/speaches-ai/speaches.
Want Speaches running on your own servers?
Reveneau sets it up on your hardware, connects it to your product, and builds the software around it.