К содержимому

ИИ-аналитика · MAX

Анализ отзывов, звонков и переписок с ИИ: как превратить текст в таблицу и проверить точность

· 15 мин чтения · Редакция ultrathink

Анализ отзывов с помощью ИИ — это превращение свободного текста в структурированную таблицу: тема обращения, тональность, продукт, причина недовольства. Языковая модель делает это быстро и в больших объёмах, но результат имеет смысл только тогда, когда категории заранее определены, ответ модели проверяется кодом, а точность замерена на размеченной вручную выборке. Ниже — полный процесс: от бизнес-вопроса до регулярного отчёта, с типичными ошибками и способами их поймать.

Что такое анализ текстов с ИИ и какие задачи он решает

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

На практике под «анализом текстов» скрываются несколько разных задач. Их полезно различать с самого начала, потому что у каждой своя проверка качества.

Классификация

Классификация — отнести текст к одной или нескольким категориям из заранее заданного списка: тема обращения, тональность, намерение клиента, срочность. Результат — метка из справочника, которую легко считать и сравнивать. Это основа почти любого отчёта по отзывам.

Извлечение

Извлечение — достать из текста конкретные значения: название продукта, филиал, сумму, дату, номер заказа, имя упомянутого сотрудника. Здесь проверяется не только то, нашла ли модель значение, но и не придумала ли она его там, где в тексте ничего такого нет.

Резюме и поиск тем

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

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

Начните с бизнес-вопроса и выберите подход

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

  1. 01Сформулируйте решение: например, «на что направить усилия службы качества в следующем месяце».
  2. 02Определите, какие поля нужны для этого решения: тема, филиал, тональность, продукт.
  3. 03Решите, как часто нужен результат: разовый разбор, еженедельный отчёт, обработка каждого обращения в реальном времени.
  4. 04Оцените цену ошибки: что хуже — пропустить жалобу или ошибочно поднять тревогу.
  5. 05Только после этого выбирайте подход и инструмент.

Когда что выбирать

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

  • Если категория определяется по ключевым словам надёжно — например, упоминание номера заказа или конкретного продукта, — выбирайте правила и поиск по шаблону: они прозрачны, бесплатны в эксплуатации и не меняются без вашего ведома.
  • Если категории зависят от смысла и формулировки — сарказм, жалоба без прямых слов, несколько тем в одном сообщении, — выбирайте языковую модель с инструкцией и примерами: она понимает контекст лучше правил.
  • Если у вас уже есть большой размеченный архив и задача стабильна годами, имеет смысл рассмотреть обученный на этих данных классификатор: он предсказуем и дешевле в больших объёмах, а языковая модель может помочь с разметкой.
  • Если нужно понять, о чём вообще пишут клиенты, начните с исследовательского прохода языковой моделью по выборке, а затем переходите к фиксированному справочнику.

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

Справочник категорий: сердце проекта

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

Как собрать справочник

  1. 01Возьмите случайную выборку текстов из разных периодов, каналов и филиалов.
  2. 02Попросите модель предложить темы, которые встречаются в этой выборке, с примерами.
  3. 03Вместе с представителями бизнеса сведите предложенные темы в короткий список, объединив пересекающиеся.
  4. 04Для каждой категории напишите определение, примеры «да», примеры «нет» и пограничные случаи.
  5. 05Добавьте категорию «другое» и правило, когда её использовать.
  6. 06Зафиксируйте версию справочника и дату, с которой она действует.

Как описать одну категорию

Хорошее описание категории отвечает на вопрос, как поступить в спорном случае. Название «Обслуживание» ничего не говорит модели и разметчику. Описание «Жалобы и отзывы о поведении сотрудников: вежливость, компетентность, скорость ответа. Не включает жалобы на цену и на сроки доставки — для них есть отдельные категории» уже позволяет принимать одинаковые решения.

Одна метка или несколько

Заранее решите, может ли текст относиться к нескольким темам. Отзыв «доставили поздно, но курьер был очень вежливым» касается и доставки, и обслуживания, причём с разной тональностью. Если разрешить только одну метку, часть информации потеряется; если разрешить несколько, нужно отдельно считать точность по каждой метке. Для отзывов обычно честнее несколько меток с тональностью по каждой теме.

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

Инструкция модели и формат ответа

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

Что входит в инструкцию

  • Роль и задача: что за тексты, откуда они, что нужно определить.
  • Полный справочник категорий с определениями и пограничными случаями.
  • Несколько примеров текстов с правильной разметкой, включая сложные.
  • Правила для неясных случаев: когда ставить «другое», когда «не определено».
  • Точный формат ответа: поля, допустимые значения, обязательность.
  • Запрет придумывать значения: если в тексте нет филиала, поле остаётся пустым.

