Уже в 1966 году была создана программа, которой почти удалось пройти тест Тьюринга [1] и убедить некоторых пользователей в том, что они общаются с человеком, а не с компьютером. Для подобных программ с самого начала использовались термины «бот» и «чат-бот». Сегодня так, как правило, обозначают диалоговый пользовательский интерфейс, скрипт с «человеческими» чертами или агентскую программу, автоматизирующую повторяющиеся задачи. Обычно боты не предназначены для создания у пользователей ложного ощущения, что они общаются с реальным человеком, хотя программам-роботам часто стараются придать дружелюбный «характер» и «обаяние».

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

Рассмотрим существующие типы и платформы ботов, а также способы их создания и использования.

Боты и разработка ПО

Сегодня боты становятся фактическим стандартом интерфейса для взаимодействия с программными сервисами. Это происходит отчасти вследствие широкого распространения платформ обмена сообщениями (например, Facebook Messenger для пользователей социальной сети и Slack для разработчиков), а отчасти благодаря прогрессу в средствах понимания естественного языка, поддерживаемых многими ботами. Еще одна движущая сила — массовое использование больших данных и алгоритмов машинного обучения: боты удобны как пользовательский интерфейс для взаимодействия с системами, выдающими ответы по результатам анализа гигантских объемов сведений.

В крупных софтверных компаниях признают удобство ботов для интеграции сервисов, каналов связи и объединения пользователей. В Facebook, например, хотят постепенно заменить ботами на платформе обмена сообщениями Messenger [2] все приложения, а в Microsoft заявляют, что операционная система будущего — это «диалог как платформа».

О росте популярности программ-роботов можно судить по развитию сервисов наподобие Alexa, Siri, IBM Watson и Google Now. Существует также множество ботов на платформах, используемых разработчиками ПО для связи с коллегами и сервисами, таких как Slack, Microsoft Teams и HipChat.

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

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

«Ботология»: анализ программного ландшафта ботов

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

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

Это не вся статья. Полная версия доступна только подписчикам журнала. Пожалуйста, авторизуйтесь либо оформите подписку.

Поделитесь материалом с коллегами и друзьями

Купить номер с этой статьей в PDF