Принципы дизайна чат-ботов

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

Интерфейс чат-бота легко переусложнить и сделать неудобным. Хорошие новости в том, что чат-боты существуют не первый день, и по их дизайну сложились устойчивые практики.

Следующими принципами дизайна чат-ботов поделился Эммет Конноли, директор по продуктовому дизайну бизнес-акселератора Intercom.

  1. Не маскируйте бота под человека. Боты, представляющиеся человеком, неприятны по двум причинам. Во-первых, пользователь чувствует обман и теряет доверие к сервису. Во-вторых, часто такими "недочеловеками" неудобно управлять. Это разочаровывает и раздражает пользователя. Эммет своей заметке предлагает противоположный подход: чётко разграничить, какие интеракции в чате происходят с живыми людьми, а какие — с ботами.
  2. Диалог должен быть простым. Не нужно строить ветвистое дерево диалогов, не нужно предусматривать все возможные ответы пользователя. Пользователь очень быстро устанет от сложных диалогов. Совершенно нормально, если бот чётко устанавливает рамки, в которых он работает.
  3. Не превращайте чат в приложение. Сложные многоступенчатые меню лучше смотрятся внутри приложений. Общение с ботом — это всё ещё общение в чате. Оно обычно следует шаблону «запрос от пользователя» -> «ответ от бота» без серьёзных ветвлений.
  4. Забота о пользователе — в первую очередь. Компании нужен бот, если этот бот действительно упрощает пользователю жизнь. Жизнь пользователя не упрощается, если бот становится на место человека там, где человек его превосходит. Техподдержка тому хороший пример: нет у ботов достаточного эмоционального интеллекта, чтобы заменить человека на посту агента поддержки.
  5. Держите диалоги короткими. Если пользователю требуется долго общаться с ботом, чтобы совершить действие, он уйдёт к конкуренту. Диалог с ботом должен быть не только простым и прямым, но и коротким.
  6. Дайте запасной выход. Чат-бот должен быть дополнительным, а не основным способом выполнить действие. Ваш бот позволяет сделать отклик на вакансию? Сделайте аналогичную форму на сайте. Ваш бот осуществляет техническую поддержку? Добавьте кнопку «Связаться с человеком».
  7. Структурированный ввод лучше неструктурированного. Команды и наборы кнопок — это способы сделать ответ пользователя структурированным. При всех достижениях машинного обучения, неструктурированный ввод всё ещё трудно обрабатывать. Да и пользователь предпочёл бы нажать на кнопку «да», чем набирать это вручную на клавиатуре.
  8. Храните историю ответов бота. Она поможет исправить проблемы, возникшие при работе бота.

Публикация этой статьи приурочена к выходу учебного модуля про Чат-боты. Во время прохождения модуля студент пишет ботов для ВК и Telegram, запускает их на Heroku, а исходный код публикует на Github. Присоединяйтесь!