Виртуальный помощник представляет собой технологию, которая понимает вопросы, сформулированные на естественном языке, находит ответы в базе знаний и общается с пользователями в формате письменного диалога. Такой помощник способен обрабатывать наиболее типичные запросы от пользователя, которые зачастую составляют до 80% от общего числа всех запросов. При этом лишь 20% сложных вопросов адресуются экспертам, что позволяет существенно экономить их время.
На рынке виртуальных помощников существует достаточно большое количество коммерческих и некоммерческих продуктов, а при выборе решения для оперативного внедрения определяющими становятся три критерия:
- Поддержка технологий продвинутых моделей машинного обучения. Наличие данных функций позволяет виртуальному помощнику пользоваться не только сформированной экспертами базой знаний, но и постоянно обучаться при работе с пользователями, с каждым диалогом становясь все более полезным инструментом.
- Скорость вывода продукта в эксплуатацию. Облачная реализация технологии — это ключевой аспект для обеспечения высокой скорости вывода продукта в эксплуатацию. Она позволяет не отвлекаться на инфраструктурные и административные задачи, быстро адаптироваться к обратной связи от пользователей и сосредотачиваться на поддержании базы знаний в актуальном состоянии.
- Возможность интеграции с другими системами. Виртуальные помощники не существуют в информационном вакууме, поэтому пользователи ожидают высокую степень интеграции решения с другими источниками информации, а также хотят иметь доступ к ней через удобный для них канал связи. Возможности подключения внешних источников информации для сбора статистики, дайджеста новостей, курса валют, а также дополнительных каналов доступа (например, WhatsApp) — это уже не дополнительная функция, а осознанная необходимость.
Рассмотрим недавнюю инициативу сотрудников российского офиса IBM, в рамках которой наша команда за 10 дней сформировала базу знаний, интегрировала функции сбора информации и выпустила виртуального помощника, который уже сейчас применяется пользователями веб-сайтов двух российских федеральных вузов для ответов на вопросы по коронавирусу COVID-19.
В реализации подобных проектов важны две вещи: мотивированная и талантливая команда, нацеленная на успех заказчика, и наличие гибких и работоспособных технологий.
Ставя задачу быстрого запуска виртуального помощника в общий доступ, необходимо определиться с краткосрочным планом и набрать в команду людей, способных автономно решать эти задачи. Наш список задач включал:
- Формирование базы знаний виртуального помощника.
- Интегрирование с внешними источниками данных и каналами предоставления доступа.
- Включение дополнительных функций работы с пользователями, например, исправление орфографических ошибок, создание механизма обратной связи, определение геолокации и т.д.
В кросс-функциональную проектную команду вошли владелец продукта (отвечал за формирование дорожной карты решения, постановку, описание и приоритезацию задач), эксперты в предметной области (занимались формированием и обновлением базы знаний виртуального помощника, анализом обратной связи пользователей), разработчики (работали над интеграцией с мессенджерами и внешними сервисами, созданием микросервиса для более корректной обработки запросов с ошибками, жаргоном и излишними эмоциями).
Кстати, в составе команды не было специалистов в области Data Science и NLP — это связано со спецификой работы с готовым облачным решением IBM Watson Assistant: большую часть требуемого функционала она выдает «из коробки».
Пожалуй, самой трудоемкой задачей стало формирование базы знаний помощника: нужно было подготовить максимально широкий перечень возможных вопросов граждан и подобрать к каждому ответ из достоверного источника. Основная сложность связана именно с разнообразием вопросов, а не ответов. Ведь большинство пользователей задает одинаковые вопросы, но при отправке запроса формулирует их по-разному.
Чтобы дать модели возможность изучить разнообразие вопросов, мы попросили сотрудников российского офиса IBM прописать интересующие их вопросы. Благодаря такой коллективной работе нам удалось сформировать базу знаний, состоящую из более 1 500 уникальных вопросов всего за два дня. После вывода в общий доступ виртуальный помощник обучается на диалогах с пользователями и база знаний постоянно расширяется.
Параллельно с формированием базы знаний команда разработчиков интегрировала функцию сбора статистики: пользователь может написать, например, «хочу узнать статистику заболеваемости в Италии», и виртуальный помощник выдаст актуальные данные. Интересно отметить, что многие пользователи позднее писали нам, что ежедневно переписываются с виртуальным помощником именно благодаря этой функции.
Все поставленные задачи были решены командой IBM за 9 дней, после чего виртуальный помощник был запущен на сайте Южного федерального университета, а через еще через пару дней — на сайте Сеченовского медицинского университета.
Артем Семенихин, руководитель департамента научных индустриальных исследований IBM в России и СНГ