← Все материалы

Гайд

Пять звёзд и сто жалоб: как ИИ помогает прочитать отзывы по делу?

Как анализировать отзывы с ИИ: отделять оценки от тем, считать уникальные случаи и находить основания для изменений в Чатиуме.

Обновлено

Таблица данных, диаграмма и лупа над отличающейся ячейкой

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

В Чатиуме можно сделать кабинет отзывов с темами, исходными цитатами и ручной проверкой группировки. Оценка в звёздах остаётся отдельным признаком, а не заменяет содержание текста.

Промпт

Создай кабинет анализа отзывов. Группируй комментарии по проблемам и полезным свойствам продукта, показывая исходные примеры. Считай уникальные отзывы отдельно от упоминаний тем. Дай исправлять группы и отслеживать изменения по периодам без выдуманных выводов.

Один отзыв может одновременно хвалить и жаловаться

«Курс понравился, но не нашёл материалы после урока» — не просто положительный или отрицательный отзыв. Он содержит оценку содержания и проблему навигации. Если свести всё к одному эмоциональному ярлыку, команда потеряет полезный сигнал.

Поэтому сначала выделяйте темы и основания. Тон можно хранить рядом, но не стоит делать его главным результатом. Для продукта важнее понять, что человек не смог сделать и в каком контексте.

Пример: оценки хорошие, поиск файлов мешает

Представим учебную выборку из десяти отзывов. В четырёх упоминается поиск материалов, в трёх — качество уроков, в двух — скорость поддержки. Один отзыв может входить сразу в несколько групп, поэтому сумма упоминаний не обязана равняться числу отзывов.

Модель должна вернуть идентификаторы подтверждающих записей. Количество затем считает приложение по этим ID. Просьба «оцени процент недовольных» без явного правила легко породит число, которое выглядит точным, но непонятно как получено.

Метрика Что она означает
Уникальные отзывы Сколько отдельных записей обработано
Упоминания темы В скольких записях есть нужный смысл
Повторные отзывы автора Отдельный признак, если автора можно установить
Оценка в звёздах Данное пользователем число, а не вывод модели

Как не перепутать частоту с важностью

Редкая проблема может мешать завершить покупку, а частая жалоба на оттенок кнопки — почти не влиять на работу. После группировки добавьте последствия: блокирует действие, усложняет его или относится к предпочтению.

При этом модель не должна сама назначать экономический эффект. Если нет данных о потерянных заказах, нельзя писать, что конкретная проблема «снижает выручку на десять процентов». Можно сформулировать гипотезу и указать, какими данными её проверить.

Для сравнения периодов нужны одинаковые источники и правила отбора. Рост числа жалоб может объясняться ростом общего числа отзывов или новым каналом сбора. Поэтому показывайте абсолютные количества рядом с долями и размером выборки.

Короткий вызов Mistral в Чатиуме

В sourceText передайте обезличенные отзывы с устойчивыми ID. Пример просит модель сгруппировать смысл, а подсчёт оставляет приложению.

Это фрагмент серверного обработчика Чатиума. ctx передаёт платформа, sourceText содержит проверенный текст из формы. done и failed — заранее зарегистрированные маршруты app.function для результата и ошибки. Они проверяют, что вызов пришёл от приложения start: caller.type === 'plugin' && caller.appSlug === 'start'.

TypeScript
import { startCompletion } from '@start/sdk'

const { completionId } = await startCompletion(ctx, {
  model: 'mistralai/mistral-large-4-0',
  system: 'Сгруппируй отзывы с ID по проблемам и полезным свойствам. Для каждой темы укажи ID и подтверждающие фразы. Один отзыв может иметь несколько тем. Не придумывай количества и проценты.',
  messages: [{
    role: 'user',
    content: [{ type: 'text', text: sourceText }],
  }],
  onCompletionCompleted: done,
  onCompletionFailed: failed,
})

Метод возвращает completionId. Сам ответ приходит позже в onCompletionCompleted, ошибка — в onCompletionFailed; до этого приложение показывает ожидание. Это схема вызова, а не полный код приложения.

Встроенный помощник Чатиума создаёт загрузку данных, группы и интерфейс исправления. Когда редактор переносит отзыв в другую тему, сохраняйте изменение: это помогает уточнить определения групп и не повторять одну ошибку в следующем отчёте.

Что делать с результатом

Для каждой заметной темы подготовьте короткую карточку: проблема, несколько примеров, затронутый сценарий и следующий шаг проверки. Не нужно превращать каждую жалобу в задачу разработки. Иногда достаточно поправить инструкцию, иногда требуется исследовать поведение в интерфейсе.

После изменения продукта вернитесь к той же теме и сравните новые отзывы по прежним правилам. Даже снижение упоминаний не доказывает причинную связь само по себе, но помогает увидеть, куда смотреть дальше.

Частые вопросы

Можно ли доверять автоматическому определению тональности?

Это вспомогательная метка. Сарказм, смешанная оценка и контекст могут менять смысл. Для рабочих выводов лучше проверять конкретные темы и исходные фразы.

Почему модель не должна сама считать все проценты?

Когда есть идентификаторы записей, подсчёт надёжнее выполнять программно. Модель выделяет смысл, приложение считает по понятному правилу.

Как перейти от отзывов к плану улучшений?

Сначала уточнить проблему и затронутый сценарий, затем выбрать изменение. Этот переход разобран в анализе пользовательских пожеланий, а фактические ошибки таблицы — в очистке данных.