Skip to main content
voice agentsLiveKitturn detection

Turn detection нарешті перестав бути магією

Для голосових агентів з'явилася чітка open-source відповідь на давню проблему: turn detection. LiveKit turn-detector та Pipecat smart-turn дають розробникам готову базу для AI automation, де раніше доводилося збирати крихку суміш із VAD, таймерів та евристик. Це значно покращує якість розмови та прибирає зайві перебивання.

Технічний контекст

Я багато разів бачив одну й ту саму картину: голосовий агент звучить пристойно рівно до першого живого діалогу. Потім він або влізає в середину фрази, або занадто довго тупить після відповіді. І ось тут уся красива AI implementation починає розсипатися на рівні базової механіки розмови.

Привід свіжий: в обговоренні голосових агентів людина з POC для обдзвону кандидатів прямо назвала turn detection найбільшою проблемою. З практики я з цим згоден. Коли люди пробують 11labs, Vapi, LiveKit, вони швидко впираються не в LLM, а в момент “користувач закінчив говорити чи просто взяв паузу”.

У відповідь на це йому кинули два дуже конкретні посилання: open-source модель LiveKit turn-detector на Hugging Face і репозиторій Pipecat smart-turn на GitHub. І це вже не розмова в дусі “ну комбінуйте VAD із затримками”. Це нормальні інструменти, які можна взяти та вбудувати в пайплайн.

Я заглибився у специфікацію LiveKit, і там є на що дивитися. Це текстовий detector кінця репліки, а не аудіомодель: близько 135M параметрів, заснований на SmolLM v2, працює по транскрипту після STT і дивиться на контекст діалогу, а не тільки на паузу в аудіо. По суті, він додає семантику туди, де звичайний VAD бачить лише тишу.

Саме тому він корисний у сценаріях на кшталт інтерв'ю, сапорту, збору адрес, номерів, дат. Людина каже: “так, адреса... секунду... вулиця...” і звичайний endpointing вже хоче перехопити хід. Семантичний turn detector у таких місцях рятує розмову від ідіотських перебивань.

У LiveKit заявлені сильні цифри: до 85% менше непотрібних переривань і близько 3% false negative за сценарієм “хід ще не закінчено”. Працює в real-time на CPU, інтегрується з Silero VAD і STT на кшталт Deepgram, є варіанти для Python і JS. Для мене це важливіше за будь-які маркетингові демо, тому що я одразу бачу, як це лягає в реальну AI integration, а не в красивий ролик.

З Pipecat smart-turn деталей менше, і це треба чесно сказати. У публічних обговореннях його рекомендують як робочу альтернативу, особливо в self-hosted пайплайнах із Whisper-подібним STT. Але за бенчмарками та архітектурою він поки що менш прозорий, ніж LiveKit.

Тобто картина проста: LiveKit зараз виглядає як більш зріла open-source точка входу, Pipecat — як перспективна та легша альтернатива, яку варто проганяти на своїх даних. Універсального переможця тут немає, тому що на коротких відповідях, акцентах і шумній лінії все змінюється дуже швидко.

Вплив на бізнес та автоматизацію

Найцікавіше тут не в моделі як такій, а в тому, що змінюється архітектурне рішення. Раніше багато команд лікували turn detection “милицями”: додавали зайві мілісекунди, городили евристики за знаками пунктуації, робили ручні винятки для чисел та адрес. Це працювало до першого масштабування.

Тепер можна будувати голосовий пайплайн чесніше: VAD для факту мовлення, STT для тексту, semantic turn detector для рішення “хід закінчено чи ні”, і вже потім LLM плюс TTS. Така схема краще переноситься між кейсами й дає більш передбачувану поведінку на великих обсягах дзвінків.

Хто виграє? Команди, які роблять обдзвони, скринінг кандидатів, кол-центри, запис на послуги, первинну кваліфікацію лідів. Там кожен зайвий barge-in б'є по конверсії сильніше, ніж здається на дашборді.

Хто програє? Платформи, які продавали “магічну якість” без можливості нормально підкрутити стек під конкретний сценарій. Якщо open-source закриває ключовий bottleneck, то вартість vendor lock-in виглядає вже не такою переконливою.

Але я б не переоцінював простоту. Сам detector не врятує, якщо у вас поганий STT, невдалі промпти для агента, агресивний TTS buffering або невірно виставлені endpointing delays. Ми в Nahornyi AI Lab якраз на таких стиках зазвичай і розбираємо систему, тому що в продакшені ламається не один компонент, а зв'язка компонентів.

Якби я сьогодні збирав новий голосовий POC для outbound-сценарію, я б почав з LiveKit turn-detector плюс Silero VAD і нормального STT, а Pipecat прогнав би як альтернативу на своїх логах. Не тому що “так модно”, а тому що це вже схоже на інженерний фундамент, а не на шаманство з таймерами.

Коротше кажучи, ринок голосових агентів став трохи дорослішим. Якщо у вас дзвінки сипляться через незграбні перебивання або довгі паузи, можна не ворожити на налаштуваннях наосліп: давайте подивимося на весь pipeline, і в Nahornyi AI Lab я допоможу зібрати AI automation так, щоб агент нарешті розмовляв по-людськи, а не грав у зіпсований телефон.

Поділитися статтею