Overview
LiveKit Inference provides access to many of the best models and providers for voice agents, including STT, LLM, TTS, and realtime models from OpenAI, Google, AssemblyAI, Deepgram, Cartesia, Fish Audio, Inworld, and more. LiveKit Inference is included with LiveKit Cloud and doesn't require additional plugins. It's zero data retention by default. Your prompts, audio, and model outputs are never stored or used to train models. To learn more about supported models and configuration options, see the LLM, STT, TTS, and realtime topics.
By default, LiveKit Inference routes requests to model providers without regional restrictions. To restrict requests to models served from your project's data region, such as for EU data residency, enable region restriction.
To learn more about LiveKit Inference, see the blog post Introducing LiveKit Inference: A unified model interface for voice AI .
For LiveKit Inference models, use the inference module classes in your AgentSession:
from livekit.agents import AgentSession, inferencesession = AgentSession(stt=inference.STT(model="deepgram/flux-general",language="en"),llm=inference.LLM(model="google/gemma-4-31b-it",),tts=inference.TTS(model="fishaudio/s2.1-pro",voice="fa4c9eb3dccc4806b382b40d61c6b10a",),)
import { AgentSession, inference } from '@livekit/agents';const session = new AgentSession({stt: new inference.STT({model: "deepgram/flux-general",language: "en"}),llm: new inference.LLM({model: "google/gemma-4-31b-it",}),tts: new inference.TTS({model: "fishaudio/s2.1-pro",voice: "fa4c9eb3dccc4806b382b40d61c6b10a",}),});
String descriptors
As a shortcut, you can pass a model descriptor string directly instead of using the inference classes. This is a convenient way to get started quickly.
from livekit.agents import AgentSessionsession = AgentSession(stt="assemblyai/universal-3-6-pro:en",llm="google/gemma-4-31b-it",tts="fishaudio/s2.1-pro:fa4c9eb3dccc4806b382b40d61c6b10a",)
import { AgentSession } from '@livekit/agents';const session = new AgentSession({stt: "assemblyai/universal-3-6-pro:en",llm: "google/gemma-4-31b-it",tts: "fishaudio/s2.1-pro:fa4c9eb3dccc4806b382b40d61c6b10a",});
For detailed parameter references and model-specific options, see the individual model guides for LLM, STT, and TTS.
Authentication
LiveKit Inference uses your LiveKit Cloud credentials. You don't need a separate API key for each model provider. Set LIVEKIT_API_KEY and LIVEKIT_API_SECRET in your .env file, or pass api_key and api_secret directly to an inference class. In Node.js, these parameters are apiKey and apiSecret.
Zero data retention
LiveKit Inference is zero data retention (ZDR) by default. Your prompts, audio, and model outputs pass through only to generate a response. Neither LiveKit nor the underlying model providers log, store, or train on your data. This applies to every LLM, STT, TTS, and realtime model, on every plan, with no configuration required.
Zero data retention applies to the data you send to model providers through LiveKit Inference. It's separate from agent observability, which you can enable to retain session data in LiveKit Cloud, and from custom voices, which store the voice sample you provide so you can reuse the clone across providers.
Region restriction
By default, LiveKit Inference can route requests to a model provider in any region. To keep inference requests within your project's data region, enable region restriction.
For new projects with agents hosted in the EU, region restriction is enabled by default. To enable it for an existing project, sign in to LiveKit Cloud and select Project → Settings. In the Data and privacy section, set Inference region restriction to Enabled.
When enabled, LiveKit Inference only routes requests to models with an endpoint in your project's data region. For a project with the EU data region, this limits inference to models served from the EU. Models without an endpoint in your data region are shown as unavailable in the Agent Builder.
Region restriction applies only to models routed through LiveKit Inference. Provider plugins send requests directly to the provider, so you must configure the provider's regional endpoint separately. To configure EU data residency across the rest of your stack, see EU data residency.
Data residency
Some models offer a dedicated endpoint in the EU, in addition to the global endpoint. A checkmark in the EU endpoint column of the model tables means the model has an EU endpoint, which lets you keep inference requests in the EU with region restriction.
Models
The following tables list all models currently available through LiveKit Inference.
Pricing
See the latest pricing for all LiveKit Inference models.
Large language models (LLM)
Browse the available large language models by model family.
Gemma 4 31B is the recommended default LLM. It's a latency-optimized, open-weight model served on LiveKit's infrastructure.
A checkmark in the EU endpoint column means the model has a dedicated EU endpoint, in addition to the global endpoint. To learn more, see Data residency.
Hosted by LiveKit
| Model name | Model ID | EU endpoint |
|---|---|---|
Gemma 4 31B | google/gemma-4-31b-it | EU endpoint |
DeepSeek
| Model name | Model ID | EU endpoint |
|---|---|---|
DeepSeek-V4 Pro | deepseek-ai/deepseek-v4-pro | No EU endpoint |
DeepSeek-V4.1 Flash | deepseek-ai/deepseek-v4.1-flash | No EU endpoint |
DeepSeek-V3 Retired | deepseek-ai/deepseek-v3 | No EU endpoint |
DeepSeek-V3.1 Retired | deepseek-ai/deepseek-v3.1 | No EU endpoint |
DeepSeek-V3.2 Retired | deepseek-ai/deepseek-v3.2 | No EU endpoint |
Gemini
| Model name | Model ID | EU endpoint |
|---|---|---|
Gemini 3 Flash | google/gemini-3-flash-preview | No EU endpoint |
Gemini 3.1 Flash Lite | google/gemini-3.1-flash-lite | EU endpoint |
Gemini 3.1 Pro | google/gemini-3.1-pro-preview | No EU endpoint |
Gemini 3.5 Flash | google/gemini-3.5-flash | EU endpoint |
Gemini 3.5 Flash Lite | google/gemini-3.5-flash-lite | EU endpoint |
Gemini 3.8 Flash | google/gemini-3.8-flash | EU endpoint |
Gemini 4 Argon | google/gemini-4-argon | No EU endpoint |
Gemini 2.5 Flash Deprecated | google/gemini-2.5-flash | EU endpoint |
Gemini 2.5 Flash-Lite Deprecated | google/gemini-2.5-flash-lite | EU endpoint |
Gemini 3.6 Flash Deprecated | google/gemini-3.6-flash | EU endpoint |
Gemini 3.7 Flash Deprecated | google/gemini-3.7-flash | EU endpoint |
Gemini 2.0 Flash Retired | google/gemini-2.0-flash | No EU endpoint |
Gemini 2.0 Flash-Lite Retired | google/gemini-2.0-flash-lite | No EU endpoint |
Gemini 2.5 Pro Retired | google/gemini-2.5-pro | EU endpoint |
Gemini 3 Pro Retired | google/gemini-3-pro-preview | No EU endpoint |
Kimi
| Model name | Model ID | EU endpoint |
|---|---|---|
Kimi K2.6 | moonshotai/kimi-k2.6 | No EU endpoint |
Kimi K2 Instruct Retired | moonshotai/kimi-k2-instruct | No EU endpoint |
Kimi K2.5 Retired | moonshotai/kimi-k2.5 | No EU endpoint |
OpenAI
| Model name | Model ID | EU endpoint |
|---|---|---|
ChatGPT Latest | openai/chat-latest | No EU endpoint |
GPT-4.1 | openai/gpt-4.1 | EU endpoint |
GPT-4.1 mini | openai/gpt-4.1-mini | EU endpoint |
GPT-4.1 nano | openai/gpt-4.1-nano | EU endpoint |
GPT-4o | openai/gpt-4o | EU endpoint |
GPT-4o mini | openai/gpt-4o-mini | EU endpoint |
GPT-5 | openai/gpt-5 | EU endpoint |
GPT-5 mini | openai/gpt-5-mini | EU endpoint |
GPT-5 nano | openai/gpt-5-nano | EU endpoint |
GPT-5.2 | openai/gpt-5.2 | EU endpoint |
GPT-5.4 | openai/gpt-5.4 | EU endpoint |
GPT-5.4 mini | openai/gpt-5.4-mini | EU endpoint |
GPT-5.5 | openai/gpt-5.5 | EU endpoint |
GPT-5.6 Luna | openai/gpt-5.6-luna | EU endpoint |
GPT-5.6 Sol | openai/gpt-5.6-sol | EU endpoint |
GPT-5.6 Terra | openai/gpt-5.6-terra | EU endpoint |
GPT-6 Luna | openai/gpt-6-luna | EU endpoint |
GPT-6 Sol | openai/gpt-6-sol | EU endpoint |
GPT OSS 120B | openai/gpt-oss-120b | No EU endpoint |
GPT-5.1 Deprecated | openai/gpt-5.1 | EU endpoint |
GPT-5.4 nano Deprecated | openai/gpt-5.4-nano | EU endpoint |
GPT-5.1 Chat Retired | openai/gpt-5.1-chat-latest | No EU endpoint |
GPT-5.2 Chat Retired | openai/gpt-5.2-chat-latest | No EU endpoint |
GPT-5.3 Chat Retired | openai/gpt-5.3-chat-latest | No EU endpoint |
SpaceXAI
| Model name | Model ID | EU endpoint |
|---|---|---|
Grok 4.20 | xai/grok-4.20-0309-non-reasoning | No EU endpoint |
Grok 4.20 Reasoning | xai/grok-4.20-0309-reasoning | No EU endpoint |
Grok 4.20 Multi-Agent | xai/grok-4.20-multi-agent-0309 | No EU endpoint |
Grok 4.3 | xai/grok-4.3 | No EU endpoint |
Grok 4.5 | xai/grok-4.5 | No EU endpoint |
Grok 4.6 | xai/grok-4.6 | No EU endpoint |
Grok 4.7 | xai/grok-4.7 | No EU endpoint |
Grok 4.1 Fast Retired | xai/grok-4-1-fast-non-reasoning | No EU endpoint |
Grok 4.1 Fast Reasoning Retired | xai/grok-4-1-fast-reasoning | No EU endpoint |
Speech-to-text (STT)
Browse the available speech-to-text models by model family.
A checkmark in the EU endpoint column means the model has a dedicated EU endpoint, in addition to the global endpoint. To learn more, see Data residency.
AssemblyAI
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Universal-3.6 Pro | assemblyai/universal-3-6-pro | enen-USen-GBen-AUen-CAen-INen-NZeses-ESes-MXes-ARes-COes-CLes-PEes-VEes-ECes-GTes-CUes-BOes-DOes-HNes-PYes-SVes-NIes-CRes-PAes-UYes-PRfrfr-FRfr-CAfr-BEfr-CHdede-DEde-ATde-CHitit-ITit-CHptpt-BRpt-PTtrnlsvnodafihiviarhejaurzhrukocaglroetfayueafmrzuxhnn | EU endpoint |
Universal-3.5 Pro | assemblyai/universal-3-5-pro | enen-USen-GBen-AUen-CAen-INen-NZeses-ESes-MXes-ARes-COes-CLes-PEes-VEes-ECes-GTes-CUes-BOes-DOes-HNes-PYes-SVes-NIes-CRes-PAes-UYes-PRfrfr-FRfr-CAfr-BEfr-CHdede-DEde-ATde-CHitit-ITit-CHptpt-BRpt-PTtrnlsvnodafihiviarhejaurzh | EU endpoint |
Universal-Streaming | assemblyai/universal-streaming | enen-US | EU endpoint |
Universal-Streaming-Multilingual | assemblyai/universal-streaming-multilingual | multienen-USen-GBen-AUen-CAen-INen-NZeses-ESes-MXes-ARes-COes-CLes-PEes-VEes-ECes-GTes-CUes-BOes-DOes-HNes-PYes-SVes-NIes-CRes-PAes-UYes-PRfrfr-FRfr-CAfr-BEfr-CHdede-DEde-ATde-CHitit-ITit-CHptpt-BRpt-PT | EU endpoint |
Deepgram
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Flux | deepgram/flux-general-en | en | EU endpoint |
Flux (Multilingual) | deepgram/flux-general-multi | multienesfrdehiruptjaitnl | EU endpoint |
Nova-3 | deepgram/nova-3 | arar-AEar-SAar-QAar-KWar-SYar-LBar-PSar-JOar-EGar-SDar-TDar-MAar-DZar-TNar-IQar-IRbebnbsbgcahrcsdada-DKnlnl-BEenen-USen-AUen-GBen-INen-NZetfifrfr-CAdede-CHelhehihuiditjaknkoko-KRlvltmkmsmrnofaplptpt-BRpt-PTrorusrsksleses-419svsv-SEtltatetrukurvizhzh-CNzh-Hanszh-TWzh-Hantzh-HKmulti | EU endpoint |
Nova-3 Medical | deepgram/nova-3-medical | enen-USen-AUen-CAen-GBen-IEen-INen-NZ | EU endpoint |
Nova-3 Pharma | deepgram/nova-3-pharma | enen-USen-AUen-CAen-GBen-IEen-INen-NZ | EU endpoint |
Nova-2 | deepgram/nova-2 | multibgcazhzh-CNzh-Hanszh-TWzh-Hantzh-HKcsdada-DKnlnl-BEenen-USen-AUen-GBen-NZen-INetfifrfr-CAdede-CHelhihuiditjakoko-KRlvltmsnoplptpt-BRpt-PTroruskeses-419svsv-SEthth-THtrukvi | EU endpoint |
Nova-2 Conversational AI | deepgram/nova-2-conversationalai | enen-US | EU endpoint |
Nova-2 Medical | deepgram/nova-2-medical | enen-US | EU endpoint |
Nova-2 Phone Call | deepgram/nova-2-phonecall | enen-US | EU endpoint |
Cartesia
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Ink 2 | cartesia/ink-2 | en | EU endpoint |
Ink Whisper | cartesia/ink-whisper | enzhdeesrukofrjapttrplcanlarsvitidhifiviheukelmscsrodahutanothurhrbgltlamimlcysktefalvbnsrazslknetmkbreuishynemnbskksqswglmrpasikmsnyosoafockabetgsdguamyilouzfohtpstknnmtsalbmybotlmgastthawlnhabajwsuyue | No EU endpoint |
Gemini
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Gemini 3.5 Transcribe Live | google/gemini-3.5-transcribe-live | enesfrdeitptnlpltrruarhijakozhidthvisvdanoficselheuk | No EU endpoint |
Inworld
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Inworld STT 1 | inworld/inworld-stt-1 | enen-US | No EU endpoint |
OpenAI
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
GPT-Live Transcribe | openai/gpt-live-transcribe | afarazbebgbscacscydadeelenesetfafifrglhehihrhuhyidisitiwjakkknkoltlvmimkmrmsnenlnoplptroruskslsrsvswtathtltrukurvizhzh-cnzh-twzh-hkyuecmnfilmulti | No EU endpoint |
Speechmatics
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Speechmatics Linden-1 | speechmatics/linden-1 | arar_enbabebgbncacmncmn_encmn_en_ms_tacscydadeelenen_msen_taeoeseteufafifrgaglhehihrhuiaiditjakoltlvmnmrmsmtnlnoplptroruskslsvswtathtltrugukurviyue | EU endpoint |
Speechmatics Enhanced Retired | speechmatics/enhanced | arar_enbabebgbncacmncmn_encmn_en_ms_tacscydadeelenen_msen_taeoeseteufafifrgaglhehihrhuiaiditjakoltlvmnmrmsmtnlnoplptroruskslsvswtathtltrugukurviyue | EU endpoint |
Speechmatics Standard Retired | speechmatics/standard | arar_enbabebgbncacmncmn_encmn_en_ms_tacscydadeelenen_msen_taeoeseteufafifrgaglhehihrhuiaiditjakoltlvmnmrmsmtnlnoplptroruskslsvswtathtltrugukurviyue | EU endpoint |
SpaceXAI
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Speech to Text | xai/stt-1 | enarcsdanlfrdehiiditjakomsfaplptroruessvthtrvifilmk | EU endpoint |
Speech to Text 2 | xai/stt-2 | enarcsdanlfrdehiiditjakomsfaplptroruessvthtrvifilmk | EU endpoint |
Text-to-speech (TTS)
Browse the available text-to-speech models by model family.
A checkmark in the EU endpoint column means the model has a dedicated EU endpoint, in addition to the global endpoint. To learn more, see Data residency.
Cartesia
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Sonic 3 | cartesia/sonic-3 | endeesfrjaptzhhikoitnlplrusvtrtlbgroarcselfihrmsskdataukhunovibnthhekaidteguknmlmrpa | EU endpoint |
Sonic 3 (2026-01-12) | cartesia/sonic-3-2026-01-12 | endeesfrjaptzhhikoitnlplrusvtrtlbgroarcselfihrmsskdataukhunovibnthhekaidteguknmlmrpa | EU endpoint |
Sonic 3 Latest | cartesia/sonic-3-latest | endeesfrjaptzhhikoitnlplrusvtrtlbgroarcselfihrmsskdataukhunovibnthhekaidteguknmlmrpa | EU endpoint |
Sonic 3.5 | cartesia/sonic-3.5 | endeesjaptzhhikonlplrusvtrtlbgroarcselfihrmsskdataukhunovibnthhekaidteguknmlmrpa | EU endpoint |
Sonic 3.5 (2026-05-04) | cartesia/sonic-3.5-2026-05-04 | endeesjaptzhhikonlplrusvtrtlbgroarcselfihrmsskdataukhunovibnthhekaidteguknmlmrpa | EU endpoint |
Sonic 3.6 | cartesia/sonic-3.6 | enfrdeesjaptzhhiitkonlplrusvtrtlbgroarcselfihrmsskdataukhunovibnthhekaidteguknmlmrpaorur | EU endpoint |
Sonic 3.6 (2026-08-27) | cartesia/sonic-3.6-2026-08-27 | enfrdeesjaptzhhiitkonlplrusvtrtlbgroarcselfihrmsskdataukhunovibnthhekaidteguknmlmrpaorur | EU endpoint |
Sonic Latest | cartesia/sonic-latest | endeesjaptzhhikonlplrusvtrtlbgroarcselfihrmsskdataukhunovibnthhekaidteguknmlmrpa | EU endpoint |
Sonic Preview | cartesia/sonic-preview | enfrdeesjaptzhhiitkonlplrusvtrtlbgroarcselfihrmsskdataukhunovibnthhekaidteguknmlmrpaorur | EU endpoint |
Sonic 2 Deprecated | cartesia/sonic-2 | enfrdeesptzhjako | EU endpoint |
Sonic 3 (2025-10-27) Deprecated | cartesia/sonic-3-2025-10-27 | endeesfrjaptzhhikoitnlplrusvtrtlbgroarcselfihrmsskdataukhunovibnthhekaidteguknmlmrpa | EU endpoint |
Sonic Turbo Deprecated | cartesia/sonic-turbo | enfrdeesptzhjahiko | EU endpoint |
Sonic Retired | cartesia/sonic | enfrdeesptzhjahiitkonlplrusvtr | EU endpoint |
Deepgram
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Aura-2 | deepgram/aura-2 | enen-USen-PHen-GBen-AUeses-COes-MXes-ESes-419es-ARnlnl-NLfrfr-FRdede-DEitit-ITjaja-JP | EU endpoint |
Flux TTS | deepgram/flux-tts | enen-USen-GBen-AUen-IN | EU endpoint |
Aura-1 Retired | deepgram/aura | enen-USen-IEen-GB | No EU endpoint |
Fish Audio
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Drama 3 | fishaudio/drama-3 | enzhjadefreskoarrunlitplpt | No EU endpoint |
S2 Pro | fishaudio/s2-pro | enzhjadefreskoarrunlitplpt | No EU endpoint |
S2.1 Pro | fishaudio/s2.1-pro | enzhjadefreskoarrunlitplpt | No EU endpoint |
S2.1 Pro Free Retired | fishaudio/s2.1-pro-free | enzhjadefreskoarrunlitplpt | No EU endpoint |
Gemini
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Gemini 3.8 Flash-Lite TTS | google/gemini-3.8-flash-lite-tts | enaceafakamhyasawabanbnbjneubebhobsbugbgyuecacebckbhnezhhrcsdanlarzetfilfrgllgkadeelguhtmnhahehihuisiloidfaitjajvkamknkskkkmkirwkgkokylolnmkmagmaimlmtmnimrminlusnefuvaznsouznbnonnnyorplptparorusatsrsiskpsesarlvmstatevi | No EU endpoint |
Gemini 3.8 Flash TTS | google/gemini-3.8-flash-tts | enaceafakamhyasawabanbnbjnbaeubebembhobsbugbgmyyuecacebckbhnezhcrhhrcsdanldyudzarzetfilfifrgllgkadeelgnguhtmnhahehihuisigiloidfaitjajvkabkamknkskkkmkirwkgkokyloltglnltlbmkmagmaimlmtmnimrminlusnefuvaznsouznbnonnnyocorpagplptparorusatsrsdsiskslsopsstesarlvmsswsssvtgtatethtisqugvi | No EU endpoint |
Gradium
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Gradium TTS | gradium/default | enfrdeespt | EU endpoint |
Gradium TTS Beta | gradium/gradium-tts-beta | enfrdeespt | EU endpoint |
Inworld
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Realtime TTS 1.5 Max | inworld/inworld-tts-1.5-max | enzhjakoruitesptfrdeplnlhihear | No EU endpoint |
Realtime TTS 1.5 Mini | inworld/inworld-tts-1.5-mini | enzhjakoruitesptfrdeplnlhihear | No EU endpoint |
Realtime TTS 2.0 | inworld/inworld-tts-2 | enzhjakoruitesptfrdeplnlhihearafsqamhyasazeubebnbgmyyuecacebhrcsdayiharzetfilfiglgbmkaelguafbhtacwhuisidjvknkkkoklolvaylltlbmkmaimgmsmlmrmnarsneuznnbnnoracxpsfapmsparosrsdsiskslswsvtatethaebtrukuruzvivrocy | No EU endpoint |
Realtime TTS 2.0 Flash | inworld/inworld-tts-2-flash | enzhjakoruitesptfrdeplnlhihearafsqamhyasazeubebnbgmyyuecacebhrcsdayiharzetfilfiglgbmkaelguafbhtacwhuisidjvknkkkoklolvaylltlbmkmaimgmsmlmrmnarsneuznnbnnoracxpsfapmsparosrsdsiskslswsvtatethaebtrukuruzvivrocy | No EU endpoint |
Realtime TTS Retired | inworld/inworld-tts-1 | enesfrkonlzhdeitjaplptruhihear | No EU endpoint |
Realtime TTS Max Retired | inworld/inworld-tts-1-max | enesfrkonlzhdeitjaplptruhihear | No EU endpoint |
Rime
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Coda | rime/coda | enesfrdehijaptar | No EU endpoint |
Mist v3 | rime/mistv3 | enesfrdehi | No EU endpoint |
Arcana Retired | rime/arcana | enesfrdehihejaptar | No EU endpoint |
Mist Retired | rime/mist | en | No EU endpoint |
Mist v2 Retired | rime/mistv2 | enesfrde | No EU endpoint |
SpaceXAI
| Model name | Model ID | Languages | EU endpoint |
|---|---|---|---|
Text to Speech | xai/tts-1 | autoenar-EGar-SAar-AEbnzhfrdehiiditjakopt-BRpt-PTrues-MXes-EStrvi | EU endpoint |
Realtime models
Browse the available realtime models by provider. Realtime models, also called speech-to-speech models, consume and produce speech directly. They replace the cascaded STT-LLM-TTS pipeline. To learn more about how they differ, see the realtime models overview. Each model is either turn-based or full-duplex.
A checkmark in the EU endpoint column means the model has a dedicated EU endpoint, in addition to the global endpoint. To learn more, see Data residency.
Gemini Live API
| Model name | Model ID | Type | EU endpoint |
|---|---|---|---|
Gemini 3.8 Live | google/gemini-3.8-live | Turn-based | No EU endpoint |
Gemini 3.8 Live Extended Thinking | google/gemini-3.8-live-extended-thinking | Turn-based | No EU endpoint |
OpenAI GPT-Live
| Model name | Model ID | Type | EU endpoint |
|---|---|---|---|
GPT-Live 1 | openai/gpt-live-1 | Full-duplex | EU endpoint |
OpenAI Realtime API
| Model name | Model ID | Type | EU endpoint |
|---|---|---|---|
GPT Realtime 2.1 | openai/gpt-realtime-2.1 | Turn-based | EU endpoint |
GPT Realtime 2.1 mini | openai/gpt-realtime-2.1-mini | Turn-based | EU endpoint |
SpaceXAI Grok Voice Agent API
| Model name | Model ID | Type | EU endpoint |
|---|---|---|---|
Grok Voice 3.0 | xai/grok-voice-3.0 | Turn-based | No EU endpoint |
To use a realtime model, pass an instance of the RealtimeModel class from the inference module to the llm argument of your AgentSession. The model ID needs the provider prefix.
from livekit.agents import AgentSession, inferencesession = AgentSession(llm=inference.RealtimeModel(model="openai/gpt-realtime-2.1"),)
import { AgentSession, inference } from '@livekit/agents';const session = new AgentSession({llm: new inference.RealtimeModel({ model: "openai/gpt-realtime-2.1" }),});
Turn detection and interruption
LiveKit Inference also provides the models that the Agents framework uses for turn-taking:
- The audio turn detector predicts when the user has finished speaking.
- Adaptive interruption handling distinguishes true interruptions from backchanneling while the agent is speaking.
Billing
LiveKit Inference billing is based on usage. Discounted rates are available on the Scale plan. Custom rates are available on the Enterprise plan. Billing for realtime models varies by model. LiveKit Inference bills some by input and output tokens, and others by the minute. For rates, see Realtime models on the pricing page. The turn detection and interruption models are included at no extra cost for agents deployed to LiveKit Cloud. For self-hosted agents, usage beyond a monthly development allowance is billed per request on the Ship and Scale plans. On the Build plan, the session falls back to v1-mini and VAD-based interruption detection at the limit. For pricing information, see the LiveKit Inference pricing page . For more information on quotas, limits, and billing for LiveKit Inference, see the following topics.