Text-to-speech
For longer inputs, split on sentence/paragraph boundaries and synthesize in parallel, or use
tts.stream() which chunks for you.
Output format
tts.create//v1/tts: WAV — 24 kHz, 16-bit PCM, mono./v1/audio/speech:wavorpcm(raw 16-bit PCM @ 24 kHz).tts.stream//v1/tts/stream: a sequence of WAV chunks (framed).- MP3 / Opus / µ-law are not native yet — convert with
ffmpeg(roadmap).
Speech-to-text
Output format. JSON. Transcripts are lowercase and unpunctuated — the model’s output vocabulary contains no capitals and no punctuation, so nothing is being stripped. Punctuation and truecasing are on the roadmap.
Word timestamps. Add
?timestamps=true for words and segments with start/end times in seconds — free, since the alignment comes out of the same decode pass. srt, vtt and verbose_json all work on the OpenAI-compatible endpoint. Precision is tens of milliseconds; speaker diarization is on the roadmap. See word-level timestamps.
There is deliberately no language parameter — see the STT overview for why.
Models & voices
- Text-to-speech:
tokay-kk-v1(Kazakh) with six voices (Aigerimdefault). New models/languages appear onGET /v1/models. - Speech-to-text:
seta-kk-ru-v2(Kazakh + Russian, code-switching). Listed bygeko.stt.models(). - Always fetch
/v1/voicesrather than hard-coding the catalog.
Rate limits
There is no hard per-second rate limit today on either product — throughput is bounded by your credit balance. Requests run concurrently; the SDK does not serialize them. (Explicit rate limiting may arrive later.)Cold starts
Both GPU backends scale to zero when idle to save cost, so the first request after an idle period can take tens of seconds; subsequent calls (within a few minutes) are fast. The SDK’s default 120 s timeout is sized for this. The two services warm independently — a synthesis call does not warm the transcriber, or vice versa. If you need both hot for a live session, pre-warm both. See Latency & quality for tuning and keep-warm tips.Next steps
Latency & quality
Tune the
nfe dial and handle cold starts.Streaming
Chunk long inputs to start playback sooner.
Billing & credits
Throughput is bounded by your credit balance.
Errors & retries
What happens when a request exceeds a limit.