Супер-простой анализ отзывов с помощью GPT
Для менеджера по продукту отзывы пользователей – это бесценный источник знаний о проблемах, запросах, пожеланиях и юзкейсах аудитории. Но есть нюанс: анализировать текстовые отзывы вручную тяжело, поэтому команды часто их игнорируют целиком или анализируют отзывы редко и несистемно.
Мы решили упорядочить анализ и систематизацию отзывов пользователей с помощью GPT. В итоге получился полностью автоматизированный дашборд, который обновляется каждый день и приносит много пользы и инсайтов.
В статье мы затронем следующие вопросы:
- на что обращать внимание при анализе отзывов и как структурировать сам отчет;
- как подготовить данные для автоматического анализа;
- как организовать регулярную обработку отзывов с помощью GPT.
Для реализации будем использовать следующие технологии:
- OpenAI API;
- AI-оркестратор, с помощью которого можно выстраивать логику запросов к GPT (мы используем наш внутренний инструмент, но подойдет любой – Langflow, n8n и др);
- ETL, с помощью которого мы извлекаем отзывы из хранилища данных, обрабатываем их и помещаем обратно.
Сначала расскажем как выглядит наш дашборд по отзывам, а потом – как мы его сделали.
1. Как выглядит наш дашборд по пользовательскому фидбеку
Мы хотели сделать лаконичный дашборд, на который можно зайти, проскроллить одну страничку и быстро получить срез текущих настроений пользователей. А если что-то заинтересовало, “провалиться” вглубь и почитать тексты конкретных отзывов.
Дашборд обновляется ежедневно и автоматически.
Вот какую информацию мы выводим.
Общие метрики
NPS
Нам нравится, когда есть одна общая метрика, на которую удобно быстро посмотреть.
Для работы с фидбеком обычно используется метрика NPS (Net Promoter Score). Она рассчитывается на основе ответа на вопрос: "Насколько вероятно, что вы порекомендуете наш продукт/услугу друзьям или коллегам?", где респонденты ставят оценку от 0 до 10.
При расчете NPS используется такое упрощение:
- Оценки 9-10 → Промоутеры
- Оценки 7-8 → Нейтралы
- Оценки 0-6 → Критики
Дальше NPS рассчитывается по стандартной формуле
NPS= %Промоутеров − %Критиков
Численная оценка есть не всегда, но NPS все равно можно попробовать оценить на основе текстовых отзывов, используя Sentiment Analysis (анализ тональности).
С помощью GPT мы оценили тональность отзыва: положительный (промоутеры) / нейтральный / негативный (критики) – и получили возможность рассчитать NPS по всем отзывам.
Получилось удобно.
Категории отзывов
Категории отзывов мы продумали до начала автоматизации. Это полу-ручной процесс.
Сначала мы собрали фидбек бизнес-пользователей: выяснили, какие темы их больше всего интересуют в отзывах. А затем показали существующие отзывы GPT и попросить предложить категоризацию.
На основании бизнес-запроса и базового анализа с помощью GPT, собрали список основных категорий пользовательского фидбека.
У нас получилось так:
- General Satisfaction – общий отзыв про удовлетворенность продуктом
- Website – фидбек про работу сайта
- Quality – фидбек про качество сервиса
- Brand – отзывы, которые относятся к бренду целиком, а не к конкретным продуктам
- Product use – отзывы про использование продуктов, без упоминания конкретных продуктов
- Products – отзывы по конкретным продуктам.
Удобно, когда категорий верхнего уровня получается 7 +/- 2.
Распределение положительных, нейтральных и отрицательных отзывов по категориям
Итак, для каждого отзыва мы знаем категорию и тональность, и мы можем построить первый интересный отчет.
Видно, что хотя пользователи в целом довольны продуктом и сервисом, к работе сайта есть вопросы.
Динамика отзывов по категории каждый месяц
На основании того же набора данных можно построить динамику по категориям отзывов по месяцам. Видно, что в ноябре сильно выросло количество фидбека про работу сайта, интересно, что произошло?
Метрики по конкретной категории
Динамика положительных, отрицательных и нейтральных отзывов по категории
Для каждой из наших категорий отзывов мы построили динамику положительных, отрицательных и нейтральных отзывов.
Ого, что-то случилось в ноябре – мы видим пик отрицательных отзывов по сайту. Что не нравится пользователям?
Основные темы
Для того, чтобы отслеживать типичные мотивы в фидбеке пользователей, для каждой категории отзывов выделим основные темы.
Теперь выгружаем все отзывы по категории Website, загружаем их в GPT и просим проанализировать и найти основные темы.
Смотрим на ответ GPT, редактируем и фиксируем конкретный список типичных тем для каждой категории.
Наш анализ принес тему “Issues with the New Site” с самым большим количеством негативных комментариев, очень интересно!
Динамика отзывов по темам по месяцам
Теперь мы знаем, что произошло. В ноябре был релиз новой версии сайта, и люди стали массово писать о проблемах!
Этот отчет помогает нам отслеживать, как меняется динамика отзывов с конкретной темой по месяцам: например, растет или падает количество отзывов с темой Issues with the New Site.
Автоматическая сводка по всем отзывам за неделю
Итак, мы поняли, что обновление сайта людям не очень понравилось. Но в чем конкретно дело?
Мы можем собрать все отзывы категории Website за неделю и попросить GPT подготовить краткую сводку. Эти сводки будем автоматически готовить раз в неделю и сохранять в базу, чтобы вывести на дашборд.
На мой взгляд, виджет с автоматической сводкой – это самый полезный виджет на нашем дашборде, потому что позволяет не только посмотреть на цифры, но и прочитать executive summary того, что пользователи писали в течение недели. Как будто ваш стажер наконец подготовил внятный отчет.
Также оставим возможность посмотреть исходный текст отзывов. Для этого все отзывы переведем на один язык (в нашем случае – на английский).
2. Как это работает
Формат данных
Все наши отчеты мы строим по данным такого формата:
Что делает GPT
Для того, чтобы получить значения review_text_translated, sentiment, category, topic и summary воспользуемся помощью GPT.
Для этого нам понадобится несколько промптов:
- промпт для перевода текста;
- промпт для выявления тональности;
- промпт для выявления категории;
- промпт для выявления тематики отзыва по каждой категории.
(Можно попробовать получить все ответы одним промптом, но это добавляет ошибок).
Также нам понадобится промпт, который делает summary из текстов отзывов за неделю.
AI-оркестратор
Для того, чтобы собрать пайплайн обработки одного отзыва с помощью GPT мы воспользовались AI-оркестратором – сервисом, который позволяет в визуальном интерфейсе собрать и протестировать цепочку промптов. Мы использовали внутренний инструмент, но можно было бы воспользоваться n8n или Langflow.
AI-оркестратор позволяет настроить логику обработки текстов в визуальном интерфейсе без программирования и реализует API-endpoint, к которому можно обратиться программно.
Автоматизация
AI-оркестратор работает как API. С помощью Python мы:
- подаем на вход отзыв;
- получаем всю мета-информацию по отзыву;
- записываем эту информацию в базу данных.
Скрипт запускается ежедневно для обработки новых отзывов.
Готово.
Результаты
Благодаря такой визуализации:
- Выявляем основные проблемы, с которыми сталкиваются пользователи, и фокусируем усилия на их решении.
- Реагируем оперативно на обратную связь пользователей.
- Связываемся с недовольными пользователями, чтобы устранить их проблемы.
- С отзывами могут работать пользователи из разных команд и направлений - для них это удобный инструмент отслеживания только своего домена по выделенной категории (например, продуктовый каталог или техническая поддержка).
Заключение
Анализ фидбека – это возможность реально улучшить продукт. С автоматизацией всё становится быстрее, проще и понятнее.
Если вы сталкиваетесь с трудностями в обработке отзывов, возможно, наш подход поможет вам сделать процесс более эффективным и сфокусированным на реальных потребностях ваших клиентов.
За идею и реализацию спасибо Евгении Новосилецкой, аналитику агентства Эпоха Восемь.