Олега Халилова, сооснователя ИТ-компании Neti, увлекает тема искусственного интеллекта и машинного обучения. Он работает над проектами, где роботы берут на себя утомительный ручной труд человека и повышают эффективность всей компании.
В этом материале он рассказал, как с помощью нейросети его команде удалось оптимизировать ручной труд и кратно увеличить скорость обработки заявок. Этот опыт может быть полезен для собственников бизнеса и руководителей ИТ-подразделений в компаниях, где много входящих обращений пользователей, а менеджеры поддержки перегружены.
Ситуация
У нас в компании работает принцип одного окна. Сотрудники направляют запросы в бухгалтерию и отдел кадров на единый почтовый ящик: заказывают справки, присылают счета подрядчиков, запрашивают больничные. Каждую неделю набирается несколько сотен таких обращений.
Входящие заявки обрабатывает офис-менеджер. Он присваивает заявке категорию и направляет исполнителю, исполнитель выполняет и закрывает задачу. Так происходит с простыми запросами, например, выдать сотруднику справку 2-НДФЛ.
Если задача более долгая, процесс усложняется. Например, чтобы обработать заявление на отпуск, нужно несколько человек. В этом случае менеджер направляет задачу на отдел кадров и дальше ее ведет специалист отдела: согласовывает с руководителем, знакомит сотрудника с приказом на отпуск, отправляет бухгалтерам для расчета отпускных.
Задача
Такая классификация и перенаправление заявок занимает много времени и отвлекает участников процесса. При этом каждый день на менеджера сыпятся новые задачи, и если не успевать их распределять, они будут накапливаться и срывать сроки. Подрядчики с опозданием будут получать деньги, а отдел кадров не сможет вовремя принимать людей на работу.
Мы решили автоматизировать классификацию заявок. Возможностей искусственного интеллекта, чтобы читать тексты и относить их в правильную категорию, более чем достаточно. Для этого нужно выбрать нейросеть, обучить ее и интегрировать с системой управления задачами.
Решение
Подготовка системы управления проектами
Мы учитываем рабочее время и ведем задачи в Jira, она развернута на корпоративном сервере. После того как пользователь отправил запрос на специальный ящик, Jira автоматически забирает его содержимое и превращает в задачу для менеджера.
Раньше менеджеру приходилось каждое обращение переносить вручную — это занимало несколько часов в день. Функционал автоматического создания задачи из письма мы реализовали до подключения нейросети.
Читайте также:
Как перестать ждать и начать получать ответы от клиента, подрядчика, партнёра?
30+ ресурсов для креативной работы с ИИ
Забегая вперед, скажу два слова про Jira и другие системы. Если бы мы работали не с Jira, а, например, с «Битрикс24», то ничего принципиально бы не поменялось. Мы бы просто сделали другую интеграцию.
Нейросеть можно подружить с любыми системами предприятия (ERP, CRM, 1С); любыми Service Desk системами (IntraService и Bpm’online от Terrasoft, ITSM 365, Naumen, Итилиум, OTRS) и любыми системами по стандартному протоколу передачи данных REST API. Использование нейросетей ограничено только фантазией и наличием данных для обучения. Но к возможностям их применения я еще вернусь в конце.
Выбор нейросети
Похожие проекты по классификации заявок мы уже выполняли, только раньше использовали модель обработки текста TF-IDF с фреймворком LightGBM. В этот раз решили взять более совершенную языковую модель BERT.
BERT — это нейронная сеть, которую выпустил Google несколько лет назад. Создатели обучили сеть на 2,8 миллиардах слов и ста языках. Благодаря этому BERT понимает словоформы и синонимы, учитывает последовательность и контекст слов в предложениях.
Для наших целей этого особенно хорошо. Сотрудники могут по-разному формулировать свои запросы, а в русском языке есть слова, значения которых нейросеть сможет определить только внутри фразы или целого предложения. Например, слово «брак».
По обещаниям разработчиков, BERT должен понимать контекст и отличать разные «браки».
Обучение нейросети
Основной фактор успешного проекта в ML — чистые исторические данные. Машине все равно: она обучится на любых данных и будет показывать соответствующий результат. Но если в исторических данных содержатся ошибки, смысла в этом обучении мало.
Чтобы дообучить BERT на наших данных, мы выгрузили из Jira 16 000 обращений, которые классифицировал менеджер. Затем произвели чистку: нашли и исправили ошибки, когда менеджер неправильно распределил запросы, и вручную поменяли категории.
Выявление ошибок в Big Data заняло неделю. Обучение нейросети BERT — 7 минут 26 секунд. Для ML-проектов такая разница во времени между подготовкой данных и обучением — обычное дело.
Интеграция с Jira
Для сервера, где стоит BERT, мы использовали простой компьютер семилетней давности. Обработка текстов занимает доли секунды, поэтому для автоматизации обращений хватает минимальной мощности. На сервере запустили веб-сервис на Python Flask.
Наша Jira уже умела превращать обращения сотрудников в задачи для менеджера. Чтобы подключить к этому процессу нейросеть, мы настроили в Jira автоматическую отправку запросов на сервер.
Теперь обработка заявок изнутри выглядит так: пользователи пишут письма на специальный email → заявка падает в Jira как задача для менеджера → Jira отправляет запрос на сервер → нейросеть читает текст заявки, назначает компоненту и, если нужно, меняет исполнителя → исполнитель выполняет и закрывает задачу.
Пользователи всего этого не видят. Для маркетолога, который отправляет счет на оплату рекламы, заявка сразу падает в бухгалтерию. Но если развернуть историю изменений в Jira, будет видна такая картина:
Результат
Ускорение обработки заявок
Раньше заявления на отпуск обрабатывались по две недели: от момента, когда сотрудник прислал заявление, до выплаты отпускных.
Читайте по теме: Подборка: 10 самых популярных ИИ-генераторов изображений
Процесс выглядел так:
Сотрудник отправлял письмо на email → менеджер видел новую задачу в Jira → переводил обращение на отдел кадров → специалист отдела кадров переводил задачу на руководителя → руководитель согласовывал и возвращал обратно → отдел кадров направлял сотруднику приказ для ознакомления → сотрудник читал и соглашался → отдел кадров переводил задачу на бухгалтерию → бухгалтеры рассчитывали отпускные и возвращали задачу назад → специалист отдела кадров закрывал заявку.
С внедрением нейросети процесс согласований упростился и теперь все происходит в разы быстрее и удобнее. Если сотрудник сразу ознакомился с приказом, то от создания до закрытия заявки проходит всего 10 минут. Задачи больше не висят по две недели.
Фактически время обработки заявлений сократилось с 2 недель до 10 минут.
Точность распределения
Чаще других BERT путается с категорией «Рабочие запросы». Но поскольку в эту категорию можно отнести любые обращения пользователей, это нормально.
На наших данных точность обработки заявок составляет от 92 до 99%. Раз в полгода мы проверяем найденные ошибки, вручную меняем классификаторы и заново переобучаем сеть.
Главное, что дает нейросеть — это мгновенная классификация заявок пользователей с высокой точностью. Внедрение BERT ускорило выполнение наших задач и освободило менеджеров от избыточной нагрузки.
Такую автоматизацию заявок можно применить везде, где обрабатывают и маршрутизируют запросы пользователей — от служб HelpDesk до сайта Госуслуг. BERT одинаково хорошо справляется с небольшими текстами и длинными письмами.
Если пользователи регулярно обращаются с однотипными вопросами — а таких обычно большинство — можно расширить функционал и сделать интеллектуальный автоответчик. Нейросеть будет самостоятельно отвечать на частые вопросы. В свое время мы реализовывали такой проект для «Леруа Мерлен».
Фото на обложке: Shutterstock / Blue Planet Studio
Иллюстрации предоставлены автором.
Нашли опечатку? Выделите текст и нажмите Ctrl + Enter
Материалы по теме
- Пройти курс «Старт работы на Яндекс Маркете»
- 1 Репутационные риски: что это такое и как ими управлять
- 2 Что такое дистрибуция: виды и цели, как строится дистрибьюторская сеть
- 3 Эффективные стратегии управления репутацией — как восстановить доброе имя в интернете
- 4 Что такое ретро-бонус: рибейт в торговле
ВОЗМОЖНОСТИ
28 января 2025
03 февраля 2025
28 февраля 2025