Mindket

Pipecat backchannel detector

Newversion 1 · updated

Overview

Listens to a user while a voice bot is talking and tells apart a quick "mm-hmm" from a real interruption, so the bot keeps going or stops. A tiny streaming audio model for voice agent builders.

Pipecat backchannel detector is a kit in the Developer category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page, a zip of its files. Nothing in it runs by itself.

At a glance

You need
  • Python with pip
  • An ONNX runtime
  • A voice agent that can send 16 kHz audio chunks
Runs in
  • A Pipecat style voice agent loop
  • An ONNX runtime on a CPU
  • English voice conversations
Start with
pip install -U huggingface_hub
hf download pipecat-ai/backchannel-detector

Platform

WindowsOperating system
macOSOperating system
LinuxOperating system

About

What it is

This is a small streaming audio model for voice agents. While the bot is speaking, it decides whether the user is only nodding along, as with a short "mm-hmm" or "right", or is taking the floor, as with "wait" or "no". The bot then keeps talking or stops.

It works on the audio itself, so it decides ahead of the transcript. The model is tiny, at about 4 MB in full precision, and uses roughly 0.3 ms of CPU for each 40 ms chunk of audio.

Who it suits

It suits developers who build voice agents and want interruptions handled quickly, without a bot that either talks over people or stops at every small sound.

IndustryWho uses itHow they use itExample
SoftwareVoice agent developersAdd interruption handling to a spoken botKeep talking through an mm-hmm
Customer supportContact center teamsLet callers cut in naturallyStop at a caller saying wait
Voice productsProduct teamsMake bot turn-taking feel naturalTune the floor threshold
ResearchDialogue researchersStudy backchannel detection in speechReplay held-out conversations

If your bot does not speak, or you handle languages other than English, you can skip it.

Where to use it

It is meant to sit inside a streaming voice agent pipeline and run on a CPU. You fetch the files on Windows, macOS or Linux with Python.

  • A Pipecat style voice agent loop
  • An ONNX runtime on a CPU
  • English voice conversations
Use caseWhoWhat they get back
Backchannel checkVoice agent developersA probability that the user is only nodding
Interruption checkVoice agent developersA probability that the user is taking the floor
Voice activityResearchersAn auxiliary user voice activity signal

How to set it up

You need Python with pip to fetch the files and an ONNX runtime to run the model in your voice agent. The repository holds a default fp32 model and an int8 model.

  • Python with pip
  • An ONNX runtime
  • A voice agent that can send 16 kHz audio chunks
  1. Install the Hugging Face hub package.
  2. Download the repository files.
  3. Load the fp32 ONNX file, or the int8 one for a smaller model.
pip install -U huggingface_hub
hf download pipecat-ai/backchannel-detector

How to use it

You call the model once for every 40 ms chunk of the user's microphone audio, after echo cancellation. You also pass the bot's speaking state, and feed each cache output back in on the next call.

ToolWhat it does
backchannel-fp32.onnxThe default streaming model
backchannel-int8.onnxAn int8 quantized version
model.safetensorsPyTorch weights for the same network
model.jsonConfig, chunk size and state tensor names

The output is a set of probabilities over five labels, with backchannel meaning the continuer and assessment labels, and floor meaning the negative and floor-take labels.

Example

The bot is mid-sentence and the user says "mm-hmm". The model reports a high backchannel probability, so the bot keeps talking. If the user says "wait", the floor probability rises and the bot stops.

For newcomers and experts

If you are new, think of it as a listener that tells a voice bot when to stop talking. The first thing to try is to read its model.json to see the chunk size and states it needs.

If you know the field, a causal convolution encoder feeds a GRU, with extra auxiliary outputs for voice activity and a voice activity projection. The card tests it on saved conversations that are played back in real time to the agent.

  1. User audio arrives in 40 ms chunks
  2. The model reads it with bot state
  3. It outputs intent probabilities
  4. The bot keeps talking or stops

Good to know

The card reports results on two sets of held-out conversations, and a median time of about 280 to 300 ms to catch an interruption.

MeasureOpen YapotoSpeech
Interruptions caught within 700 ms82.9 %81.2 %
Interruptions lost as backchannels2.6 %4.1 %
Backchannels the bot talks through86.5 %75.2 %
  • License: bsd-2-clause
  • Cost to run: none named, since the model runs on a CPU
  • Data it reaches: the audio chunks you feed it, and no training data is included
  • Not for: languages other than English, or people talking to a bot, since it was trained on human-to-human talk
  • Not for: real phone codecs, which are untested, or real echo cancellation residue

README and files

README

Pipecat backchannel detector

Listens to a user while a voice bot is talking and tells apart a quick "mm-hmm" from a real interruption, so the bot keeps going or stops. A tiny streaming audio model for voice agent builders.

Made by pipecat-ai on Hugging Face. These notes are Mindket's, written from its model page and model card; the model's own files and license are on Hugging Face.

About

What it is: This is a small streaming audio model for voice agents. While the bot is speaking, it decides whether the user is only nodding along, as with a short "mm-hmm" or "right", or is taking the floor, as with "wait" or "no". The bot then keeps talking or stops.

It works on the audio itself, so it decides ahead of the transcript. The model is tiny, at about 4 MB in full precision, and uses roughly 0.3 ms of CPU for each 40 ms chunk of audio.

Who it suits: It suits developers who build voice agents and want interruptions handled quickly, without a bot that either talks over people or stops at every small sound.

Industry | Who uses it | How they use it | Example
Software | Voice agent developers | Add interruption handling to a spoken bot | Keep talking through an mm-hmm
Customer support | Contact center teams | Let callers cut in naturally | Stop at a caller saying wait
Voice products | Product teams | Make bot turn-taking feel natural | Tune the floor threshold
Research | Dialogue researchers | Study backchannel detection in speech | Replay held-out conversations

