Integrations
June 9, 2026
The SLNG plugin for LiveKit Agents
LiveKit Agents is the open-source framework most teams reach for when building production voice agents. Starting with livekit-agents 1.5.7, the SLNG plugin is part of it. One install puts the execution layer between LiveKit and your models.

SLNG Team
Team

Keep your models. Keep your keys.
The plugin routes through the SLNG gateway. Your orchestrator stays the same. Your models stay the same. Your provider contracts stay the same.
SLNG sits in the middle and handles routing, smart caching, PII redaction, and regional compliance. Switching between Deepgram, ElevenLabs, Sarvam, Rime, Cartesia, and others is a model string change. Agent logic doesn't move.
Prerequisites:
- Python 3.10+
- livekit-agents>=1.5.1
- A LiveKit Agents project
- An SLNG API key
import os
from livekit.agents import AgentSession
from livekit.plugins import slng, silero
session = AgentSession(
stt=slng.STT(
api_key=os.environ["SLNG_API_KEY"],
model="deepgram/nova:3",
language="en",
),
tts=slng.TTS(
api_key=os.environ["SLNG_API_KEY"],
model="deepgram/aura:2",
voice="aura-2-thalia-en",
),
vad=silero.VAD.load(),
)
Swap model="sarvam/bulbul:v3" for Sarvam Bulbul TTS, or model="slng/deepgram/nova:3-multi" for multilingual Nova-3.
Full catalog in the docs.
BYOK: Bring your own provider key
Already have a contract with Deepgram, ElevenLabs, or Cartesia? Bring your own key. Pass the X-Slng-Provider-Key header and your provider credentials flow through the SLNG gateway.
Smart caching on TTS means cache hits never reach your provider. That call costs you nothing. Cache misses pass through on your key as normal.
Early results from beta users: ~1/3 off TTS costs. Up to 80% less latency on cache hits. Works with Cartesia, Deepgram, Sarvam, Soniox, Kugel, and Murf. Full BYOK guide.
Regional compliance without the rewiring
If your agents run under data residency requirements like EU, UK, India, UAE, region_override pins traffic to the right gateway hub. Audio is processed in-region and stays there. No architecture changes or separate deployment needed.
tts = slng.TTS( api_key=os.environ["SLNG_API_KEY"], model="deepgram/aura:2", voice="aura-2-thalia-en", region_override=["eu-north-1", "us-east-1"], )
11 sovereign hubs. ISO 27001 certified. HIPAA and GDPR compliant. Learn more about SLNG data security.
Failover that doesn't take your agent down
STT accepts a list of model_endpoints. If the active one returns an error, the plugin falls over to the next automatically. No retry logic to write, no single provider bringing your agent down.
Also included
- WebSocket streaming STT and TTS
- Connection pooling for TTS
- Interim transcription results
- Speaker diarization The plugin is open source: livekit/agents repo.
What the execution layer does on every call
Your LiveKit agent sends a request. Here's what happens when it goes through SLNG:
- Smart caching - seen this pattern before? Serve it. No GPU burned.
- PII redaction - stripped before audio hits the model.
- Regional routing - requests go to the closest GPU automatically.
- Automatic failover - provider goes down, traffic reroutes.
- Transcripts and analytics - cost per call, latency per turn, model performance.
Your code doesn't change. Your models don't change. The call costs less and responds faster.
US$ 0.0033 / agent minute for the execution layer. 30+ STT and TTS models available as add-ons. No contracts. No minimums.
Start routing your LiveKit agents through SLNG
- Get an API key
- Read the plugin docs for the full model catalog and configuration reference
- BYOK guide if you're bringing your own provider keys
- LiveKit Agents quickstart if you're new to the framework
FAQ: SLNG x LiveKit Integration
What is the SLNG plugin for LiveKit Agents?
The SLNG plugin connects LiveKit Agents to the SLNG voice AI gateway. It gives your agent access to every STT and TTS model in the SLNG catalog — Deepgram, ElevenLabs, Sarvam, Rime, Cartesia, and others — through a single integration. You install it with uv add "livekit-agents[slng]~=1.5" and configure it like any other LiveKit plugin.
Does the SLNG plugin change how I write my agent logic?
No. Your agent logic stays the same. The plugin routes through the SLNG gateway at the model level — switching providers is a model string change, not a code change.
How do I switch between STT or TTS providers with the SLNG plugin?
Change the model parameter. For example, swap model="deepgram/nova:3" for model="deepgram/nova:3-multi" for multilingual STT, or model="sarvam/bulbul:v3" for Sarvam TTS. No other changes needed.
Does SLNG support data residency requirements in LiveKit agents?
Yes. Pass region_override on the STT or TTS class to pin traffic to a specific gateway hub — EU, UK, India, UAE, and others. Audio is processed in-region and stays there.
What happens if a model endpoint goes down?
The STT class accepts a list of model_endpoints. If the active one returns an error, the plugin falls over to the next one automatically. No retry logic required on your side.
Is the SLNG LiveKit plugin open source?
Yes. The plugin is part of the official livekit/agents repo.
Which LiveKit Agents version is required?
livekit-agents 1.5.7 or later.

SLNG Team
Team
Index
Other posts