Keyterm Prompting
saaras:v4 only. Keyterms are supported only with model="saaras:v4", on both the REST and Batch APIs.
Keyterms help Saaras v4 recognize important names, places, brands, and technical terms that may occur in an audio file — for example:
Keyterms bias recognition; they do not guarantee that a term will appear in the transcript.
Rules
Use mode="codemix" instead of mode="transcribe" when a keyterm such as PhonePe must remain in Latin script — the keyterms format is unchanged across all supported modes. See Choosing the transcription mode below.
Upgrade your SDK before using keyterms. Python: verified on sarvamai>=0.1.33a1 for REST, sarvamai>=0.1.33a3 for speech_to_text_job.create_job(). JavaScript: verified on sarvamai>=1.1.10-alpha.1 for speechToTextJob.createJob() — a fix for REST speechToText.transcribe() has not shipped to npm yet; until it’s released, use the JavaScript Batch example below, or the REST cURL/Python examples.
REST API
REST requests use multipart/form-data. Send keyterms as a JSON-encoded array in one form field.
Omit language_code to use automatic language detection.
Batch API
For batch jobs, keyterms is a normal JSON array inside job_parameters.
After creating the job, use the returned job ID to upload the audio, start the job, poll its status, and download the output using the standard Batch API workflow.
Batch with diarization
Add with_diarization. The same keyterms are applied while transcribing every audio chunk in the job — the downloaded result includes the full transcript and, when requested, speaker-attributed entries under diarized_transcript.
See Enable Speaker Diarization for the full diarization output format.
Choosing the transcription mode
The keyterms format is unchanged across all supported modes:
For example, use mode="codemix" instead of mode="transcribe" when a keyterm such as PhonePe must remain in Latin script.
Need help choosing between REST and Batch? See Which API to Use.