Echo Omni Duplex. 0.989 interruption recall, 0.965 end-of-turn recall, 2 channels, 602 ms interruption latency.

Echo Omni Duplex listens to both sides of the conversation at once.
It knows who holds the floor, continuously, not once per turn.

Get Access   Documentation

🎧 Built for agents that listen while they speak, the full-duplex member of the Echo family.

A voice agent has to make one decision over and over: speak, or stay quiet. Most turn detectors answer it by waiting for silence, and a 500 ms gap looks identical whether someone finished their sentence, paused to think, or took a breath. Agents built on timers talk over people or leave them hanging.

Echo Omni Duplex answers it differently. It listens to both channels continuously, the user and the agent, and keeps a running estimate of who holds the conversational floor. Because it never stops listening to either side, it can tell a real barge-in from an "mm-hm", and a finished sentence from a breath, while the audio is still arriving.


🎯 What it does

Four things can happen around the moment a speaker stops or starts. Only two of them are events.

Four situations: end of turn and interruption fire an event; mid-turn pause and backchannel do not.

Situation What it means
End of turn The speaker has given up the floor
Interruption The listener is taking the floor mid-turn
Mid-turn pause The speaker stopped, but has not finished
Backchannel "uh-huh", "right", "okay". Acknowledgement, not a bid for the floor

The last two are where most systems fail. A mid-turn pause looks like an ending, and a backchannel looks like a barge-in, so detectors fire on both. Echo Omni Duplex is built around telling them apart.


πŸ”Œ Input and output

A conversation timeline on two channels: the user pauses mid-sentence and nothing fires; the turn really ends and an end-of-turn fires; the user backchannels twice while the agent is speaking and nothing fires; the user starts speaking while the agent is still mid-sentence and an interruption fires. A floor strip underneath shows which side holds the conversational floor at every moment.

Input: two continuous audio streams:

Channel Carries
Channel 1 The user's microphone
Channel 2 The agent's own output audio

Output: emitted continuously as the conversation runs:

Field Description
Floor A running estimate of which side currently holds the conversational floor
Event A committed end-of-turn or interruption, at the moment it is decided
Confidence A score for the decision, so you can set your own threshold

Both channels are consumed as a live stream. There is no per-turn segmentation step, no transcript, and no voice-activity gate in front of it: the model sees the conversation as it happens. Every output at time t depends only on audio up to t, so it runs causally in a live call.

Why channel 2 matters. The strongest available cue for "has this person finished?" lives on the other side of the conversation, not the speaker's own. In a voice agent that other side is the agent, and its audio is known exactly. Feeding it in is the difference between guessing and knowing.


🌍 Supported languages

Code Language
en English

πŸ“Š Performance

Measured on the public development split of TurnBench, the benchmark described below, using its own scorer.

Task Recall ↑ False-positive rate ↓ Latency p50 ↓
End-of-turn 0.965 0.100 779 ms
Interruption 0.989 0.098 602 ms

Latency here is not compute time. It is the benchmark's own measure: how long after the real event the model committed to its decision. Most of that window is evidence the model is still waiting for, because deciding sooner means deciding on less. Every system on the benchmark pays it.

The false-positive rates are the numbers users feel. On end-of-turn, a false positive is the agent claiming the floor during a mid-turn pause, cutting somebody off mid-sentence. On interruption, it is the agent stopping because it mistook a backchannel, a cough or its own echo for a barge-in.

Echo Omni Duplex has also been evaluated on our own internal test set. Those results are not published here yet.

Results are measured on the benchmark described below. Performance may vary depending on language, deployment configuration, user behaviour and application requirements.


πŸ† TurnBench

TurnBench is Sesame AI Labs' public benchmark for conversational turn-taking: dual-channel conversation scored on recall, false-positive rate and latency.

It scores committed decisions, not probability curves, which is what a deployed agent actually has to produce. At every moment a system either takes the floor or yields, and that is what gets measured.

Its authors summarise the state of the field this way:

"No system is fast, selective, and high-recall at the same time."

That is the trade-off Echo Omni Duplex was built against. On the interruption track it is higher recall, lower false-positive rate, and roughly 300 milliseconds sooner than the strongest published reference system, all three at once, scored the same way on the same data.

It is not uniformly ahead. At least one published system commits interruptions faster still, at materially lower recall. The trade-off has moved; it has not disappeared.


πŸ”¬ Beyond the benchmark

Echo Omni Duplex runs end to end in a live full-duplex voice agent, alongside real speech-to-text, a real LLM and real text-to-speech, and its streaming path is bit-identical to the offline reference the benchmark scored.


πŸŽ›οΈ The Echo family

Echo Omni Duplex is the full-duplex member. The other three decide one turn at a time, which suits a half-duplex pipeline; Duplex decides continuously, which is what an agent needs when it is listening and speaking at once.

Model Modality Decides Best for
echo-small Semantic Per turn The lowest latency. The default when responsiveness matters most
echo-large Semantic Per turn Higher accuracy, when it matters more than raw speed
echo-omni Audio + semantic Per turn The widest coverage, with acoustic understanding on top of the semantics
echo-omni-duplex Two-channel audio Continuously Full-duplex agents that listen while they speak

πŸš€ Get access

Echo Omni Duplex is served for you. There is nothing to download, host, or keep running. Plug it straight into your voice pipeline alongside your existing STT, LLM and TTS.

# Set ZERORUNTIME_AUTH_TOKEN in your environment.

from zeroruntime.inference import TurnDetector

# Full duplex: both channels streamed continuously, events pushed back as they commit
turn_detector = TurnDetector(model="echo-omni-duplex")

Get Access   Documentation


Echo Omni Duplex

Echo Omni Duplex by Zero Runtime

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Collection including zero-runtime/echo-omni-duplex