Feature guide
Languages
Omi Medical STT is an English-first medical speech model. Set a known language for the lowest latency, or opt in to per-utterance detection across the eight supported language families.
English is the medically evaluated language
English is benchmarked and medically evaluated. Spanish, Portuguese, French, German, Dutch, Arabic, and Hindi were included in training and are available for testing and evaluation. They have not been medically evaluated and should not be relied on for medical accuracy.
Supported language families
| Language | Family | Accepted examples | Medical evaluation |
|---|---|---|---|
| English | en | en-AU, en-GB, en-US | Benchmarked |
| Spanish | es | es-ES, es-MX, es-419 | Testing only |
| Portuguese | pt | pt-BR, pt-PT | Testing only |
| French | fr | fr-FR, fr-CA | Testing only |
| German | de | de-DE, de-AT | Testing only |
| Dutch | nl | nl-NL, nl-BE | Testing only |
| Arabic | ar | ar-SA, ar-AE | Testing only |
| Hindi | hi | hi-IN | Testing only |
Regional BCP-47 aliases are normalized to a family while the requested tag is preserved in verbose audit metadata.
Three language modes
| Request | Behavior | When to use |
|---|---|---|
language=es-MX | Transcribes in the supported family you name. | You know the recording language. Lowest latency and simplest audit. |
language=auto | Detects every closed utterance and groups consecutive same-language utterances. | A conversation may switch among supported languages. |
| language omitted | Uses the API key’s stored default; falls back to English. | Backward-compatible behavior. Omission is not auto detection. |
Automatic per-utterance detection
curl https://api.omi.health/v1/audio/transcriptions \
-H "Authorization: Bearer $OMI_API_KEY" \
-F [email protected] \
-F model=omi-medical-1 \
-F language=auto \
--form-string 'language_hints=["en","es-MX","pt-BR"]' \
-F response_format=verbose_jsonlanguage_hints is optional. It accepts 1–8 unique candidate tags and can reduce ambiguity when you know the likely languages. Without hints, all eight supported families are candidates.
{
"text": "Good morning. Buenos días.",
"language": "mixed",
"language_detection": {
"mode": "per_utterance",
"candidates": ["en", "es", "pt"],
"languages": ["en", "es"],
"utterances": 2,
"fallbacks": 0
},
"segments": [
{"text":"Good morning.","language":"en"},
{"text":"Buenos días.","language":"es"}
]
}- Very short utterances are joined to nearby context for detection while transcript boundaries stay intact.
- A language change inside one uninterrupted utterance follows the dominant detected language.
- Token-level code switching and translation are outside V1.
- A detected language outside the candidate set fails explicitly; Omi never silently falls back to English.
Availability
| Surface | Explicit language | language=auto |
|---|---|---|
| Batch transcription | Generally available | Generally available |
| Realtime | Invited preview | Not available in preview |
Automatic detection on long batch jobs is currently limited to invited accounts while it completes preview.
No calibrated language confidence
Automatic detection does not expose a calibrated confidence score. Verbose responses report the selected languages, not a probability that could be mistaken for a clinical certainty.