Turn-taking playground
A streaming turn-taking model running entirely in your browser (WebGPU, or CPU as a fallback). Feed it two speakers, from your microphone or audio files, and watch it decide, every 80 ms, when a speaker has finished their turn and when a speaker is taking the floor. Nothing is uploaded: audio stays on your device.
The model is about 225 MB and is cached after the first load. Start also loads it.
This page is not cross-origin isolated, so the CPU backend runs on one thread and will be slow.
Sources
Speaker A
Speaker B
A two-channel recording with one speaker per channel, like a call recording.
Background noise and options
- Backend
- not loaded
- Time per call
- –
- Real-time factor
- –
- Latency in pipeline
- –
- Stream time
- –
About
The model is a causal FastConformer encoder (NVIDIA stt_en_fastconformer_hybrid_large_streaming_multi,
CC-BY-4.0) feeding a small cross-speaker turn head trained on two-channel conversations, with background-speech
augmentation. It sees 80 ms frames with no lookahead. The default thresholds are the operating points on the
TurnBench dev set (end of turn: recall 0.93 at 10% false fires; take the floor: recall 0.98 at 9%).
Events are committed on a rising edge above the threshold with a 0.5 s refractory, as TurnBench scores them.
Two scores per speaker: end of turn rises when that speaker has stopped and is handing over the floor (not a mid-sentence pause); take the floor rises when that speaker starts a real turn, not a backchannel like "mm-hm". The model is English-only and a research preview, for non-commercial use.