Skip to main content

Sarvam AI Sarvam AI STT

The SarvamSTTService provides specialized speech recognition for Indian languages using Sarvam AI's WebSocket API. It supports both standard STT (saarika models) and STT-Translate (saaras models) which auto-detect language and return translated text.

Installation

To use Sarvam AI, install the required dependencies:

pip install "piopiy-ai[sarvam]"

Prerequisites

  • A Sarvam AI account and API key (Get yours here).
  • Set your API key in your environment:
    export SARVAM_API_KEY="your_api_key_here"

Configuration

SarvamSTTService Parameters

ParameterTypeDefaultDescription
api_keystrRequiredYour Sarvam AI API key.
modelstr"saarika:v2.5"Sarvam model to use (saarika or saaras).
input_audio_codecstr"wav"Audio format of the input.
paramsInputParamsNoneConfiguration parameters (see below).

InputParams Parameters

OptionTypeDefaultDescription
languageLanguageNoneTarget language (required for saarika).
promptstrNoneTranslation guide (only for saaras).
vad_signalsboolTrueWhether to enable VAD signals.
high_vad_sensitivityboolFalseEnable high VAD sensitivity.

Usage

Basic STT (Saarika)

import os
from piopiy.services.sarvam.stt import SarvamSTTService
from piopiy.transcriptions.language import Language

stt = SarvamSTTService(
api_key=os.getenv("SARVAM_API_KEY"),
model="saarika:v2.5",
params=SarvamSTTService.InputParams(
language=Language.HI_IN # Hindi
)
)

STT-Translate (Saaras)

import os
from piopiy.services.sarvam.stt import SarvamSTTService

stt = SarvamSTTService(
api_key=os.getenv("SARVAM_API_KEY"),
model="saaras:v1",
params=SarvamSTTService.InputParams(
prompt="Translate this customer query into clear English."
)
)

Notes

  • Indian Language Focus: Sarvam is purpose-built to excel at regional Indian accents and dialects.
  • Model Types: saarika models require a fixed language, while saaras models perform automatic language detection and translation.