IT-гиганты готовы общаться с нами голосами Алисы, Google Assistant и других подобных помощников, лишь бы продать собственные сервисы. Но кто научит технологичных ассистентов разговаривать на языке пользователя? Каким должен быть удобный диалог, и как его оценить? Обобщая опыт, полученный при создании навыков одного из ассистентов, делюсь мнемонической аббревиатурой, которая поможет разработчикам проверить качество проектируемого голосового интерфейса.
Скриншот с ответами голосового помощника «Яндекс» Алисы
Актуальность
Используя голос, можно просто и быстро передать большое количество информации. Хотя голосовой интерфейс имеет свои недостатки, эволюция доказала его эффективность для общения людей, а современные речевые технологии сделали его доступным и для машин. Теперь дело за разработчиками диалогов (они же навыки, скилы и экшены), которые учат сервисы общаться и, таким образом, делают голосовых помощников полезными. При этом потребность в инструкциях для создания чат-ботов с голосовым интерфейсом удовлетворяется лишь частично, в основном документами от Amazon, Apple, Google, Microsoft и Яндекс, а также специальной литературой ([1], [2], [3]). В связи с этим представляется актуальным создание инструментов, позволяющих быстро и просто проверить разрабатываемое решение на соответствие базовым принципам проектирования диалога.
Чек-лист диалога голосового помощника
Итак, обещанная мнемоническая аббревиатура: хороший диалог = ЛЁГКИЙ диалог.
Л | Личностный | Реплики помощника соответствую личности, стилю общения его персонажа. |
---|---|---|
Ё | Естественный | Реплики помощника варьируются, он адекватно реагирует на базовое поведение пользователя. |
Г | Гибкий | Помощник готов к широкому спектру пользовательских выражений, а также к намерению пользователя предоставлять больше информации за один раз. |
К | Контекстный | При формировании ответов помощник учитывает доступную и полученную ранее от пользователя информацию. |
И | Инициативный | Для каждого шага в диалоге предусмотрено возможное продолжение, пользователю понятно, что можно сделать дальше. |
Й | И краткое | Реплики помощника сформулированы по возможности кратко. |
Ниже представлены примеры из моего опыта, поясняющие сформулированные принципы.
-
Личностный
Голосовой помощник, как правило, имеет отличительные особенности — определённый образ, характер. Например, Алиса умная, начитанная, спокойная, держит дистанцию, не допускает панибратства. Пользователи ожидают от помощника соответствующего поведения, и соблюдение целостности характера способствует повышению доверия к ассистенту. Этот принцип ограничивает возможности автоматизации генерации ответов, но он важен для пользовательского восприятия.
Для приложения с голосовыми помощниками “Evefriends” я разработал легенды нескольких персонажей, включая мужчину, женщин и инопланетянина Спуню. Выбирая внешность ассистента, пользователь получал иной опыт общения за счёт соответствующих личности помощника диалогов.
-
Естественный
Язык помощника должен быть естественным: избегайте повторов и канцелярских формулировок, по возможности используйте неявные подтверждения, используйте техники активного слушания. Не забудьте корректно обрабатывать приветствие, прощание, благодарность, запрос помощи и т.п.
Когда я делал чат-бота “Соня Гусева”, который в 2015 году выиграл конкурс “Тест Тьюринга”, обманув 47% судей, чат-бот постоянно варьировал реплики, никогда не используя их дважды. У голосовых помощников нет задачи обмануть человека, но естественность речи имеет большое значение.
-
Гибкий
Используйте средства NLU, чтобы понимать всевозможные формулировки запросов, а также вероятные ошибки распознавания речи. Предусматривайте для пользователя возможность изменить ход диалога в любой момент (например, отказаться от заказа). Также имейте в виду, что пользователь может в вкладывать в одним запрос больше информации, чем вы просите. Например, в диалоге подтверждения “Хотите пиццу ‘Маргарита’ за 200 рублей?” Будьте готовы к ответу “Да, 2 штуки, пожалуйста.”
В работе над игровыми навыками известного голосового помощника у нас была задача фильтрации мата, благодаря которой мы познали потенциал языка во всей его гибкости и неплохо научились распознавать самые изощрённые выражения.
-
Контекстный
Априорный контекст может включать информацию о времени, локации, устройстве пользователя, апостериорный — историю диалогов, имя, авторизационные данные. Приветствуйте пользователя с учётом времени суток, называйте по имени, не запрашивайте то, что уже знаете, не инструктируйте опытного пользователя как новичка.
При разработке виртуального ассистента для приложения “Собеседница” мы проектировали диалоги с учётом настроения персонажа: поведение помощника менялось в зависимости от частоты использования приложения и тональности высказываний пользователя.
-
Инициативный
Избегайте ситуации, когда пользователь не знает, что делать дальше. Направляйте диалог с помощью вопросов или подсказок, формируя ожидания собеседника. В Алисе для этого хорошо использовать кнопки (они же саджесты). Отслеживайте “затыки” в диалоге и предлагайте выход из них.
В работе над чат-ботами для детских устройств с голосовым управлением (“Емеля”, “Фасолька”) мы тщательно балансировали инициативу, чтобы удержать внимание ребёнка и вовлечь его в диалог.
-
И краткий
Краткие формулировки снизят когнитивную нагрузку, сэкономят время и будут звучать более естественно. Сокращайте тексты за счёт предоставления только важной и актуальной информации, а также за счёт опускания уже известных пользователю фактов и инструкций.
При проектировании чат-бота для умного видеорегистратора Linza мы учитывали длину реплик, чтобы снизить нагрузку на водителя и не отвлекать его от движения.
Заключение
На практике проектирование диалога ограничено как уровнем развития речевых технологий (ASR, NLU, TTS), так и особенностями реализации конкретного голосового помощника, а также API используемых сервисов. Но следование указанным принципам поможет разработчикам сделать разговор с их чат-ботом более приятным и лёгким.
Автор: Возле ректора