Как КВИНТ победил умные автоответчки, эволюция решений и что будет дальше
Последний год во Вселенной голосовых коммуникаций развернулась нешуточная битва между разработчиками роботов и поставщиками на рынок умных автоответчиков. Наша задача – дозвониться до абонента и обеспечить Клиенту максиально возможный уровень дозвона и конверсии. Оппоненты же идут на всяческие ухищрения, чтобы у нас не получилось этого добиться. Давайте разберемся в масштабе проблемы, и как нам удается оказывать верх в этом негласном соревновании.
Почему важна дозваниваемость?
Если долгое время среди запросов клиентов были максимально натуральные роботы, не отличимые от человека и способные долгое время поддерживать живой диалог и не выдавать себя, то в последнее время мы все чаще слышим от заказчиков: “Голос, отработки и ответы вторичны. Главное, чтобы робот просто дозвонился и смог передать важную информацию.”
Большинство наших клиентов – это крупные банки, ритейл, телекоммуникационные компании, для которых мы совершаем сотни тысяч или миллионы звонков в месяц. Доля автоответчиков среди них может доходить до 50% в банках и 95% в базах коллекторских компаний. И если мы их не распознаем и не завершим вызов – Клиент может заплатить до 1.5 миллионов рублей за звонки с гарантированным нулевым результатом. Поэтому вопрос повышения дозваниваемости в нашем бизнесе стоит очень остро.
Методы распознавания
С помощью EM модели
Определение по Early Media (EM) потоку у нас появилось еще в 2020. Этот метод позволяет отсечь те автоответчики, которые проигрываются на этапе дозвона. Модель распознает речь до поднятия трубки и сразу же отклоняет вызов.
Звучит просто, но есть и сложности, ведь у некоторых абонентов вместо гудков может стоять музыка, и не просто мелодия, а исполнение с вокалом. Поэтому важно уметь отличать разговорную речь от песни, не срабатывать на гудки и продолжать набор номера.
Вторая сложность – это ограничение вычислительной мощности, потребляемой моделью. Каждую секунду наши роботы совершают десятки тысяч звонков и все аудиопотоки попадают в модель в режиме реального времени. Но за несколько лет использования этого метода мощности удалось уменьшить и выстроить архитектуру так, чтобы EM модель определяла автоответчики за 1 секунду.
По голосу
С развитием роботов автоответчики тоже прокачались, и появились так называемые умные ИИ автоответчики. Они тоже имитируют живую речь, их голос и манера речи не отличима от человеческой, а задача – максимально долго забалтывать собеседника. Наиболее эффективный способ определять их – по голосу.
Как это работает? По сути у нас стоит классическая задача машинного обучения – верификация диктора (Speaker Verification). Мы сравниваем голос собеседника с образцом из базы данных, где храним примеры голосов автоответчиков. Чтобы это сделать, нам нужно оцифровать каждый голос через модель построения эмбеддингов. Затем мы смотрим, насколько получившийся код похож на данные из нашей базы. Если разница между ними меньше порогового значения, становится понятно, что это один и тот же голос, и модель определяет его, как автоответчик.
Эту технологию распознавания мы внедрили еще в 2022 году. Тогда для сопоставления с примером из базы нам нужно было 3 секунды речи собеседника, и иногда одной фразы было недостаточно. Роботу приходилось какое-то время поддерживать диалог до накопления достаточной по длительности аудиодорожки речи абонента. Затем эти фразы склеивались и отправлялись на модель.
Со временем создатели автоответчиков стали хитрить и менять голоса в начале разговора. Чтобы не попасться на эту уловку, мы решили проверять голос не один раз, а несколько. Мы берем не только первые 3 секунды разговора, но и еще несколько кусочков речи с разными промежутками времени.
Сейчас КВИНТ заканчивает тестирование новой модели, которая сможет распознавать автоответчики даже по одной, совсем короткой фразе. Во многом здесь помогает большая накопленная база образцов голосов автоответчиков и последние разработки в области идентификации дикторов.
По NLU и LLM моделям
Еще один рабочий метод – определение по ключевым фразам. Автоответчики в большинстве своем не слишком оригинальны и используют типовые реплики для поддержания диалога. Их фиксируют NLU и LLM модели и также помогают выявить автоответчик в общей массе диалогов.
По аномалиям в диалогах
Если вдруг автоответчик не распознался с помощью других методов, в игру вступает контроль качества и поиск аномалии в диалогах, которые вылавливает наша платформа.
Автоответчик всегда можно определить по косвенным признакам, например, по большой длительности диалога по сравнению с рассчетными показателями. Допустим, мы звоним с предложеним кредитной карты по лучшим условиям. Абонент должен поздороваться, прослушать презентацию и возможно задать один-два вопроса роботу. Рассчетная длительность такого диалога – около 45 секунд. Если собеседник очень любопытный – минуты полторы. Когда при таких вводных данных в нашей системе появляется диалог длительностью в две, три и более минут – платформа сочтет его подозрительным и отправит уведомление отделу контроля качества.
Другой характерный признак – зацикливания. Задача автоответчика – заболтать собеседника и не дать ему прорваться к человеку. Но робот, даже очень умный, не может иметь тысячу отработок в своем арсенале, а потому будет гонять нашего робота по одним и тем же фразам. Тогда наш робот несколько раз будет отвечать на один и те же вопрос или часто переходить по дефолтной ветке, когда не может найти релевантный ответ. Такие звонки тоже попадают в отдел контроля качества.
Система распознаваня КВИНТ
Наше самое большое преимущество в этой битве – системный подход. Архитектура выстроена таким образом, что мы используе все перечисленные методы распознавания автоответчиков и вот как это работает:
- На первом этапе по EM потоку отсекаем 5-10% автоответчиков, которые проигрываются во время гудков.
- Затем после поднятия трубки сравниваем голос абонента с базой. После запуска новой модели достаточно одной, даже короткой фразы, и мы можем распознать автоответчик за 1-2 секунды. Здесь определяем уже около 70% всех автоответчиков.
- После этого прогоняем первые 5 секунд речи абонента через NLU или LLM модель, тем самым определяя около 96% вражеских засланцев.
- Если на первых трех этапах платформе ничего не кажется подозрительным – завершаем диалог и итоговую аудиозапись пропускаем через систему контроля качества и поиска аномалий в звонках. Если система нашла подозрительные диалоги – отдел мониторинга прослушивает их вручную. Финально мы определяем 98-99% автоответчиков.
Все образцы автоответчиков, которые были обнаружены, попадают в нашу базу, которую мы используем для всех клиентов. А поскольку клиентов у нас много и звонят они тоже много – вероятность обнаружить автоответчики и распознать их в будущих звонках уже на этапе голоса кратно растет.
Что будет дальше?
На последних июньских тестах процент распознавания автоответчиков для одного из банков был 99.4%. То есть мы можем определить почти все, кроме самых новых решений. А они незбежно появятся и скорее рано, чем поздно попадут в нашу базу. Вопрос заключается в скорости определения.
Клиенты за разговоры с автоответчиком не платят, поэтому им так важно, чтобы мы могли определить их все. Но мы платим за телефонию диалогов робота с роботом. Так что, чем больше мы сможем определить по одной фразе по голосу, тем больше ресурсов компании мы экономим. Новая модель должна определять по голосу уже около 85% диалогов, но результаты тестов получим не раньше конца лета. Скрестим пальчики!
Хотите поработать с нами и быть уверенными, что уровень дозвона будет максмально возможным? Оставляйте заявку на сайте kvint.io