If your bot does not speak, or you handle languages other than English, you can skip it.

Where to use it: It is meant to sit inside a streaming voice agent pipeline and run on a CPU. You fetch the files on Windows, macOS or Linux with Python.

  • A Pipecat style voice agent loop
  • An ONNX runtime on a CPU
  • English voice conversations
Use case | Who | What they get back
Backchannel check | Voice agent developers | A probability that the user is only nodding
Interruption check | Voice agent developers | A probability that the user is taking the floor
Voice activity | Researchers | An auxiliary user voice activity signal

How to set it up: You need Python with pip to fetch the files and an ONNX runtime to run the model in your voice agent. The repository holds a default fp32 model and an int8 model.

  • Python with pip
  • An ONNX runtime
  • A voice agent that can send 16 kHz audio chunks
  1. Install the Hugging Face hub package.
  2. Download the repository files.
  3. Load the fp32 ONNX file, or the int8 one for a smaller model.
pip install -U huggingface_hub
hf download pipecat-ai/backchannel-detector

How to use it: You call the model once for every 40 ms chunk of the user's microphone audio, after echo cancellation. You also pass the bot's speaking state, and feed each cache output back in on the next call.

Tool | What it does
backchannel-fp32.onnx | The default streaming model
backchannel-int8.onnx | An int8 quantized version
model.safetensors | PyTorch weights for the same network
model.json | Config, chunk size and state tensor names

The output is a set of probabilities over five labels, with backchannel meaning the continuer and assessment labels, and floor meaning the negative and floor-take labels.

Example: The bot is mid-sentence and the user says "mm-hmm". The model reports a high backchannel probability, so the bot keeps talking. If the user says "wait", the floor probability rises and the bot stops.

For newcomers and experts: If you are new, think of it as a listener that tells a voice bot when to stop talking. The first thing to try is to read its model.json to see the chunk size and states it needs.

If you know the field, a causal convolution encoder feeds a GRU, with extra auxiliary outputs for voice activity and a voice activity projection. The card tests it on saved conversations that are played back in real time to the agent.

User audio arrives in 40 ms chunks
The model reads it with bot state
It outputs intent probabilities
The bot keeps talking or stops

Good to know: The card reports results on two sets of held-out conversations, and a median time of about 280 to 300 ms to catch an interruption.

Measure | Open Yap | otoSpeech
Interruptions caught within 700 ms | 82.9 % | 81.2 %
Interruptions lost as backchannels | 2.6 % | 4.1 %
Backchannels the bot talks through | 86.5 % | 75.2 %
  • License: bsd-2-clause
  • Cost to run: none named, since the model runs on a CPU
  • Data it reaches: the audio chunks you feed it, and no training data is included
  • Not for: languages other than English, or people talking to a bot, since it was trained on human-to-human talk
  • Not for: real phone codecs, which are untested, or real echo cancellation residue

On Hugging Face, 13 November 2026

  • Task: audio classification
  • Library: onnx
  • Parameters: 961K
  • Weights: about 4 MB in F32; about 1 MB at 4-bit (estimate)
  • Formats: Safetensors
  • Downloads in the last 30 days: 0
  • Likes: 17
  • License: bsd-2-clause
  • Languages: en
  • Tags: onnx, safetensors, pipecat, voice-agents, turn-taking, backchannel, streaming, audio-classification

Links

Get the model

Download its files with Hugging Face's command line:

pip install -U huggingface_hub
hf download pipecat-ai/backchannel-detector

Then follow the usage in its model card. Nothing in this kit runs by itself.

Files
README.md  5 KB

1 file, 5 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-13

Compare with similar

Listed Hugging Face models in the same category that share the most tags with this one.

ProductDownloads, last 30 daysLikesParametersLicenseLast change
Pipecat backchannel detector This page017961Kbsd-2-clause
turn-1-miniShares turn-taking · voice-agents · streaming2,7336—apache-2.0
Pipecat ToneShares pipecat · voice-agents · onnx010—bsd-2-clause
Maya 2 NativeShares voice-agents · streaming · safetensors5,7741702.5Bapache-2.0
Backchannel Cue 32MShares backchannel · onnx11427—mit
Anuvani-LIDShares audio-classification · onnx · safetensors2767116Mapache-2.0
Numbers as Mindket last read them, from 2026-11-12 to 2026-11-13.

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

Bonsai-27B-GGUF

lmstudio-community · Kit

A GGUF conversion of the 27B Bonsai model for LM Studio, with a 3.80 GB Q1_0 language file and a 0.93 GB BF16 vision projector. Tested for text, vision and par…

New

Runs DeepSeek-V4.1-Flash-1017 as a 2.9 bits-per-weight EXL3 quantization, a 196 GiB copy for people serving large models on their own hardware. Perplexity stay…

New

MusicGen Small

facebook · Kit

Generates short music clips from a text description or an audio prompt, in the small checkpoint of facebook's MusicGen. It suits developers and music hobbyists…

New

Similar in Developer

See all in Developer

Lexnet

alpindale · Kit

Tags every character of C source code for syntax highlighting with a tiny neural network of about 984 weights, run through a small C program. For developers an…

New

FLUX.2 Klein LoRA Studio

prithivMLmods · Kit

Try a set of LoRAs for the FLUX.2 Klein image model in a Gradio app that runs in your browser or on your own computer. Made for people who make or test AI imag…

New

anaksor-ocr

Sokheng · Kit

Reads Khmer and English text from documents, receipts and photos of signs, using a detector for text lines and a recogniser for each line. Suits developers who…

New