Строгий формат и проверка кодом

Требуйте ответ в строгом машиночитаемом формате — например, JSON с заданными полями — и проверяйте каждый ответ кодом: все ли поля на месте, входят ли значения в справочник, нет ли лишнего текста. Если модель вернула категорию, которой нет в справочнике, это ошибка, а не новая категория.

Неуверенность и «не знаю»

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

Персональные данные

Отзывы и звонки содержат имена, телефоны, адреса, номера карт. Перед отправкой текстов во внешний сервис проверьте, что это разрешено политикой компании и требованиями к защите персональных данных. Часто достаточно заменить телефоны, номера карт и адреса на метки до отправки — для классификации темы они не нужны.

Как замерить точность

Без замера точности вы не знаете, чему верите. Модель может уверенно и последовательно ошибаться в одной категории, и общий отчёт будет выглядеть правдоподобно. Замер — не разовое мероприятие перед запуском, а повторяемая процедура.

Контрольная выборка

  1. 01Отберите случайную выборку текстов, а не самые удобные или самые яркие примеры.
  2. 02Убедитесь, что в неё попали все каналы, языки и важные категории; для редких категорий доберите тексты отдельно и пометьте это.
  3. 03Разметьте выборку вручную по тому же справочнику, которым пользуется модель.
  4. 04Часть текстов отдайте двум разметчикам независимо и сравните их метки.
  5. 05Прогоните ту же выборку через модель с текущей инструкцией.
  6. 06Сравните ответы модели с ручной разметкой по каждому полю.

Какие метрики смотреть

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

Иллюстративный пример. Предположим, отчёт для службы качества строится вокруг жалоб на доставку. Если у модели высокая точность, но низкая полнота, в отчёт попадают только настоящие жалобы, но многие проходят мимо — проблема выглядит меньше, чем есть. Если наоборот, жалоб найдено много, но среди них немало посторонних — проблема выглядит больше. Какой перекос опаснее, зависит от решения, которое принимается по отчёту.

Согласие разметчиков

Если два человека часто расходятся в метке одного и того же текста, проблема не в модели, а в справочнике: категория размыта. Требовать от модели больше согласованности, чем есть между людьми, бессмысленно. Такие категории нужно переописать или объединить, и только потом снова замерять модель.

Разбор расхождений

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

Звонки и переписки: свои особенности

Звонки: от аудио к тексту

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

  1. 01Выберите несколько случайных звонков из разных филиалов и по разным темам.
  2. 02Прослушайте их и сравните с расшифровкой: названия, числа, имена, ключевые фразы.
  3. 03Проверьте разделение по говорящим: правильно ли помечено, кто клиент, а кто сотрудник.
  4. 04Отметьте типичные искажения и решите, критичны ли они для ваших категорий.
  5. 05Если искажения затрагивают ключевые слова, добавьте в инструкцию модели список возможных искажённых написаний или исправьте их на этапе обработки.

Для звонков особенно важно разделять реплики. Фраза «я хочу вернуть деньги», сказанная клиентом, и та же фраза в устах оператора, пересказывающего политику возврата, означают разное. Если разделения по говорящим нет, модель будет путать намерение клиента с речью сотрудника.

Переписки и мессенджеры

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

  • Склеивайте сообщения одного диалога в хронологическом порядке с пометкой, кто пишет.
  • Решите заранее, как поступать с голосовыми сообщениями: расшифровывать или исключать.
  • Фото и файлы помечайте как вложение — модель без отдельной обработки их не видит.
  • Длинные многодневные переписки разбивайте на эпизоды, иначе темы смешаются.

Узбекский, русский и смешанный язык

В Узбекистане клиенты пишут на узбекском латиницей и кириллицей, на русском и на смеси языков в одном сообщении. Одно и то же слово встречается в нескольких написаниях, апострофы в узбекских словах ставятся по-разному или пропускаются, русские слова пишутся латиницей. Для модели это разные строки, и то, как она справляется с таким разнообразием, нельзя предполагать заранее — это нужно проверять на своих текстах.

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

Что проверить

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

Как улучшить результат

  • Добавьте в инструкцию примеры на узбекском латиницей, кириллицей и на смешанном языке для каждой категории.
  • Просите модель возвращать категории на одном языке справочника, независимо от языка текста.
  • Поле «язык текста» сделайте частью ответа — по нему потом удобно разбивать точность и отчёты.
  • Если по какому-то языку точность заметно ниже, направляйте такие тексты на ручную проверку, пока ситуация не исправлена.

От таблицы к выводам

