| name | sarvam-ai |
| description | Indian language AI via Sarvam AI APIs. Text-to-Speech (TTS) with 38 voices in 22+ Indian languages using Bulbul v3, Speech-to-Text (STT) with Saaras v3. Use when the user asks to generate speech in Indian languages, transcribe Indian language audio, or needs Indic TTS/STT. |
| metadata.openclaw | {"emoji":"🇮🇳","requires":{"env":["SARVAM_API_KEY"]}} |
Sarvam AI — Indian Language TTS & STT
Sarvam AI provides high-quality Text-to-Speech and Speech-to-Text for 22+ Indian languages.
Authentication
- API key must be set in
$SARVAM_API_KEY (gateway env)
- Header:
API-Subscription-Key: $SARVAM_API_KEY
- Base URL:
https://api.sarvam.ai
Quick Start (Helper Scripts)
scripts/sarvam-tts.sh "नमस्ते दुनिया" --lang hi-IN --speaker aditya --output hello.mp3
scripts/sarvam-stt.sh audio.wav --lang hi-IN
Text-to-Speech (TTS)
Batch TTS
curl -X POST "https://api.sarvam.ai/text-to-speech" \
-H "API-Subscription-Key: $SARVAM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"inputs": ["Your text here"],
"target_language_code": "hi-IN",
"speaker": "aditya",
"model": "bulbul:v3"
}'
Response: {"request_id": "...", "audios": ["<base64-wav>"]}
Streaming TTS (preferred for longer text)
curl -X POST "https://api.sarvam.ai/text-to-speech/stream" \
-H "api-subscription-key: $SARVAM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Your text here",
"target_language_code": "hi-IN",
"speaker": "aditya",
"model": "bulbul:v3",
"pace": 1.0,
"speech_sample_rate": 22050,
"output_audio_codec": "mp3",
"enable_preprocessing": true
}' -o output.mp3
TTS Parameters
| Param | Values | Default |
|---|
model | bulbul:v3 (best), bulbul:v2 | bulbul:v3 |
target_language_code | See language codes below | required |
speaker | See speakers below | required |
pace | 0.5 - 2.0 | 1.0 |
speech_sample_rate | 8000, 16000, 22050, 44100 | 22050 |
output_audio_codec | mp3, wav, aac, opus, flac, pcm, mulaw, alaw | mp3 |
temperature | 0.0 - 1.0 | 0.6 |
Bulbul v3 Speakers (38 voices)
aditya, ritu, ashutosh, priya, neha, rahul, pooja, rohan, simran, kavya, amit, dev, ishita, shreya, ratan, varun, manan, sumit, roopa, kabir, aayan, shubh, advait, amelia, sophia, anand, tanya, tarun, sunny, mani, gokul, vijay, shruti, suhani, mohit, kavitha, rehan, soham, rupali
Speech-to-Text (STT)
Batch STT
curl -X POST "https://api.sarvam.ai/speech-to-text" \
-H "API-Subscription-Key: $SARVAM_API_KEY" \
-F "file=@audio.wav" \
-F "model=saaras:v3" \
-F "language_code=hi-IN"
Response: {"transcript": "...", "language_code": "hi-IN"}
STT Models
| Model | Best for |
|---|
saaras:v3 | Best quality, all languages |
saarika:v2.5 | Good quality, faster |
saarika:flash | Fastest, lower quality |
Language Codes
| Language | Code |
|---|
| Hindi | hi-IN |
| Bengali | bn-IN |
| Telugu | te-IN |
| Marathi | mr-IN |
| Tamil | ta-IN |
| Gujarati | gu-IN |
| Kannada | kn-IN |
| Malayalam | ml-IN |
| Odia | od-IN |
| Punjabi | pa-IN |
| English (Indian) | en-IN |
| Auto-detect | unknown (STT only) |