Телефонный робот, который не бесит: история о том, как мы научили ИИ говорить по-человечески 😉

Привет! Если вы читаете эту статью, то вас, скорее всего, как и меня, дико бесят телефонные роботы. Ну, знаете, эти монотонные голоса, которые звонят в самый неподходящий момент и тупят после любого нестандартного ответа. «Для соединения с оператором скажите ДА». А ты ему: «Что?», а он в ответ опять свою шарманку.

Так вот, я по работе как раз занимаюсь тем, чтобы такие роботы становились умнее. И сегодня хочу без лишнего пафоса поделиться одним реальным кейсом. Это история о том, как мы взяли «тупого терминатора» и превратили его в почти неотличимого от человека собеседника.

case1

С чего все началось? Боль клиента, знакомая многим

Приходит к нам как-то компания из сферы телекома. Их бизнес — это колл-центры и обзвоны, то есть звонки для них — это хлеб. И у них, конечно, были роботы. Но это была, как говорится, боль и страдание.

Представьте себе картину:

  • Чтобы запустить нового робота, уходила целая неделя! Пока программисты напишут код, пока протестируют... бизнес-задача уже сто раз успевала измениться.
  • Люди просто бросали трубку. Роботы говорили неестественно, не понимали половины ответов, и конверсия, то есть реальная польза от этих звонков, была где-то на уровне плинтуса.
  • Серверы трещали по швам. Старая система жрала ресурсы как не в себя. Хочешь звонить больше — покупай еще «железо». А это деньги, и немалые.
  • Поддержка превратилась в ад. Система была собрана из кучи разных технологий, и чтобы в ней что-то починить или доработать, нужна была целая команда «узких» спецов. В общем, дорого и неудобно.

Задача перед нами стояла простая и одновременно сложная: сделать так, чтобы робот перестал быть тупым, дорогим и медленным. Чтобы он говорил как человек, а запускать его можно было бы за несколько минут.

Наш подход: не строить комбайн, а сделать «LEGO для роботов»

Главная ошибка, которую многие совершают, — это попытка построить одного гигантского, универсального робота-монстра. Он получается сложным, неповоротливым и дорогим. Мы пошли по другому пути.

Я всегда говорю: зачем строить один сложный механизм, если можно сделать фабрику по производству простых деталек? Мы решили создать не робота, а платформу-конструктор. Эдакое LEGO, из которого менеджер без помощи программистов мог бы сам, как из кубиков, собирать нужных ему голосовых помощников.

И вот из каких «кубиков» мы собрали наш конструктор:

  • Микросервисы (или «не клади все яйца в одну корзину»). Вместо того чтобы писать одну огромную программу, мы разбили ее на кучу маленьких и независимых сервисов. Один отвечает за распознавание речи, другой — за ее синтез, третий — за логику диалога. Это как автомастерская, где есть отдельный спец по моторам, по электрике и по ходовой. Если что-то одно сломалось, вся машина не встает колом. Надежно и удобно.
  • Умный ИИ + четкий сценарий. Тут мы немного схитрили. Гоняться за модным «генеративным ИИ», который сам придумывает, что сказать, — это дорого и не всегда предсказуемо. Поэтому мы сделали гибрид.
    • Умная часть (ИИ) отвечает за то, чтобы речь робота звучала живо, с правильными интонациями, и чтобы он понимал, что ему отвечают люди.
    • Четкая часть (алгоритм) ведет робота по заранее продуманному сценарию, как по рельсам.
    • В итоге получили робота, который и болтает как человек, и от цели разговора не отклоняется.
  • No-code, или «программисты больше не нужны» (почти). Самое главное, на мой взгляд. Мы сделали простой визуальный редактор. Теперь, чтобы создать новый сценарий обзвона, не нужно писать код. Менеджер просто заходит в систему, мышкой перетаскивает блоки, пишет тексты, и — вуаля! — через полчаса новый робот готов звонить.
  • Все на одном языке (JavaScript). Часто бывает, что одна часть системы написана на одном языке, другая — на третьем. Это тот самый «зоопарк технологий». Мы сделали все на одном, популярном языке. Для клиента это огромный плюс: его штатные ребята могут спокойно во всем разобраться и поддерживать систему сами.

А что в итоге? Цифры говорят сами за себя

Когда мы все это внедрили, результаты превзошли все ожидания. Я не буду утомлять вас графиками, просто посмотрите на эти цифры:

  • Роботы теперь делают 50 миллионов (!!!) звонков в месяц.
  • На одном и том же сервере теперь уживаются 400 одновременных разговоров вместо 70, как было раньше.
  • Запуск нового робота — 30 минут. Сравните с 7 днями, которые были до этого.
  • Конверсия в заявки от клиентов выросла в полтора раза. Роботы стали приносить реальные деньги.
  • И самое крутое: 95–98% людей даже не поняли, что разговаривали с машиной!

Ну и вишенка на торте: расходы на поддержку и разработку упали, потому что теперь многое делается без программистов, а новые серверы можно поднять за 20 минут, а не за два дня.

Так в чем мораль сей басни?

Этот кейс отлично показывает одну простую вещь: в технологиях часто побеждает не тот, кто использует самую навороченную «фичу», а тот, кто строит простую и гибкую систему. Наш клиент получил крутой результат не потому, что мы сделали «супер-робота», а потому, что мы дали ему удобный инструмент — тот самый «конструктор».

Так что в следующий раз, когда вам предложат какое-то «инновационное IT-решение», спросите себя: «Мне пытаются продать одну сложную штуковину или удобный набор инструментов, с которым я смогу работать сам?». Ответ на этот вопрос, как правило, все расставляет по своим местам.