Голосовий агент, якого ми збиралися випускати, постійно перебивав слухачів, через що рівень переривань сягав 18 %, і нам довелося переписувати логіку завершення репліки всього за десять днів до запуску. Додавши перевірку граматики та виявлення back-channel сигналів до правила тайм-ауту тиші, ми знизили кількість переривань до 3 % і позбулися довгих пауз, через які система здавалася нечуйною.

Чому одного тайм-ауту тиші було недостатньо

Наш початковий дизайн вважав будь-яку паузу тривалістю 700 мс сигналом того, що користувач закінчив говорити. У контрольованому демо — коли один спікер вимовляє повні речення в тихій кімнаті — це правило працює добре. Проте реальні співрозмовники роблять паузи, щоб подумати, розбивають числа на групи та вставляють «ага» або «угу», щоб показати, що вони слухають. Агент інтерпретував кожну таку паузу як завершення репліки.

Аналіз 312 робочих дзвінків виявив дві проблеми. По-перше, агент втручався в розмову, поки спікер ще формулював наступну фразу, що зіпсувало 18 % реплік. По-друге, коли ми збільшили тайм-аут до 1500 мс, щоб зупинити переривання, система стала повільною і почала «зависати» на шумних лініях. Фоновий шум постійно скидав лічильник тиші, тому агент так і не розумів, що користувач закінчив говорити.

Три сигнали замість одного числа

Ми відмовилися від фіксованого тайм-ауту і побудували невеликий state machine, який відстежує три сигнали:

  • Тривалість тиші – як довго користувач мовчить.
  • Граматика – чи закінчується транскрипт повною синтаксичною одиницею, чи це незавершене слово, наприклад, «що» або «і»?
  • Виявлення back-channel сигналів – чи був останній звук повноцінною реплікою (наприклад, відповіддю), чи коротким підтвердженням на кшталт «так»?

За допомогою цих сигналів ми визначили два бюджети тиші:

  1. Завершений транскрипт – коли розпарсений текст виглядає завершеним, ми застосовуємо короткий тайм-аут 550 мс. Агент залишається швидким і відповідає оперативно.
  2. Незавершений транскрипт – коли останній токен свідчить про те, що користувач перебуває посеред речення, ми збільшуємо тайм-аут до 1300 мс, даючи спікеру можливість продовжити.

Два додаткові механізми захисту запобігають помилковим перериванням:

  • Мінімальна тривалість мовлення – коротке «угу» не вважається повноцінною реплікою, тому агент чекає на довшу висловку, перш ніж прийняти рішення.
  • Жорстке обмеження (hard cap) – незалежно від фонового шуму, максимальний ліміт тиші змушує агента відповісти через розумний проміжок часу, уникаючи нескінченних зависань.

Результати та що це означає для Voice AI

Після впровадження системи з трьох сигналів рівень переривань впав з 18 % до 3 %. Співрозмовники більше не чули, як агент перебиває їх, а попередня проблема «мертвої тиші» зникла. Агент став одночасно чуйним і ввічливим, що відповідає тому, як люди керують черговістю реплік у розмові.

Для розробників голосових помічників урок очевидний: одна константа у конфігураційному файлі не може врахувати нюанси усного спілкування. Легкий state machine, який оцінює тривалість тиші, граматичну завершеність і back-channel сигнали, може значно покращити точність черговості реплік без значного збільшення обчислювального навантаження.

Потенційні недоліки та відкриті питання

Додавання граматичного парсингу та класифікації back-channel сигналів збільшує кількість етапів обробки. Команди мають переконатися, що додаткова затримка (latency) не нівелює переваги у плавності розмови. Підхід також залежить від відносно точного транскрипту; у шумних середовищах або при мовленні з акцентом граматичні сигнали можуть працювати некоректно, що змушуватиме систему переходити на довші тайм-аути.

Майбутня робота може бути спрямована на дослідження адаптивних порогів тайм-ауту, які навчаються на звичках окремих користувачів, або на інтеграцію просодичних ознак (висота голосу, енергія) для посилення детектора back-channel сигналів. Моніторинг того, як ці вдосконалення впливають на ключові метрики — задоволеність клієнтів, час завершення дзвінка та рівень помилок — буде критично важливим перед масштабуванням цієї методики на великі контакт-центри.

Висновок: Розгляд завершення репліки як рішення на основі декількох сигналів, а не просто за таймером тиші, зменшує кількість помилок переривання на порядок і відновлює природний потік розмови, якого очікують користувачі від голосових агентів.