Искусственный интеллект перестал быть чем-то недостижимым. Сегодня даже небольшой интернет-магазин может использовать высокие технологии для автоматизации рутинных процессов, увеличения продаж, экономии времени и финансов.
В этой статье рассказываю про основы создания виртуального ассистента и эффект от внедрения в работу небольшого интернет-магазина электротоваров без затрат. Используем общедоступный бесплатный инструмент "Rasa".
[Мой TG-канал]
Прежде, чем перейти к действиям, для понимания ситуации опишем проблему, которая может возникнуть в вашем интернет-магазине. В службу поддержки поступает большое количество однотипных вопросов, касательно товаров и их характеристик. Это создает дополнительную нагрузку на специалистов (или лично на вас, если магазин небольшой), а также есть вероятность, что к вам обратится клиент, не разбирающийся в том, чем вы торгуете.
Долгое ожидание ответов или недостаток времени а еще, возможно, и желания у покупателя для изучения вопросов приводит к тому, что пользователь закрывает ваш сайт, и потенциальный клиент уходит.
Для повышения коэффициента конверсии (процент покупателей от общего числа посетителей интернет-магазина) необходимо сократить время ответов, попутно предлагая посетителю сайта товары, которые есть в наличии.
Решение задачи - в создании виртуального ассистента (ИИ чат-бота), который мог бы ответить на вопросы клиента, а также понять его проблему и предоставить список нужных товаров.
Переходим к делу.
Создание виртуального ассистента
Для создания чат-бота был выбран ИИ-инструмент "Rasa", который можно интегрировать с базой товаров и динамическими рекомендациями. После обучения он сможет:
- Отвечать на вопросы о наличии товаров
- Предлагать похожие товары
- Динамически искать товары в базе
- Давать консультации
Шаг 1. Установка на ПК.
Для обучения виртуального ассистента необходим Python 3.10 и новее, а также потребуется установить дистрибутив rasa через командную строку:
pip install rasa
Создаем директорию проекта. В этой папке формируем окружение rasa и обучается ассистент с базовым примером
rasa init --no-prompt
Шаг 2. Настройка интентов (файл data/nlu.yml).
Интент (intent) в Rasa — это намерение пользователя, выраженное в его сообщении. Например, пользователь может выразить интент «забронировать билет», «спросить прогноз погоды» или «приветствовать». Интенты помогают ассистенту определить, чего хочет достичь пользователь.
В Rasa классификация "намерений" реализуется с помощью модуля Natural Language Understanding. Он анализирует сообщение пользователя и классифицирует его на одно из предопределённых интентов.
Чтобы модель Rasa понимала, какой именно товар ищет пользователь, используется выделение сущностей []. Для формирования пула интентов необходимо отредактировать файл data/nlu.yml следующим образом
version: "3.1"
nlu:
- intent: greet
examples: |
- Привет
- Здравствуйте
- Добрый день
- intent: ask_product
examples: |
- Есть ли [светодиодная лампа 12W](product)?
- Хочу купить [удлинитель](product)
- Какие [генераторы](product) есть в наличии?
…
Шаг 3. Настройка ответов (файл domain.yml).
В нем перечисляются все интенты, ответы на часто задаваемые вопросы (раздел responses), действия, которые мы предусматриваем для виртуального ассистента (раздел actions), и конфиги сессии (раздел session_config).
version: "3.1"
intents:
- greet
- ask_product
.....
responses:
utter_greet:
- text: "Привет! Я ваш помощник по электротоварам.
Чем могу помочь?"
.....
utter_ask_delivery:
- text: "Доставка по городу бесплатная при заказе от 2000 руб.
Доставка в регионы рассчитывается индивидуально."
.....
actions:
class ActionSearchProduct(Action):
class ActionConsult(Action):
.....
session_config:
session_expiration_time: 60
carry_over_slots_to_new_session: true
Шаг 4. Создание пользовательского действия для поиска товаров
(файл actions/actions.py).
В этом python-скрипте описываются все действия виртуального ассистента.
У нас их два:
1. Поиск товаров по базе. Выдача рекомендации, если точных совпадений не найдено.
2. Запуск языковой модели для консультации. В рамках данного проекта использовалась общедоступная LLM Qwen3.
Шаг 5. Настройка правил (data/rules.yml).
В файле rules.yml прописываются те правила, по которым программа понимает, что нужно запускать действие, настроенное на предыдущем шаге.
version: "3.1"
rules:
- rule: Приветствие
steps:
- intent: greet
- action: utter_greet
…
Шаг 6. Обучение модели.
Запускаем обучение ассистента командой:
rasa train
Процесс выглядит следующим образом. Модель сохраняется в папку models.
Шаг 7. Запуск действий и сервера
В одной консоли запускаем actions: rasa run actions
В другой консоли запускаем сервер "Rasa": rasa shell --endpoints emdpoints.yml
Шаг 8. Тестирование.
Далее приведены диалоги-результаты, где ассистент выполняет поиск по базе товаров и предлагает похожие. Это все возможно оптимизировать и придать необходимую обертку для внедрения на сайт интернет-магазина.
Конечно, в созданной модели есть и недостатки. Например:
1. Обращение к ассистенту может выходить за рамки тематики интернет-магазина, поскольку идут запросы к языковой модели.
2. Подобный ИИ-ассистент пока не может положить товары в корзину.
В заключение хочу отметить, что фреймворк Rasa имеет много настроек и позволяет создать эффективного ассистента, обрабатывающего запросы клиентов.
Несмотря на некоторую "прямолинейность" данного проекта, положительный эффект от внедрения очевиден! Мы замерили среднюю конверсию за месяц до и после внедрения в интернет-магазин такого ассистента. Результат на рисунке:
Спасибо, за прочтение!
Ставьте лайк, если понравилось
Задавайте вопросы в комментариях - буду рада любой обратной связи!
Хочешь разбор без занудства — загляни на кофе в мой TG-канал ☕️
#coffee_PHD #AI #ИИ #бизнес-процессы #Rasa #python