Multilingual support lets patients and providers speak in their preferred language during clinical conversations, while Suki automatically generates the final clinical note in English.
Multilingual support is supported for Mobile SDK and APIs only. The Web SDK and Headless Web SDK do not currently support multilingual sessions.
Overview
Multilingual support lets patients and providers speak in their preferred language during clinical conversations, while Suki automatically generates the final clinical note in English. This removes the need for manual translation and makes healthcare more accessible to diverse patient populations.
When you enable multilingual support for an ambient session, you get the following benefits:
- Patient comfort: Patients can communicate in their native language, leading to more accurate information sharing
- Better care quality: When patients speak in their preferred language, they provide more detailed and accurate information
- No translation needed: Clinicians don’t need to translate conversations manually, Suki handles it automatically
- EHR compatibility: All notes are generated in English, ensuring compatibility with standard EHR systems
- Wider accessibility: Support for 80+ languages makes healthcare more inclusive
How It Works
When you enable multilingual support for an ambient session, Suki automatically:
- Detects the language spoken during the conversation
- Transcribes the audio in the detected language
- Translates and processes the conversation content
- Generates the clinical note in English
The transcript API returns a lang_id field that identifies which language was detected for each segment of the conversation. This helps you understand what language was spoken during different parts of the session.
How To Enable Multilingual Support
Enable multilingual support when creating an ambient session. The exact method depends on whether you’re using the Mobile SDK or APIs.
Mobile SDK Example:
let sessionContext = [
SukiAmbientConstant.kSessionId: encounterId,
SukiAmbientConstant.kMultilingual: true // Enable multilingual support
] as [String : AnyHashable]
SukiAmbientCoreManager.shared.createSession(
with: sessionContext,
onCompletion: { result in
switch result {
case .success(let sessionResponse):
let sessionId = sessionResponse.sessionId
// Store sessionId for future use
case .failure(let error):
// Handle error
}
}
)
API Example:
payload = {
"ambient_session_id": "123dfg-456dfg-789dfg-012dfg", # Optional
"encounter_id": "123dfg-456dfg-789dfg-012dfg", # Optional
"multilingual": True # Enable multilingual support
}
response = requests.post(
"https://sdp.suki.ai/api/v1/ambient/session/create",
json=payload,
headers={"sdp_suki_token": "<sdp_suki_token>"}
)
For complete API documentation, see the Create Ambient Session API.
Multilingual support is disabled by default.You must explicitly enable it when creating a session. Once enabled, it applies to the entire session and cannot be changed mid-session.
Supported Languages
Suki supports over 80 languages for ambient sessions. The following languages are currently supported:
| | | | |
|---|
| Spanish | Norwegian | Macedonian | Kazakh | Yoruba |
| Italian | Finnish | Hungarian | Icelandic | Telugu |
| English | Vietnamese | Tamil | Marathi | Khmer |
| Portuguese | Thai | Hindi | Maori | Malayalam |
| German | Slovak | Estonian | Swahili | Lao |
| Japanese | Greek | Urdu | Armenian | Punjabi |
| Polish | Czech | Latvian | Belarusian | Gujarati |
| Russian | Croatian | Slovenian | Nepali | Somali |
| Dutch | Danish | Azerbaijani | Occitan | Bengali |
| Indonesian | Tagalog | Hebrew | Lingala | Georgian |
| Catalan | Korean | Lithuanian | Maltese | Assamese |
| French | Romanian | Persian | Tajik | Mongolian |
| Turkish | Bulgarian | Welsh | Luxembourgish | Myanmar |
| Swedish | Galician | Serbian | Hausa | Shona |
| Ukrainian | Bosnian | Afrikaans | Uzbek | Amharic |
| Malay | Arabic | Kannada | Pashto | Sindhi |
| Chinese (Cantonese) | Chinese (Mandarin) | | | |
Language Code Reference
Use the following table to map each lang_id to its corresponding language. This helps you interpret the language codes returned by the Transcript API.
We regularly update this list as we add support for new languages. If a language is not included in this table, it is not yet supported.
A
| Language | Language ID (lang_id) |
|---|
| afrikaans | af |
| amharic | am |
| arabic | ar |
| armenian | hy |
| assamese | as |
| azerbaijani | az |
B
| Language | Language ID (lang_id) |
|---|
| belarusian | be |
| bengali | bn |
| bosnian | bs |
| bulgarian | bg |
C
| Language | Language ID (lang_id) |
|---|
| catalan | ca |
| chinese | zh |
| chinese_cantonese | yue |
| chinese_mandarin | cmn |
| croatian | hr |
| czech | cs |
D
| Language | Language ID (lang_id) |
|---|
| danish | da |
| dutch | nl |
E
| Language | Language ID (lang_id) |
|---|
| english | en |
| estonian | et |
F
| Language | Language ID (lang_id) |
|---|
| finnish | fi |
| french | fr |
G
| Language | Language ID (lang_id) |
|---|
| galician | gl |
| georgian | ka |
| german | de |
| greek | el |
| gujarati | gu |
H
| Language | Language ID (lang_id) |
|---|
| hausa | ha |
| hebrew | he |
| hindi | hi |
| hungarian | hu |
I
| Language | Language ID (lang_id) |
|---|
| icelandic | is |
| indonesian | id |
| italian | it |
J
| Language | Language ID (lang_id) |
|---|
| japanese | ja |
K
| Language | Language ID (lang_id) |
|---|
| kannada | kn |
| kazakh | kk |
| khmer | km |
| korean | ko |
L
| Language | Language ID (lang_id) |
|---|
| lao | lo |
| latvian | lv |
| lingala | ln |
| lithuanian | lt |
| luxembourgish | lb |
M
| Language | Language ID (lang_id) |
|---|
| macedonian | mk |
| malay | ms |
| malayalam | ml |
| maltese | mt |
| maori | mi |
| marathi | mr |
| mongolian | mn |
| myanmar | my |
N
| Language | Language ID (lang_id) |
|---|
| nepali | ne |
| norwegian | no |
O
| Language | Language ID (lang_id) |
|---|
| occitan | oc |
P
| Language | Language ID (lang_id) |
|---|
| pashto | ps |
| persian | fa |
| polish | pl |
| portuguese | pt |
| punjabi | pa |
R
| Language | Language ID (lang_id) |
|---|
| romanian | ro |
| russian | ru |
S
| Language | Language ID (lang_id) |
|---|
| serbian | sr |
| shona | sn |
| sindhi | sd |
| slovak | sk |
| slovenian | sl |
| somali | so |
| spanish | es |
| swahili | sw |
| swedish | sv |
T
| Language | Language ID (lang_id) |
|---|
| tagalog | tl |
| tajik | tg |
| tamil | ta |
| telugu | te |
| thai | th |
| turkish | tr |
U
| Language | Language ID (lang_id) |
|---|
| ukrainian | uk |
| urdu | ur |
| uzbek | uz |
V
| Language | Language ID (lang_id) |
|---|
| vietnamese | vi |
W
| Language | Language ID (lang_id) |
|---|
| welsh | cy |
Y
| Language | Language ID (lang_id) |
|---|
| yoruba | yo |
Best Practices
- Enable when needed: Only enable multilingual support when you expect conversations in multiple languages. This optimizes performance.
- Set patient language preference: If you know the patient’s preferred language, you can display this information in your UI to help providers prepare.
- Monitor language detection: Use the
lang_id from transcripts to understand language usage patterns in your application.
- Test with your languages: Verify multilingual support works correctly with the languages your patients commonly use.
- Note language in UI: Consider displaying the detected language in your UI so providers know what language was spoken.
Use these APIs to work with multilingual support: