tokay-kk-v1) in six named voices, and expands numbers, currency and dates into how a Kazakh speaker would actually say them before it synthesizes.
Your existing key works. One API key covers text-to-speech and speech-to-text, and both draw down the same credit balance — nothing new to provision.
Voices
Six Kazakh voices — audition them and pick by ear.
Drop-in for OpenAI TTS
Change
baseURL on your OpenAI client. That’s the whole migration.try it in one line
from code
tts.stream() yields one complete WAV per sentence:
what comes back
Raw WAV bytes — 24 kHz, 16-bit PCM, mono — not JSON. The billed character count rides along in a response header:the parameters
nfe is the one dial worth knowing: it trades synthesis time for fidelity, and 16 is genuinely usable on a live call. See latency & quality.
Keep your punctuation. It guides phrasing and pauses, and a trailing
. / ! / ? helps the model finish the last word cleanly (the server adds one if you omit it). More in text normalization.what it costs
Roughly $1 ≈ 25,000 characters ≈ 30 minutes of speech, since Kazakh runs about 14 characters per second of audio. Streaming and the OpenAI-compatible endpoint bill identically — delivery changes, price doesn’t.
Same credit pool as speech-to-text, so running dry returns HTTP 429 on both products. The catalog endpoints (
/v1/models, /v1/voices, /health) are open and free.
latency and cold starts
The GPU scales to zero when idle, so the first request after a quiet period pays a cold start of tens of seconds; calls within the next few minutes are fast. The SDK’s default 120 s timeout is sized for exactly this. Three things cut perceived latency: dropnfe to 16, use tts.stream() so audio starts after sentence one instead of the full render, and keep a container warm with a periodic geko.health() if your traffic is bursty.
Voices
All six, with style and best-for hints.
Streaming
Sentence-by-sentence delivery and the raw frame protocol.
TypeScript SDK
geko.tts.create(...) and stream(...), typed end to end.Limits
Text length, formats, rate limits, and cold starts.