ta. Tamil is one of the languages Bolna detects automatically mid-call.
If you want one agent that handles both English and Tamil on the same call, start here for the Tamil side, then follow Set up multilingual voice AI agents. For every language, see the languages overview.
Choose a Tamil transcriber
The transcriber turns the caller’s Tamil speech into text. Send the plain codeta as transcriber.language, not a locale such as ta-IN (Create Agent).
For callers in India, the Sarvam page calls Sarvam usually the strongest transcriber choice. Compare all transcribers in Choosing a speech-to-text provider.
Choose a Tamil voice
The voice (synthesizer) speaks the agent’s replies. Most providers requirelanguage inside provider_config, so set it to ta (Create Agent).
Voice catalogs change over time. Confirm a valid
model and voice_id pair with List voices, or preview voices in the Languages tab. See Choosing a text-to-speech provider for a wider comparison.
On Sarvam
bulbul:v4-flash, the spoken language follows the script of the text, not language. Keep the prompt in Tamil script and the voice a Tamil voice. A v4 Flash voice id names its language, as <persona>_ta_<use case>.Write the prompt for Tamil
- Write in Tamil script, not romanized Tamil.
வணக்கம்! எப்படி இருக்கீங்க?rather thanVanakkam! Eppadi irukkeenga?. Native script gives more accurate pronunciation and stops the text being treated as English. - Keep common English loanwords in Latin script. Callers say “order”, “OTP” and “support ticket” in English, so keep those words as they are inside Tamil script text instead of forcing a pure Tamil translation.
- Set politeness explicitly. Ask for the polite plural (
நீங்க) rather than the informal singular. A generic “be polite” instruction does not reliably produce it. - Read alphanumerics character by character, in English. For OTPs, registration numbers and order IDs, this avoids misheard and mispronounced digits.
- Leave language switching out of the prompt. Bolna switches languages itself.
Create a Tamil agent over the API
This uses the same body shape as the API quickstart, with Sarvam for both transcription and voice.1
Write the agent config
Save this as The voice is
agent.json:priya, one of the 16 bulbul:v3 voices that work in every Bulbul language. To use one of the 4 Tamil bulbul:v4-flash voices instead, set model to bulbul:v4-flash and take the voice and voice_id pair from List voices. sampling_rate and encoding are left out because Bolna sets them for Sarvam to match the telephony provider.2
Create the agent
agent_id.3
Place a test call
Call the agent with
POST /call, as in the API quickstart, and check the transcript with GET /executions/{id}.transcriber or synthesizer block for one from the provider’s page. Every combination is validated when you create the agent: an unsupported transcriber model and language pair returns 400 Provided language: <language> is not available for the model: <model>.
Improve recognition with keywords and context
Brand names, product names and place names are where Tamil transcription most often goes wrong. Bolna has two transcriber fields for this:keywords: a comma-separated list of terms callers say.context: a sentence or two describing the call.
- Sarvam:
keywordson Sarvam needssaaras:v4, and takes up to 50 terms of up to 64 characters each.contextworks on every Saaras model. - Soniox: reads both.
contextcan run to about 10,000 characters. - Smallest AI: reads
keywords, with an optional weight per term such asBolna:5, up to 100 terms. It has nocontextfield. - Gemini is not in the provider support table for these fields.
Sarvam transcribes English words in the native script of the call’s language. On a Tamil agent, a boosted term such as
PhonePe can come back in Tamil script rather than Latin script.Fix pronunciation of numbers and names
A pronunciation list tells the voice how to say a word: an acronym, a brand name, a place name, or a number. Pronunciation lists work on ElevenLabs and on Cartesiasonic-3 and newer; of these, only ElevenLabs is confirmed for Tamil. On other providers the list is ignored.
Write how a word should sound in Tamil script, and keep in mind that each language has its own list. See Control how your agent pronounces words for the dashboard steps, the pronunciation_rules API field and limits.
Serve Tamil and English on one agent
Many callers move between Tamil and English. Bolna handles this in two ways:- Code-mixing within a sentence. Sarvam and Soniox transcribe callers who mix English into Tamil; on Soniox, pick the multilingual option. A sentence with a few English words is still treated as Tamil.
- A full language switch. Add both English and Tamil to one agent with
multilingual_config, each with its own transcriber, voice and prompt. Tamil is one of the languages Bolna detects automatically, so with the default “requested or auto detected” trigger the agent follows a caller who moves into Tamil. The multilingual quickstart shows the API shape.
- Start a call in Tamil with
"agent_data": { "language": "ta" }onPOST /call, or anagent_languagecolumn set totain a batch CSV. Inbound calls can returnagent_languagefrom your caller data source. - Let system messages such as the hangup and “are you still there?” checks follow the active language.
- Read How language switching works for what does and doesn’t trigger a switch.
Tamil, Telugu, Kannada and Malayalam are closely related, so Bolna decides a switch between them from the grammar of the whole sentence, not a single word. A switch inside this group needs a clearer signal than English to Tamil.
Phone numbers for Tamil agents in India
- Buy an Indian number in the dashboard through Plivo or Vobiz.
- For commercial or telemarketing calls in India, read How to get 140 & 160-series phone numbers in India for the TRAI and DLT requirements.
- To use numbers from your own carrier, connect it with a SIP trunk.
Next steps
Languages overview
Every language with a guide, and its providers
Multilingual setup
Indian language support by provider, and per-language voices and prompts
Sarvam speech-to-text
Saaras models, language codes and biasing limits
Sarvam text-to-speech
Bulbul models and voice catalogs per language
Start a call in a language
Pick the opening language per call, batch row or inbound caller
How language switching works
What does and doesn’t trigger a mid-call switch