Размеченная таблица — это ещё не ответ. Дальше работают обычные инструменты аналитика: доля каждой темы по периодам, сравнение филиалов и каналов, связь тем с поведением клиентов. Главное правило — сравнивать доли, а не абсолютные числа: если обращений стало больше, потому что выросла клиентская база или открылся новый канал, это не обязательно ухудшение.

  • Доли тем по периодам вместо абсолютных количеств.
  • Разрезы по филиалам, каналам, продуктам и сотрудникам.
  • Связь тем с поведением клиента: возвраты, отток, повторные покупки.
  • Несколько реальных цитат к каждой ключевой цифре.
  • Отдельный список новых тем, попавших в категорию «другое».

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

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

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

Типичные ошибки и как их поймать

  • Свободный анализ вместо таблицы. Признак: отчёт состоит из выводов модели, которые нельзя пересчитать. Как поймать: спросите, можно ли сравнить результат с прошлым месяцем; если нет — нужен справочник и фиксированные поля.
  • Размытые категории. Признак: два разметчика часто расходятся. Как поймать: регулярно размечайте часть выборки вдвоём и разбирайте расхождения.
  • Выдуманные значения при извлечении. Признак: филиал или продукт указан там, где в тексте его нет. Как поймать: в контрольной выборке отдельно проверяйте случаи, где поле должно быть пустым.
  • Молча испорченные ответы. Признак: в таблице появляются категории вне справочника или пустые строки. Как поймать: проверка формата кодом и подсчёт отклонённых ответов в каждом прогоне.
  • Ошибки распознавания речи, принятые за ошибки модели. Признак: модель ошибается на звонках заметно чаще, чем на переписках. Как поймать: прослушать несколько ошибочных звонков и сравнить с расшифровкой.
  • Общая точность вместо точности по категориям и языкам. Признак: высокий общий процент при жалобах руководителей, что отчёт не совпадает с реальностью. Как поймать: считать точность и полноту по каждой важной категории и языку.
  • Изменение инструкции без повторного замера. Признак: после правки резко изменились доли тем. Как поймать: хранить версии инструкции и прогонять контрольную выборку после каждой правки.
  • Абсолютные числа вместо долей. Признак: «жалоб стало больше» при росте общего числа обращений. Как поймать: всегда показывать знаменатель.

Чек-лист проекта

  1. 01Сформулировано решение, которое принимается по результатам анализа.
  2. 02Выбран подход: правила, языковая модель, классификатор или их комбинация — с обоснованием.
  3. 03Справочник категорий с определениями, примерами и пограничными случаями согласован с бизнесом.
  4. 04Решено, одна метка у текста или несколько, и как задаётся тональность по темам.
  5. 05Инструкция модели хранится под версией и содержит примеры, включая узбекские и смешанные.
  6. 06Модель отвечает в строгом формате, формат проверяется кодом, оборванные ответы отлавливаются.
  7. 07У модели есть законный вариант «не могу определить».
  8. 08Персональные данные обезличены до отправки, если этого требует политика.
  9. 09Есть случайная контрольная выборка, размеченная вручную, часть — двумя разметчиками.
  10. 10Точность и полнота считаются по каждой важной категории и каждому языку.
  11. 11Качество расшифровки звонков и разделение по говорящим проверены отдельно.
  12. 12Отчёт показывает доли, а не только количества, и сопровождается случайными цитатами.
  13. 13Категория «другое» регулярно пересматривается, изменения справочника фиксируются версиями.
  14. 14Замер повторяется при каждом изменении инструкции, справочника или модели.

Термины

  • Классификация — отнесение текста к категории из заданного списка.
  • Извлечение — получение из текста конкретных значений: продукта, суммы, даты, филиала.
  • Справочник категорий — согласованный список категорий с определениями и примерами.
  • Контрольная выборка — тексты, размеченные людьми, на которых проверяется модель.
  • Точность — доля текстов, отнесённых моделью к категории, которые действительно к ней относятся.
  • Полнота — доля текстов категории, которые модель смогла найти.
  • Согласие разметчиков — насколько часто два человека независимо ставят одну и ту же метку.
  • Разделение по говорящим — пометка в расшифровке звонка, кому принадлежит каждая реплика.

Итог

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

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

Только после замера на вручную размеченной выборке. Смотрите точность и полноту по каждой категории отдельно, особенно по отрицательным отзывам.

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

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

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

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

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

Читайте также

Все статьи
Заявка

Начнём с разговора.

Оставьте контакт — свяжемся, разберём вашу задачу и честно скажем, какой уровень вам подходит. Если не подходит ни один — так и скажем.

Или напишите напрямую

Отвечаем в рабочее время в течение 30 минут.

Что интересует

Без предоплаты и без обязательств. Отказаться можно на любом шаге.

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