Nova-3 Language Prompting
Use language hints with Nova-3 multilingual to bias detection toward the languages you expect across 55 languages, or let the model auto-detect.
Nova-3 multilingual (model=nova-3&language=multi) transcribes 55 languages with one model, including speech that switches languages mid-conversation. The optional language_hint parameter biases detection toward the languages you expect. Without hints, the model auto-detects the spoken language.
Nova-3 multilingual uses the same /v1/listen endpoints, model string, and API key you already use for pre-recorded and streaming transcription.
Supported Languages
Locale subtags (for example, en-GB or pt-BR) are accepted as hints, resolve to the base language, and are returned as the base code in languages_hinted.
The language_hint Parameter
language_hint string or array of strings (optional, repeatable)
Pass one or more language_hint values to bias detection toward specific languages. Repeat the parameter to pass several hints, for example language_hint=en&language_hint=es. Hints bias detection; they do not restrict it, so the model still transcribes any supported language it hears.
language_hint only applies when language=multi; with any other language value it is ignored. Nova-2 does not support language_hint. A hint that is not one of the codes in the Supported Languages table fails the request with HTTP 400 INVALID_QUERY_PARAMETER; for streaming, the WebSocket connection is rejected with HTTP 400.
Set hints per request for pre-recorded audio, or in the connection URL for streaming audio. Hints stay fixed for the life of a streaming connection.
Usage Scenarios
The examples below use the streaming endpoint. The same language_hint values work on pre-recorded requests to https://api.deepgram.com/v1/listen.
1. Known Single Language
When you know the speaker’s language ahead of time (for example, a Spanish-language call center), set a single language_hint.
2. Known Subset of Languages
When speakers may use one of several languages (for example, a bilingual English/Spanish support line), pass multiple hints. The model biases toward the set and still transcribes whichever language is spoken.
3. Unknown Language
When you don’t know which language the speaker will use, omit language_hint. The model auto-detects the language from the audio.
4. Code-Switching
When speakers switch between languages mid-conversation, hint every language you expect, or send no hints. Nova-3 multilingual handles mid-sentence language switches natively.
Language Fields in the Response
With language=multi, each alternative in the response includes these fields:
Pre-recorded responses return these fields in results.channels[].alternatives[]. Streaming responses return them in channel.alternatives[] on every interim and final result.
Pre-Recorded Example
The response, trimmed to the language fields:
Streaming Example
Open a WebSocket connection with hints in the URL:
Each Results message, interim and final, includes the language fields:
Use the languages field to route downstream processing, for example to pick the TTS voice or LLM prompt language that matches what the speaker said.
Related Resources
- Multilingual Codeswitching — Codeswitching on Nova-2, Nova-3, and Flux
- Flux Multilingual & Language Prompting — Language hints for Flux on
/v2/listen - Models & Languages Overview — All models and supported languages
- Pre-Recorded API Reference —
POST /v1/listen - Streaming API Reference —
WS /v1/listen