This project has been archived by its maintainers, and is no longer receiving any updates.
mihu-community-stt-tr
Real-time, low-latency speech-to-text (STT) for Turkish — on the CPU.
Turkish-only · streaming · CPU-native · runs on the edge. A compact 66 M-parameter causal streaming model, built for voice agents, call centers, and on-device transcription where a GPU is not an option — no API key, no cloud, no GPU.
- 🇹🇷 Turkish-first — every parameter serves one language, not ~100
- ⚡ Streaming — partial results as you speak (~320 ms), no 30-second windows
- 🖥️ CPU-native — RTF 0.128 on a single CPU thread (~8× faster than real time)
- 🔌 Tiny — ~68 MB; runs on a Raspberry-Pi-class device
- 🏷️ Entity/brand aware — tuned for Turkish brands, models, and numbers
Installation
pip install mihu-community-stt-tr
Usage
import mihu_stt
# one-shot: transcribe a file (16 kHz mono, or anything soundfile reads)
text = mihu_stt.transcribe("audio.wav")
print(text)
Streaming — feed audio as it arrives and read an updating transcript, with turn-end detection built in:
import mihu_stt
stt = mihu_stt.StreamingSTT()
# pcm16 = 16-bit PCM bytes from your mic / phone line
text, is_final = stt.accept_pcm16(pcm16, sample_rate=16000)
# `text` updates while speech continues; `is_final` turns True at end-of-utterance
Model weights download automatically from Hugging Face
(mihuai/mihu-community-stt-tr) the first time and are cached.
Integrations
Drop-in adapters for the common voice-agent stacks (see examples/):
LiveKit Agents — examples/livekit_stt.py:
from livekit.agents import AgentSession
from livekit_stt import MihuSTT
session = AgentSession(stt=MihuSTT(), llm=..., tts=...)
Pipecat — examples/pipecat_stt.py:
from pipecat_stt import MihuSTTService
pipeline = Pipeline([transport.input(), vad, MihuSTTService(), llm, tts, transport.output()])
Benchmarks
Measured in-house under one matched Turkish normalization. Real-human held-out FLEURS-TR (743 clips) and a second real-human set MediaSpeech-TR (200-clip subset), both audited absent from training. Latency on a single CPU thread (AMD EPYC 7282).
| System | Class | Params | FLEURS WER | MediaSpeech WER | CPU RTF |
|---|---|---|---|---|---|
| mihu-community-stt-tr | streaming · CPU | 66 M | 13.90% | 15.89% | 0.128 |
| Vosk-TR | streaming · CPU | ~50 M | 34.09% | 31.02% | 0.138 |
| Whisper small | offline · GPU | 244 M | 15.12% | — | 1.098 |
| Whisper large-v3 | offline · GPU | 1.5 B | 7.08% | — | 6.095 |
Among streaming, CPU-deployable systems mihu-community-stt-tr more than halves Vosk's error on both real-human sets, matches the four-times-larger offline Whisper-small, and is the only option that is real-time on CPU — it also degrades more gracefully than Vosk under additive noise. A detailed technical report — full methodology, ablations, latency/concurrency study, and the leakage audits — is being prepared and will be shared.
Reproduce the numbers
The evaluation set, references, and scripts are in eval/ — including the text (n-gram) and acoustic
(chromaprint) contamination audits used to verify the held-out sets are absent from training.
pip install "mihu-community-stt-tr[eval]"
python eval/run_eval.py --data-dir eval/tts-synthetic
License
mihu Community License — free for research, personal, and limited commercial use. See LICENSE
for the full terms. Weights are released under the same license on Hugging Face.
Metadata
Release files for mihu-community-stt-tr 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| mihu_community_stt_tr-0.2.1.tar.gz | 7.4 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mihu_community_stt_tr-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 16.7 kB
Release files / mihu_community_stt_tr-0.2.1.tar.gz
| Download URL | mihu_community_stt_tr-0.2.1.tar.gz |
|---|---|
| Size | 7.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
42fec9a0ed1bb6badbbfc32fa0eba617668f4715040335ee2b31746661be791b
|
|
BLAKE2b-256 checksum How to use checksums |
105c3008c0f355eddc0a237305859e38af1c793aea61f47af22379399b3fef98
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 22, 2026.
Transparency logRelease files / mihu_community_stt_tr-0.2.1-py3-none-any.whl
| Download URL | mihu_community_stt_tr-0.2.1-py3-none-any.whl |
|---|---|
| Size | 9.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
baeedb6819cfcb7745e922de071cb639ff5b4c075c40d083bb9010a4ec582996
|
|
BLAKE2b-256 checksum How to use checksums |
568b9c16c0c6f7bd7d2d0b4f8f5751403497064e06a558ed1f84de801daa1f40
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 22, 2026.
Transparency logSecurity for mihu-community-stt-tr 0.2.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for mihu_community_stt_tr-0.2.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 22, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.