Module turn_commit

Module turn_commit 

Source
Expand description

Pure turn-commit state machine.

Raw VAD edges make two measured mistakes when used directly as turn signals. (1) Firing end-of-turn on every speech offset commits during mid-turn pauses: false-positive rate 0.206 at recall 0.895. Holding the commit through extra silence walks a clean frontier: hold 600ms → fp 0.135; 800ms → recall 0.798 fp 0.087; 1200ms → fp 0.032. (2) Treating every speech onset during the other side’s turn as an interruption fires on backchannels (“mm-hm”): fp 0.702. Requiring the speech to SUSTAIN before committing suppresses them: sustain 600ms → fp 0.319 recall 0.939; 1000ms → fp 0.126; 1400ms → fp 0.062 recall 0.899. This module is that mechanism: a policy layer between VAD edges and turn signals, with the operating point as configuration.

Measurements are from Sesame’s TurnBench dev set (38 conversations of real dyadic speech).

Structs§

TurnCommitConfig
Operating point for turn commitment. All timings are measured from the VAD edge (which already includes the detector’s hangover).
TurnCommitPolicy
The policy state machine. Driven by a monotonic millisecond audio clock (advance it by the duration of each audio chunk, not wall time).

Enums§

TurnSignal
A committed turn signal, produced at its commit time.