Speaches is an OpenAI API-compatible server that provides streaming transcription, translation, and speech generation capabilities.
The tool addresses the need for a self-hosted alternative to cloud-based speech services. It uses faster-whisper for speech-to-text conversion, enabling real-time transcription with streaming output via server-sent events so results arrive as audio is processed rather than requiring the full file to be uploaded first. For text-to-speech, it integrates piper and Kokoro models. The server implements dynamic model loading and unloading, meaning you specify which model to use in each request and it loads automatically, then offloads after a period of inactivity. This approach avoids keeping all models in memory simultaneously.
Speaches suits developers building applications that need speech capabilities without reliance on external APIs, particularly those with privacy or latency concerns. The OpenAI API compatibility means existing tools and SDKs designed for OpenAI's endpoints work directly with this server. The project supports both GPU and CPU inference, making it deployable across different hardware configurations. Docker Compose deployment is available for straightforward setup. The tool handles diverse use cases including audio generation from text, sentiment analysis on recordings, and bidirectional speech-to-speech interactions with models. Streaming transcription is a distinguishing feature for applications requiring incremental results.
Development activity shows consistent engagement with bug reports and feature requests being actively managed through the issue tracker. The project maintains comprehensive documentation at its homepage covering installation and usage patterns. Configuration flexibility is emphasized as a core capability, allowing operators to tune behavior for their specific deployment needs. The codebase demonstrates active maintenance with Docker and containerization as first-class concerns in the deployment story.