bright-sugar-29405
04/20/2026, 9:40 AMtall-airline-16756
04/20/2026, 9:40 AMtall-airline-16756
04/20/2026, 9:41 AMbright-sugar-29405
04/20/2026, 9:43 AMAgent level (CampaignAgent / SimpleAgent):
min_endpointing_delay: 0.4s
max_endpointing_delay: 0.8s
Session level (AgentSession):
turn_handling:
turn_detection: InProcessTurnDetector (ONNX model, in-process)
endpointing:
min_delay: 0.4
max_delay: 0.8
vad: Silero VAD (preloaded in prewarm)
aec_warmup_duration: 0.0 (disabled)
STT level (Deepgram):
endpointing_ms: 100
interim_results: True
no_delay: True
sample_rate: 8000
All Available Options (LiveKit Agent SDK)
TurnHandlingOptions
turn_handling = {
"turn_detection": "stt" | "vad" | "realtime_llm" | "manual" | InProcessTurnDetector,
"endpointing": {
"mode": "fixed" | "dynamic", # We use dynamic (via turn detector)
"min_delay": 0.4, # Min wait after silence (seconds)
"max_delay": 0.8, # Max wait before forcing end of turn
},
"interruption": {
"enabled": True, # Allow user to interrupt agent
"mode": "adaptive" | "vad", # How to detect interruptions
"discard_audio_if_uninterruptible": False,
"min_duration": 0.3, # Min speech to count as interruption
"min_words": 1, # Min words to count as interruption
"resume_false_interruption": True, # Resume if user didn't actually interrupt
"false_interruption_timeout": 0.5, # Seconds to wait before deciding it's false
},
"preemptive_generation": {
"enabled": True, # Start LLM before user finishes (speculative)
"preemptive_tts": True, # Also start TTS speculatively
"max_speech_duration": 10.0, # Max seconds of preemptive speech
"max_retries": 3,
},
}
Other Session Options
AgentSession(
aec_warmup_duration=0.0, # We disabled (was 3.0s default)
ivr_detection=False, # Auto-detect IVR phone menus
user_away_timeout=15.0, # Mark user "away" after silence
)tall-airline-16756
04/20/2026, 9:43 AMinterruption.enabled=True and use mode: "adaptive" if you want the model + VAD to drive interruptions. Tune min_duration and min_words to avoid false positives from short noises/interims.
• Preemptive generation: if preemptive_generation.enabled=True, confirm your turn detector’s false-positive rate is very low — preemptive work can waste compute or cause awkward agent responses if the model mispredicts end-of-turn.
• AEC warmup: you disabled aec_warmup_duration — ensure echo cancellation performance is fine without warmup for your telephony endpoints.
Tests to run
1. Latency test: measure median and 95th-percentile decision latency under typical CPU load.
2. False positive/negative audit: run a 100–500 call sample and log model decisions vs ground-truth end-of-turn to compute false-interruption and missed-end rates.
3. Interruption simulation: simulate user interruptions mid-agent-speech to validate resume_false_interruption and false_interruption_timeout behavior.
4. End-to-end: validate with real callers (different accents/noise) because the multilinguistic LiveKit model was tuned for that.
If you want help I can:
• Review the model’s expected input/output spec if you paste it here.
• Suggest concrete tuning values for min_duration, min_words, and false_interruption_timeout based on your false-positive/negative rates.
• Suggest a simple test script to measure per-decision latency and resource usage.
Which would you like me to do next? Also please share the ONNX model name/source and its input/output shapes or an example inference payload.
, with interactive elementsbright-sugar-29405
04/20/2026, 9:50 AMtall-airline-16756
04/20/2026, 9:50 AMbright-sugar-29405
04/20/2026, 9:52 AM"interruption": {
"enabled": True,
"mode": "adaptive",
"min_duration": 0.3,
"min_words": 1,
"resume_false_interruption": True,
"false_interruption_timeout": 0.5,
},
"preemptive_generation": {
"enabled": True,
"preemptive_tts": True,
}
What will be teh effect of these are these good to go settings ?tall-airline-16756
04/20/2026, 9:52 AMpreemptive_generation (e.g., cap speculative TTS shorter).
• Keep Silero VAD + your turn detector tuned and verify STT interim quality at 8kHz to reduce mis-detections.
If you want, I can:
• Suggest specific tuned values based on your measured false-positive rate, or
• Provide a short test plan and logging metrics to evaluate interruption vs preemptive effectiveness.
Which would you like next?
, with interactive elements