Проблема
inSales развивает инструменты аналитики для продавцов на маркетплейсах. Однако по мере роста аудитории команда столкнулась с одной и той же проблемой: пользователям было сложно самостоятельно находить ответы в отчетах и графиках.
Поддержка регулярно получала похожие вопросы:
Но чаще всего запрос звучал гораздо проще:
Поддержка регулярно получала похожие вопросы:
- Почему снизились продажи за последние дни?
- Какие товары лучше продавались на прошлой неделе?
- Что не так с рекламой на Ozon и Wildberries?
Но чаще всего запрос звучал гораздо проще:
«Как увеличить продажи?»
При этом сотрудники поддержки не могли выступать полноценными аналитиками для каждого клиента. Поиск причин изменений в показателях занимал много времени как у пользователей, так и у команды поддержки.
«Наш пользователь не аналитик. Он хочет быстро понять, почему падают продажи, а не изучать отчёты. Поэтому мы решили дать клиентам возможность задавать простые вопросы и сразу получать ответы, минуя интерфейс BI-системы».
Александр Кумар, PO inSales
Чтобы решить проблему, команда поставила перед собой несколько задач:
- снизить нагрузку на поддержку;
- сократить путь от вопроса до ответа;
- повысить вовлеченность пользователей;
- увеличить retention и LTV клиентов;
- сделать аналитику понятной без необходимости изучать отчеты.
Пользователям были не нужны новые графики
Перед запуском проекта команда провела исследование пользователей.
Основные комментарии звучали примерно одинаково:
Стало очевидно: пользователям нужны не отчеты, а готовые выводы.
Поэтому вместо очередного дашборда команда решила создать AI-аналитика, который сможет отвечать на вопросы на обычном языке.
Основные комментарии звучали примерно одинаково:
- «Мне не нужны все эти графики. Скажите, что сломалось и что с этим делать».
- «Хочу открыть аналитику и сразу понять: у меня всё нормально или уже горит?»
- «Открыл аналитику и закрыл. Не понимаю, куда смотреть».
Стало очевидно: пользователям нужны не отчеты, а готовые выводы.
Поэтому вместо очередного дашборда команда решила создать AI-аналитика, который сможет отвечать на вопросы на обычном языке.
Как выглядит решение
Пользователь задает вопрос в чате так же, как задавал бы его сотруднику поддержки или аналитикам.
Например:
Например:
- «Почему упали продажи за последнюю неделю?»
- «Какие товары растут быстрее всего?»
- «Что происходит с рекламой?»
- Система самостоятельно анализирует данные и формирует ответ.
Важно было не просто показать результат, но и объяснить логику его получения.
Поэтому AI-аналитик может показывать ход рассуждений и объяснять, на основе каких данных был сделан вывод.
Поэтому AI-аналитик может показывать ход рассуждений и объяснять, на основе каких данных был сделан вывод.
Почему не подошло готовое решение
Первым шагом команда протестировала open-source решение Vanna AI.
Однако результаты оказались недостаточными для использования в продукте. Точность ответов составляла около 24%, что означало большое количество ошибочных SQL-запросов и нерелевантных ответов.
Однако результаты оказались недостаточными для использования в продукте. Точность ответов составляла около 24%, что означало большое количество ошибочных SQL-запросов и нерелевантных ответов.
Для оценки качества использовались не только ручные проверки, но и набор автоматизированных метрик. Уже на раннем этапе стало понятно, что проблема заключается не в генерации текста, а в корректности SQL-запросов и понимании бизнес-контекста.
Для клиентского сервиса такой уровень качества был неприемлем.
Поэтому команда решила разработать собственное решение на базе LLM и RAG.
Поэтому команда решила разработать собственное решение на базе LLM и RAG.
Основой решения стал подход Retrieval-Augmented Generation (RAG).
Перед генерацией ответа система получает необходимый контекст из базы знаний и аналитических витрин, после чего формирует SQL-запрос и анализирует результат.
Чтобы повысить качество ответов, команда вручную подготовила датасет из 1800 пользовательских вопросов и соответствующих SQL-запросов.
Перед генерацией ответа система получает необходимый контекст из базы знаний и аналитических витрин, после чего формирует SQL-запрос и анализирует результат.
Чтобы повысить качество ответов, команда вручную подготовила датасет из 1800 пользовательских вопросов и соответствующих SQL-запросов.
Помимо самих вопросов и SQL-запросов команда сформировала domain knowledge — набор бизнес-правил, описаний метрик, справочников и терминов платформы. Это позволило модели лучше понимать контекст запросов и избегать ошибок интерпретации данных.
Вопросы повторяли реальные формулировки селлеров, а SQL-запросы проверялись экспертами платформы.
Вопросы повторяли реальные формулировки селлеров, а SQL-запросы проверялись экспертами платформы.
«Мы не просто собрали примеры — мы разметили их, стандартизировали и добились того, чтобы модель обучалась на наших типовых запросах — иначе она не понимала специфику витрины и логику наших клиентов».
Ярослав Шмулев, СTO R77 AI
После этого точность генерации SQL выросла до 94%.
Использовались следующие метрики:
- Exact Match — полное совпадение с эталонным SQL-запросом.
- Soft Accuracy — корректность понимания пользовательских формулировок, даже если они отличаются от шаблона.
- R-VES — проверка релевантности и корректности результата на уровне схемы данных.
Такие показатели позволили перейти к запуску MVP и начать тестирование с реальными пользователями.
Как это работает сейчас
Сегодня система работает по следующему сценарию:
- Пользователь задает вопрос.
- Модель формирует SQL-запрос.
- Запрос проходит проверку.
- Получаются данные из аналитических витрин.
- Пользователь получает ответ и рекомендации.
С какими сложностями столкнулись и как решали
Во время пилота команда столкнулась с несколькими типичными проблемами ML-продуктов:
Галлюцинации модели
Иногда модель формировала SQL-запросы с несуществующими таблицами или придумывала связи между данными, которых не было в системе.
Чтобы снизить количество подобных ошибок, команда внедрила многоуровневую проверку запросов: техническую валидацию SQL, контроль соответствия схеме данных и дополнительную проверку бизнес-логики перед выполнением запроса.
Нестабильность данных
Данные от маркетплейсов могли поступать с задержкой или быть частично обновленными. В таких случаях пользователь мог получить пустой результат и принять его за ошибку модели.
Для решения этой проблемы были реализованы автоматические проверки качества данных и уведомления о неполной загрузке информации. Если данные еще не готовы, система сообщает об этом пользователю и предлагает повторить запрос позже.
Доверие пользователей
Даже корректные ответы вызывали вопросы, если было непонятно, каким образом модель пришла к своим выводам.
Поэтому в интерфейс добавили пошаговое объяснение логики ответа (reasoning). Пользователь может увидеть ход рассуждений модели и понять, какие данные и факторы повлияли на итоговый вывод.
Результаты
Запуск AI-аналитика позволил значительно изменить пользовательский опыт работы с аналитикой.
Бизнес-метрики:
Бизнес-метрики:
- Retention пользователей вырос на 22%;
- LTV селлеров увеличился на 18%;
- количество обращений в поддержку сократилось на 35%;
- время получения ответа сократилось до 3–5 секунд.
Кроме количественных показателей изменилось и поведение пользователей.
Они стали чаще продолжать диалог, задавать уточняющие вопросы и использовать аналитику не только для просмотра показателей, но и для принятия решений.
Они стали чаще продолжать диалог, задавать уточняющие вопросы и использовать аналитику не только для просмотра показателей, но и для принятия решений.
Что дальше
Сейчас команда развивает следующие направления:
- автоматические алерты по ключевым показателям;
- выявление товаров с риском out-of-stock;
- персонализацию рекомендаций;
- автоматические аналитические отчеты.
С коллегами из R77.ai выполнили работы по реализации AI агента аналитика на базе LLM. Квалифицированные и ответственные исполнители – все работы были успешно сделаны в срок. Кроме того, экспертиза в области ИИ помогла усовершенствовать наш проект.
Александр Кумар
CPO inSales by Сбер