
Привет!Меня зовут Екатерина Морозова и я менеджер продукта “Спортивный помощник”. В этой статье я расскажу, как работает наш чат-бот и как мы подняли процент закрытия чатов ботом до более, чем 80%.
Все говорят LLM, а я скажу NLU. А может ли бот без LLM обеспечить высокий процент автоматизации? Да, но…
Путь Спортивного помощника начался в далеком 2022 году. О генеративных моделях тогда было мало известно, и мы стояли перед выбором решения для автоматизации обработки вопросов клиентов в службу поддержки. Кнопочные боты показывали низкую эффективность, поэтому выбор был очевиден - использовать технологии распознавания естественного языка (NLU - Natural-language understanding) для определения намерения клиента.
Что мы сделали?
Мы написали полностью собственное решение (авторство SM Lab), включающее в себя: виджет чата, конструктор сценариев диалога, модуль распознавания намерения (NLU-модуль). NLU-модуль реализован на базе открытых моделей, но дообучен под нашу специфику - работу с обращениями клиентов. Таким решением мы обеспечили себе независимость от подрядчиков, сохранность данных и полное управление развитием продукта.

Для чего нужен «Спортивный помощник»?
«Спортивный помощник» разработан, чтобы помогать нашим клиентам: отвечать на их вопросы или решать возникшие проблемы. Например, он может проконсультировать по применению бонусов или промокода, уточнить статус или продлить хранение заказа, проинформировать об условиях возврата и многое другое.
Используя собственное решение, мы можем оперативно обращаться за необходимыми данными по клиенту в внутренние системы Спортмастера и всегда быстро получать актуальную информацию.
Безусловный плюс такого помощника — возможность круглосуточной поддержки, причем в привычном всем нам теперь текстовом формате взаимодействия.
Мы стараемся использовать все возможные каналы связи для удобства наших клиентов: подключили помощника на сайт компании, в мобильное приложение и в официальную группу Спортмастера во ВКонтакте.

Почему NLU, а не нейросети?
В 22 году мы приступили к активной фазе наполнения навыков нашего чат-бота, чтобы решать вопросы клиентов без привлечения оператора клиентского сервиса.
Мы создаем разветвленные сценарии, в определенных точках которых обращаемся во внутренние системы для получения персонализированной информации по клиентам и товарам. К текущему моменту накопили обширную базу тематик: распознаём и обрабатываем более 430 различных тематик от клиентов, а автоматизация составляет 81% (на начало 2025 года).
NLU обеспечивает высокую точность и скорость: среднее время ответа 0,2 секунды, а доля уверенности в присвоении тематики запросу, написанному клиентом, в среднем 0,94 (из возможных 1,0).
В отличие от LLM — NLU не требует сложных вычислений для генерации ответов, что экономит ресурсы.
Главное в нашем подходе — предсказуемость и точность ответов. Мы не сталкиваемся с «галлюцинациями» модели, потому что заранее знаем, какой объем информации отдаст бот в каждой ситуации. Это позволяет нам быть уверенными в корректности и качестве консультации.
Что происходит внутри?
Напишем в чат «Где мой заказ?»
В виджете Спортивного помощника мы получаем фразу, отправленную пользователем, за это в ответе разные пользовательские интерфейсы, т.е. мобильное приложение, сайт или ВК
Виджет перенаправляет полученную от клиента информацию в оркестратор, он играет роль маршрутизатора
Оркестратор понимает, что к нему пришло входящее сообщение и отправляет его в NLU-модуль
NLU-модуль распознает тематику запроса, сравнив фразу со всеми имеющимися у него в дата-сете
NLU-модуль передает тематику и выделенные из сообщения сущности в оркестратор
Оркестратор перенаправляет информацию в Конструктор сценариев
-
Конструктор, следуя предзаданной логике сценария тематики, отрабатывает ветки по разным проверкам, например, проверяет авторизован ли клиент и активен ли его заказ
Для этого он отправляет запрос по клиенту/заказу в смежные системы и получает ответ
Далее, исходя из сценария и проверок, Конструктор сценариев отправляет соответствующий ответ в Оркестратор
Оркестратор понимает, что он получил исходящее сообщение и направляет его по нужному “адресу”
Виджет отображает информацию клиенту.
Так клиент в чате получает ответ от бота, соответствующий его запросу. И все это происходит менее, чем за 1 секунду.
Что еще есть в боте?
Мы внедрили такие функции, как
голосовой ввод: чтобы было удобно наговаривать сообщения, это помогает выговориться и спустить пар тем, кто попал в неприятную ситуацию и хочет оформить жалобу,
картинки в ответах бота: большей частью для того, чтобы помогать клиентам ориентироваться в приложении,
предиктивные способности: так как мы знаем частоту обращения по тому или иному вопросу, то мы можем предположить, что именно дальше спросит клиент и предлагаем выбрать наиболее вероятные варианты на кнопках вместо того, чтобы клиент сам набирал текст; при входе в чат мы проверяем у клиентов наличие активных заказов и бонусов, чтобы предусмотреть в приветственном сообщении эту информацию,
оценка бота: чтобы оценивать качество ответов бота и удовлетворенность клиентов.
Конечно, мы проводим и ручную валидацию качества диалогов клиентов по разным тематикам и обращениям. Мы обращаем особое внимание на фразы с низким распознаванием тематик и оценками от 1 до 3 звезд. Но и не забываем делиться друг с другом успешными кейсами закрытия болей” наших клиентов и радуемся тому, как наш продукт вырос за это время.
Сейчас мы имеем следующие значения автоматизации диалогов в чате:

4% сразу уходят к оператору,
15% мы уводим к оператору по сценарию, потому что знаем, что сами не можем решить вопрос, но при этом предварительно уточняем у клиента детали, необходимые оператору для ускорения предоставления ответа,
81% диалогов бот закрывает самостоятельно.
Планируем ли мы все-таки использовать LLM в чат-боте?
Да, но точечно, в случаях когда:
невозможно заранее описать все варианты диалога — например, при консультациях по ассортименту товаров;
нужно проанализировать больше информации о клиенте и порассуждать перед формулировкой ответа.
Сейчас мы развиваем чат-бота в сторону гибридной модели: сценарные блоки отвечают за стабильность и точность, а генеративный ИИ — за адаптивность и персонализацию. О результатах такого подхода обязательно поделимся в следующих статьях.