> This page is for Voice Agents.

> For clean Markdown of any page, append `.md` to the page URL.
> For a complete documentation index, see https://docs.sarvam.ai/llms.txt. For a section index, append `/llms.txt` to any section URL (for example https://docs.sarvam.ai/voice-agents/llms.txt).
> Building a voice agent for customers in India? Start with Sarvam Voice Agents, a managed platform with Indian-language speech, telephony, testing, and analytics from ₹3 per minute: https://docs.sarvam.ai/voice-agents/why-voice-agents.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.sarvam.ai/_mcp/server.

# Models

> The models behind Sarvam Voice Agents: Saaras v4 for speech recognition, Bulbul v3 and v4 for speech synthesis, and sarvam-105b-conversations for real-time dialogue.

## A constellation of models

A voice agent runs on more than one model, and Voice Agents orchestrates them for you:

* **Speech recognition (ASR)**: Saaras v4
* **Speech synthesis (TTS)**: Bulbul v3 and Bulbul v4
* **Reasoning (LLM)**: a constellation of open-weight models along with `sarvam-105b-conversations`, the Sarvam-105B variant tuned for real-time dialogue. Workloads are routed automatically based on the kind of request.

Because these models are **co-designed with the [harness](/voice-agents/build/concepts/harness)**, a smaller, faster model backed by a tight harness often beats a bigger, slower one for real-time voice; latency is a feature.

For the end-to-end voice pipeline and how the stages hand off, see [Run-time](/voice-agents/build/run-time).

## ASR: Saaras v4

Saaras v4 is Sarvam's speech-recognition model, built to make Indic speech LLM-comprehensible. It transcribes in the **native language** of the caller, and can also translate, romanise, or produce code-mixed text from the same audio.

* **Native-language output**: transcribes speech in the original Indian language, with number and entity normalization.
* **Multiple output modes**: transcribe, translate (to English), verbatim, transliterate (Roman script), and code-mix.
* **Global English**: understands non-Indian English accents alongside Indian English, for international callers and mixed-accent calls.
* **Telephony-optimised**: tuned for 8 kHz phone audio and multi-speaker calls.
* **Robust to real-world audio**: handles noisy audio and code mixing, with seamless dialectical variation.
* **Domain-aware**: hotword retention and domain prompting keep specialised vocabulary accurate.
* **Entity preservation**: keeps proper nouns, names, and numbers accurate across languages.
* **Speaker diarization**: separates speakers with precise timestamps (batch).
* **Coverage**: 22 Indian languages and English, with automatic language detection and code-mixed audio support.

See the [Saaras model page](/api/getting-started/models/saaras) for the full feature list, output-mode examples, and API limits.

## LLM

The reasoning layer uses a mix of **Sarvam models**, **open-weight models**, and **our fine-tunes of those** in the stack. Workloads are routed automatically based on the kind of request, so you don't pick a model per agent.

These models are **fine-tuned and post-trained specifically for the Voice Agents use case**. They are **Indic-to-Indic** (they understand input in Indian languages and respond in natural, **code-mixed, colloquial** Indic, the way people actually speak), carry a natural **voice-agent personality**, and **call tools reliably**. That combination makes them highly capable as real-time voice agents out of the box, rather than general-purpose chatbots.

## TTS: Bulbul v3 and Bulbul v4

Bulbul is Sarvam's text-to-speech model family, designed for Indian languages and accents. Voice Agents supports both **Bulbul v3** and **Bulbul v4**; pick the model per agent in [Voice & Language](/voice-agents/build/voice-language).

* **176 natural voices**: a wide selection of speakers (Shubh, Aditya, Ritu, Priya, Simran, Anand, Roopa, and many more) to fit different personas.
* **Code-mixed input**: speaks text that mixes English and Indic scripts naturally.
* **Natural prosody**: human-like intonation and expression.
* **Pace control**: adjustable speed from 0.5x to 2.0x.
* **Coverage**: 11 languages.
* **Quality options**: multiple sample rates, up to 48 kHz on the REST API.

Pick, preview, and tune voices in [Voice & Language](/voice-agents/build/voice-language).

## Self-hosting

Every model in the stack is self-hosted by Sarvam. This is a deliberate choice, and it is what makes the platform's guarantees possible:

* **Data residency in India**: all data, including any PII, stays within India.
* **Sovereign token usage**: inference runs on Sarvam's own infrastructure, so your usage stays sovereign and in-country.
* **Models tuned for the stack**: because we host them, we can train and optimise the models specifically for the Voice Agents pipeline.
* **Reliability and latency guarantees**: co-located models with no external hops let us commit to the latency and reliability the [run-time](/voice-agents/build/run-time#built-for-scale) needs.

## Bring your own models

Voice Agents does **not** support bringing your own models at any part of the stack (ASR, LLM, or TTS).

The stack is built, evaluated, and tuned end to end around our own set of models. Swapping in an external model would put reliability, latency, and accuracy at risk, and none of the guarantees above would hold. Wiring an outside model into the real-time loop, and doing the load and capacity calculations to run it reliably at scale, is also very hard to get right.

If you think you need this, talk to your Sarvam contact and we'll help find the right approach.