Skip to main content
Community-maintained integration. This service is built and maintained by Chariot-AI. Pipecat does not test or officially support it. Please report issues and request changes on the source repository. Learn more about community integrations.

Overview

ChariotSTTService transcribes speech in real time using Chariot, for English and Indian languages, including speech that mixes them. The service streams the user’s audio over one WebSocket and pushes interim transcripts while they speak and a final transcript per utterance. By default Pipecat’s VAD decides when an utterance ends, and the transcript that answers is marked final, so the turn ends without waiting out a timeout.

Source Repository

Package source, the voice agent example, and issue tracker

PyPI Package

The pipecat-chariot package on PyPI

Chariot

API reference and supported languages

API Keys

Create an account and manage your Chariot API keys

Installation

Prerequisites

  1. Create an account at platform.chariot.in. New accounts include free credits.
  2. Copy an API key from the console and set CHARIOT_API_KEY.

Configuration

str
required
Chariot API key.
int
default:"None"
Input rate in Hz, one of 8000, 16000, 22050, 24000, 32000, 44100 or 48000. Defaults to the pipeline’s input rate.
str
default:"manual"
manual finalizes each utterance when Pipecat’s VAD hears the user stop. vad lets Chariot’s server side voice detection split utterances.
float
default:"None"
Server VAD speech threshold, 0.05 to 0.95. commit_strategy="vad" only.
int
default:"None"
Server VAD silence that ends an utterance, 100 to 10000 ms. commit_strategy="vad" only.
int
default:"None"
Server VAD minimum speech length, 0 to 5000 ms. commit_strategy="vad" only.
int
default:"None"
Server VAD audio kept before detected speech, 0 to 2000 ms. commit_strategy="vad" only.
float
default:"None"
P99 seconds from end of speech to final transcript, used to time turn ends. Defaults to 0.6 for balanced and 0.8 for high_accuracy, plus the silence window with vad.
bool
default:"False"
Word timestamps, in each transcription frame’s result["words"].

Settings

Pass these through ChariotSTTService.Settings(...). Updating them with STTUpdateSettingsFrame reconnects.

Usage

Speech-to-text is billed per second of audio sent. A voice agent streams audio for the whole call, silence included, so a call is billed for its full length.

Compatibility

Tested with Pipecat v1.15.0 (pipecat-ai>=1.13,<2). See the changelog for updates.