steep-balloon-41261
12/16/2025, 6:57 PMtall-airline-16756
12/16/2025, 6:58 PMtall-airline-16756
12/16/2025, 6:58 PMautomatic_activity_detection.disabled = true in realtime_input_config.
2) Provide an alternative turn detector (recommended)
• Disabling built-in VAD removes automatic end-of-speech detection. Add a separate turn-detection method such as LiveKit’s MultilingualModel or another custom detector.
• If using LiveKit’s turn detector, you must also supply a streaming STT plugin (for example assemblyai/universal-streaming) because the detector operates on STT output.
3) Examples
Python:
from livekit.agents import AgentSession
from livekit.plugins.turn_detector.multilingual import MultilingualModel
from livekit.agents.models import google
session = AgentSession(
turn_detection=MultilingualModel(), # optional alternative
llm=google.realtime.RealtimeModel(
realtime_input_config=google.types.RealtimeInputConfig(
automatic_activity_detection=google.types.AutomaticActivityDetection(
disabled=True,
),
),
input_audio_transcription=None,
),
stt="assemblyai/universal-streaming", # required if using multilingual detector
)
TypeScript:
import * as google from '@livekit/agents-plugin-google';
import * as livekit from '@livekit/agents-plugin-livekit';
const session = new voice.AgentSession({
turnDetection: new livekit.turnDetector.MultilingualModel(),
llm: new google.realtime.RealtimeModel({
model: "gemini-2.0-flash-exp",
realtimeInputConfig: {
automaticActivityDetection: { disabled: true },
},
}),
stt: "assemblyai/universal-streaming",
});
Would you like a minimal example without any alternate detector (noting that the agent then won't detect end-of-speech), or help wiring the MultilingualModel + AssemblyAI STT into your existing session?
Sources: Gemini Live API plugin | LiveKit docs | Realtime model plugins | LiveKit Docs