Intended Audience
- Developers
License
- OSI Approved :: Apache Software License
Programming Language
- Python :: 3
- Python :: 3 :: Only
- Python :: 3.10
- Python :: 3.11
- Python :: 3.12
Topic
- Multimedia :: Sound/Audio
- Scientific/Engineering :: Artificial Intelligence
Vakyam AI plugin for LiveKit Agents
Support for voice synthesis with Vakyam AI Raaga 1 — text-to-speech for Indian languages.
See https://docs.vakyam.ai/integrations/livekit for provider docs.
Installation
pip install livekit-plugins-vakyam
Or with the LiveKit Agents extra:
uv add "livekit-agents[vakyam]"
Pre-requisites
You'll need an API key from Vakyam. Set it as an environment variable:
export VAKYAM_API_KEY="vak_live_..."
Usage
from livekit.agents import AgentSession
from livekit.plugins import vakyam
session = AgentSession(
tts=vakyam.TTS(
model="raaga-v1",
voice="Archana",
language="ta-IN",
sample_rate=24000,
),
# ... stt, llm, vad
)
stream() uses the realtime WebSocket API and sentence-tokenizes LLM text so
each utterance is one complete sentence (Vakyam does not accept partial
tokens). synthesize() uses HTTP streaming (POST /v1/tts/stream) and
returns PCM audio.
WebSocket connections are pooled and reused between sequential agent turns.
Each active synthesis stream has exclusive ownership of its connection, so an
overlapping stream uses a separate connection. On interruption, the plugin
sends cancel, drains through Vakyam's cancellation acknowledgement, and
returns the healthy connection to the pool.