Skip to main content
In a voice conversation, the agent must get timing and audio quality right. It needs to know when the user has finished speaking, when to yield if someone interrupts, and it needs clean audio to make accurate decisions. This section covers the features that handle all three. Turn detection, VAD, and de-noise in the pipeline

What this section covers

Turn detection

Decide when the user has actually finished a turn so the agent replies at the right moment.

VAD and interruptions

Detect whether speech is present and let the user barge in while the agent is talking.

De-noise

Remove background noise before audio reaches the pipeline so every stage works from clean input.

Turn Detection and VAD

VAD and turn detection answer two different questions, and work best paired, with VAD as the first-pass speech detector and the turn detector deciding when the turn is over:
  • VAD: is anyone speaking? Fast and lightweight, but tracks silence only, not meaning.
  • Turn Detection: is the user actually done? A semantic model shifts from raw audio analysis to Natural Language Understanding (NLU), reading words and context to tell a real endpoint from a thinking pause.

Interruptions

Real conversations aren’t strictly turn by turn. When a user cuts in, interruption handling lets the agent stop and listen, using VAD or STT to confirm they genuinely want the turn.

Noise Cancellation

Background noise such as typing, fans, or street sound lowers transcription accuracy and confuses turn detection. De-noise strips it from the incoming audio in real time, so STT, VAD, and the turn detector all work from a clean signal.

What’s Next

Turn Detection

Set up semantic turn detection first.

VAD and Interruptions

Add VAD and handle user interruptions.

De-noise

Remove background noise before the pipeline.

References

Examples

Cascade Basic

Voice agent with VAD and turn detection configured.

SDK Reference

End of Utterance

End of Utterance in the Python API reference.

VAD

VAD in the Python API reference.