When we shipped Hakim's first production TTS model in early 2025, we picked the working name "Hakim Fast" because that's what it was: the speed-tuned synthesis stack that turned text into voice with sub-120 ms TTFB across the GCC. The name was useful; it told developers exactly what they were getting.
Today we're retiring the working name and replacing it with something that does more work for our brand and our customers: an Arabic-named family of three tiers, each carrying a classical adjective that ladders up alongside the capability set.
- Hakim Saree' v1.3 (سريع · swift) is the same model you've been calling under
hakim-fast-v1. Sub-120 ms streaming TTFB, the speed tier, default for every new integration. The API id is unchanged. The legacyhakim-flash-v1alias still resolves. Nothing breaks. - Hakim Faseeh v2 (فصيح · eloquent) is a new tier built for premium quality with non-verbal tag support across 41 languages. Pick this when naturalness matters more than the lowest streaming latency, or when your script needs the occasional sigh, hesitation, or whisper to land.
- Hakim Mulhim v3 (مُلهِم · inspiring) is the full capability set: tags plus voice generation from a free-form prompt, across 41 languages. Describe a voice in plain language ("warm raspy elderly woman, low-pitched, magnetic") and Mulhim conjures it. Save it to your library. Use it on every subsequent speech call. The voice is yours.
Three Arabic adjectives, three capabilities, one API. The same POST /v1/audio/speech
endpoint accepts every tier; you switch by changing the model field.
Why an Arabic-named family
The brand wordmark is "Hakim" (حكيم · wise). Pairing it with English version
suffixes (Fast, v2, v3) was a working compromise during our private alpha; it
read as a placeholder waiting to grow up. With three production tiers in market, the
compromise read as a missed opportunity.
The new names ladder cleanly:
- Saree' (swift) frames the speed tier in a single Arabic adjective. The first thing you should know about it.
- Faseeh (eloquent) carries classical literary weight. Faseeh is the word for a master speaker in classical Arabic; tagging the premium-quality tier with it signals exactly what we tuned for.
- Mulhim (inspiring) frames voice generation as creative inspiration. The model doesn't replicate; it imagines.
The Arabic-Romanised forms are the primary marketing names in both locales; the
native script chips on the picker tile (حكيم سريع, حكيم فصيح, حكيم مُلهِم) make
the brand identity Arabic-first regardless of where the dashboard is rendered.
Non-verbal tags
A brief inventory of what tags add to your output, on Faseeh and Mulhim:
| Token | Effect |
|---|---|
[laugh] | Laughter |
[breath] | Sigh / exhale |
[think] | Hesitation, "uhm" |
[whisper] | Soft / hushed delivery |
[ask] | Question intonation |
[wow] | Surprise |
[hmph] | Grumble / dissatisfaction |
Drop one inline and Hakim weaves the cue into the audio:
curl https://api.tryhakim.ai/v1/audio/speech \
-H "Authorization: Bearer $HAKIM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "hakim-v2",
"input": "Wait. Did that just happen? [laugh] Honestly, [breath] I have no words.",
"voice": "layla-egyptian"
}' \
--output reaction.mp3
The set is intentionally small; every token has been tuned so it lands naturally
across the supported voice catalogue rather than reading as a stage direction. On
Saree' (the speed tier) tags are silently stripped before synthesis · the audio
plays clean, and the response carries an x-hakim-warnings header so integrations
notice the no-op without breaking.
Full token reference and per-tier behaviour: /docs/guides/tags.
Voice design
Voice design is the new capability that ships exclusively on Mulhim. You describe a voice in natural language; the model conjures it.
curl https://api.tryhakim.ai/v1/audio/voices/design \
-H "Authorization: Bearer $HAKIM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"description": "warm raspy elderly woman, low-pitched, magnetic, slight breathy tremor",
"sample_text": "Welcome. This is a quick sample of the voice you described.",
"save_as_voice": { "name": "Broadcaster Demo" }
}'
The response inlines the rendered preview as base64 WAV (so you can play it back
without a follow-up GET) and, when save_as_voice was set, returns the slim DTO of
the persisted voice · id, slug, signed preview URL, ready to feed back into
/v1/audio/speech for the next call.
The endpoint pairs especially well with three axes of description:
- Identity · gender, age, role ("middle-aged male broadcaster")
- Texture · pitch, timbre, grain ("low-pitched, magnetic, slight rasp")
- Scenario · emotion, pacing, context ("passionate news bulletin")
You can write all three into a single prose paragraph; there's no required syntax. Both English and Arabic prompts work. Each generation is unique by design · re-running the same prompt yields a similar but distinct voice. Iterate, listen, save when you hear what you want.
Full guide: /docs/guides/voice-design.
What stays the same
- The API id
hakim-fast-v1is forever. Every integration that's using it today keeps working forever; no deprecation, no rotation. - The
hakim-flash-v1legacy alias still resolves. The audit log normalises tohakim-fast-v1(it always did), so your metrics rollups are unchanged. - Pricing on Saree' is unchanged. Faseeh and Mulhim sit on a premium pricing tier;
see
/pricingfor the full schedule.
What we're working on next
- More voices in the Mulhim catalogue. Voice design is the headline feature, but preset voices stay important · they're the fastest way to a production-ready integration. Expect a steady stream of new presets in the Faseeh + Mulhim catalogue through Q3.
- Streaming voice design. Today the design endpoint returns the full WAV at the end of synthesis; we're working on a streaming variant for the playground's "live preview while typing" affordance.
- Tag set v2. The current set covers ~80% of the cues a podcast or voicebot script needs; we're field-testing additions for breath patterns, paralinguistic affirmations, and emphasis. Track the changelog for additions.
Try it
The dashboard playground at /app/playground/tts ships the new picker on staging
today. Switch the model to Faseeh or Mulhim, type a [laugh] into the composer, and
hear the difference.
If you're a developer, the Models guide lays out the tier ladder + capability matrix, the Tags guide is the definitive reference for the seven cookbook tokens, and the Voice design guide walks through the new endpoint with curl examples.
Same wordmark. Same Arabic-first thesis. New family.