|
Download README.md from zero-runtime/echo-small: direct link, hf CLI and curl.
- Browser
- Download file 7.6 kB
-
https://huggingface.co/zero-runtime/echo-small/resolve/main/README.md
- Command line
-
hf download hf://zero-runtime/echo-small/README.md
-
curl -L -H "Authorization: Bearer $HF_TOKEN" -o README.md https://huggingface.co/zero-runtime/echo-small/resolve/main/README.md
7.6 kB
| language: | |
| - bn | |
| - de | |
| - en | |
| - es | |
| - fr | |
| - gu | |
| - hi | |
| - it | |
| - mr | |
| - ta | |
| - te | |
| - ur | |
| tags: | |
| - turn-detection | |
| - end-of-utterance | |
| - eou | |
| - conversational-ai | |
| - voice-agents | |
| - multilingual | |
| - speech | |
| extra_gated_prompt: "Access to Echo Small is provided through Zero Runtime. Visit https://zeroruntime.ai/?utm_source=huggingface&utm_medium=referral&utm_campaign=huggingface to get started." | |
| <div align="center"> | |
|  | |
| <p><b>Echo Small is the fastest way to stop your agent talking over people.<br/> | |
| A verdict in under 10 ms, decided before the silence even registers.</b></p> | |
| <p> | |
| <a href="https://zeroruntime.ai/?utm_source=huggingface&utm_medium=referral&utm_campaign=huggingface"><img src="https://img.shields.io/badge/Get%20Access-zeroruntime.ai-2563EB?style=for-the-badge" alt="Get Access"></a> | |
| | |
| <a href="https://docs.zeroruntime.ai/build/turn-detection-and-interruptions/turn-detection?utm_source=huggingface&utm_medium=referral&utm_campaign=huggingface#turn-detection"><img src="https://img.shields.io/badge/Read%20the%20Docs-Turn%20Detection-0F2143?style=for-the-badge" alt="Documentation"></a> | |
| </p> | |
| </div> | |
| Most turn detectors wait for silence and hope. A 500 ms gap looks identical whether someone finished a sentence, paused to think, or simply took a breath, so agents built on timers end up talking over people or leaving them hanging. | |
| Echo Small does not guess. It reads the semantic meaning of what the user just said and decides whether the thought closed or trailed off mid-way. One prediction per turn, with a confidence score, returned before a silence timer would have finished counting. | |
| It is the quick one in the **Echo family** and the default for most agents: 12 languages, four conversational states, and the lowest latency of the three. It also beats the proprietary turn detectors most voice stacks ship with. | |
| --- | |
| ## ๐ฏ What it does | |
| Echo Small classifies every user turn into one of four states. Each state tells the agent exactly what to do next. | |
|  | |
| | State | What it means | What your agent should do | | |
| |:--|:--|:--| | |
| | **Complete** | The user has finished their turn | Hand the turn to the LLM and respond | | |
| | **Incomplete** | The user is mid-sentence, just pausing | Keep listening. Do not take the floor | | |
| | **Backchannel** | A short acknowledgement: "uh-huh", "okay okay" | Keep speaking. This is not an interruption | | |
| | **Wait** | The user is asking you to hold: "wait a minute", "hold on" | Stop speaking immediately | | |
| Most turn detectors only answer the first two. Backchannel and Wait are the states that make an agent feel polite instead of oblivious: not stopping every time someone says "mm-hm", and stopping the instant someone says "hold on". | |
| --- | |
| ## ๐ Input and output | |
| **Echo Small works from semantic understanding alone.** | |
|  | |
| **Input**, per turn: | |
| | Field | Description | | |
| |:--|:--| | |
| | **Utterance** | What the user just said | | |
| **No language tag required.** Echo detects the language itself, so there is nothing to configure per call. | |
| **Output**, one prediction per turn: | |
| | Field | Description | | |
| |:--|:--| | |
| | **State** | `Complete`, `Incomplete`, `Backchannel` or `Wait` | | |
| | **Confidence** | A score for the prediction, so you can tune how decisive your agent is | | |
| No audio needed and no language to declare. It drops into any pipeline as-is, and that is why it answers fastest and costs least to run. | |
| --- | |
| ## ๐ Supported languages | |
| **12 languages**, spanning Indian and European language families. Detected automatically, so you never pass a language code. | |
| | Code | Language | Code | Language | Code | Language | | |
| |:----:|:---------|:----:|:---------|:----:|:---------| | |
| | `bn` | ๐ง๐ฉ Bengali | `de` | ๐ฉ๐ช German | `en` | ๐บ๐ธ English | | |
| | `es` | ๐ช๐ธ Spanish | `fr` | ๐ซ๐ท French | `gu` | ๐ฎ๐ณ Gujarati | | |
| | `hi` | ๐ฎ๐ณ Hindi | `it` | ๐ฎ๐น Italian | `mr` | ๐ฎ๐ณ Marathi | | |
| | `ta` | ๐ฎ๐ณ Tamil | `te` | ๐ฎ๐ณ Telugu | `ur` | Urdu | | |
| This is not a model that works well in English and degrades everywhere else. Accuracy holds across the full set. | |
| --- | |
| ## ๐ Performance | |
| Benchmarked on [**TURNS2K**](https://huggingface.co/datasets/latishab/turns-2k), 2,000 English conversational samples labelled Complete or Incomplete, against a leading third-party turn detector shown here as **Baseline**. | |
| | Metric | Echo Small | Baseline | | |
| |:--|--:|--:| | |
| | **Accuracy** | **93.60%** | 61.13% | | |
| | **Recall (Complete)** | **97.31%** | 32.83% | | |
| | **Specificity** | **88.91%** | 96.83% | | |
| | **F1 Score (Complete)** | **0.9443** | 0.4851 | | |
| **Echo Small beats the proprietary baseline by 32 points of accuracy and nearly 3x the recall.** Recall is the number to watch. **97.31% of finished turns are recognised as finished**, so the agent replies instead of leaving the user hanging. For every 100 times a user actually finished speaking, Echo Small responds 97 times. The baseline responds 33. | |
| > Results are measured on the benchmark described above. Performance may vary depending on language, deployment configuration, user behaviour and application requirements. | |
| --- | |
| ## ๐ง Trained on data built for this problem | |
| Echo Small is trained on a **proprietary, closed-source dataset built in-house**, purpose-made for conversational turn-taking across all 12 languages and all four states. | |
| That dataset is the reason the rare states hold up. Backchannels and hold requests barely appear in off-the-shelf corpora, so a model trained on public data has almost nothing to learn them from. | |
| --- | |
| ## ๐๏ธ The Echo family | |
| All three models return the same four states, so you can move between them without changing your agent logic. | |
| | Model | Modality | Latency | Best for | | |
| |:--|:--|:--:|:--| | |
| | **`echo-small`** | **Semantic** | **5 to 10 ms** | The lowest latency. The default when responsiveness matters most | | |
| | `echo-large` | Semantic | **10 to 20 ms** | Higher accuracy, when it matters more than raw speed | | |
| | `echo-omni` | Audio + semantic | **60 to 80 ms** | The widest language coverage, with acoustic understanding on top of the semantics | | |
| --- | |
| ## ๐ Get access | |
| Echo Small 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. | |
| ```python | |
| # Set ZERORUNTIME_AUTH_TOKEN in your environment. | |
| from zeroruntime.inference import TurnDetector | |
| # Lowest latency, the default choice | |
| turn_detector = TurnDetector(model="echo-small") | |
| ``` | |
| <div align="center"> | |
| <a href="https://zeroruntime.ai/?utm_source=huggingface&utm_medium=referral&utm_campaign=huggingface"><img src="https://img.shields.io/badge/Get%20access%20and%20start%20building-zeroruntime.ai-6C4CF1?style=for-the-badge" alt="Get Access"></a> | |
| | |
| <a href="https://docs.zeroruntime.ai/build/turn-detection-and-interruptions/turn-detection?utm_source=huggingface&utm_medium=referral&utm_campaign=huggingface#turn-detection"><img src="https://img.shields.io/badge/Turn%20detection%20%26%20interruptions-docs.zeroruntime.ai-1F2937?style=for-the-badge" alt="Documentation"></a> | |
| </div> | |
| --- | |
| <div align="center"> | |
|  | |
| <sub><b>Echo Small</b> by <a href="https://zeroruntime.ai/?utm_source=huggingface&utm_medium=referral&utm_campaign=huggingface">Zero Runtime</a></sub> | |
| </div> | |