- PVSM.RU - https://www.pvsm.ru -

Разработка интеллектуальных ботов с помощью Microsoft Bot Framework, Azure Cognitive Services и NER систем. Часть 1

На сегодняшний момент лишь мессенджеры (и, частично, игры) показывают стабильный рост аудитории на фоне падения всех статистических показателей классических мобильных приложений. WhatsApp заявляет об 1 миллиарде активных пользователях, Facebook Messenger – 900 миллионов, WeChat – 700 миллионов, а мессенджеры уже обогнали [1] социальные сети по активной аудитории.

Для миллионов людей Facebook Messenger может стать первым местом, где они столкнутся с чатботами. И если люди начнут ими пользоваться, то это может стать новым Клондайком для разработчиков программного обеспечения — впервые после того, как компания Apple открыла App Store.

The Verge [2]


Разработка интеллектуальных ботов с помощью Microsoft Bot Framework, Azure Cognitive Services и NER систем. Часть 1 - 1

Логичным является желание мессенджеров воспользоваться сложившейся ситуацией и попытаться еще больше потестить традиционные СМИ, и даже гегемонию Google в плане поиска. И это желание вылилось в открытие почти всеми популярными мессенджерами публичных Bot API. Несмотря на то, что формально мессенджеры предоставляют доступ разработчикам к своей многочисленной публике, по факту, эти же самые разработчики будут приводить своих же пользователей обратно в мессенджеры. Но не будем сильно акцентировать внимание на теории заговоров или философствовать на тему куда это может нас привести, а сконцентрируемся на технических вопросах создания интеллектуальных ботов.

Примеры интеллектуальных ботов

Msg.ai позволяет брендам общаться с пользователями с помощью мессенджеров.

Sony Pictures заменила [3] 70 операторов одним чатботом.

19-летний разработчик создал бесплатного бота, который вернул [4] водителям $3 миллиона за штрафы за парковку.

Разработка интеллектуальных ботов с помощью Microsoft Bot Framework, Azure Cognitive Services и NER систем. Часть 1 - 2

Еще примеры. У иранского бота Тины (еще ее называют иранской Siri) 2,6 млн подписчиков в Telegram [5].

Microsoft Xiaoice (Китай) — 17-летняя девушка, которая живет в WeChat и Weibo. Этого бота называют [6] наибольшим тестом Тьюринга в истории. Робот умеет отвечать на вопросы, распознавать эмоции и даже сопереживать. Многие пользователи даже не понимают, что общаются с ботом.

X2AI — стартап с Кремниевой долины создал [7] бота, который помогает сирийским беженцам в Ливане решать их психологические проблемы, связанные с войной.

В Украине самым популярным ботом является Opendatabot [8], который, используя открытые наборы данных (судебный реестр и базу предпринимателей и бизнесов) позволяет проверять контрагентов и защититься от рейдерских атак путем уведомлений о несанкционированных изменениях записей в едином реестре.

Разработка интеллектуальных ботов с помощью Microsoft Bot Framework, Azure Cognitive Services и NER систем. Часть 1 - 3

ДонорUA.Бот [9] (доступный для Skype, Telegram, Facebook Messenger [10]) позволяет проверить, есть ли у вас противопоказания к донорству (абсолютные или временные) на русском или украинском языке:

Разработка интеллектуальных ботов с помощью Microsoft Bot Framework, Azure Cognitive Services и NER систем. Часть 1 - 4

Буду благодарен, если в комментариях вы набросаете ссылки на другие интересные примеры ботов (в частности, работающие в нашем регионе).

Иногда интеллектуальные боты «уходят» не туда, и мы можем наблюдать интересные результаты. Например, Twitter-бот TayTweets от Microsoft, который учился на твитах, которые ему слали пользователи. Конечно же, люди плохого роботов не научат (сарказм), поэтому уже через 24 часа бот начал выдавать ксенофобские и расиские твиты:

Разработка интеллектуальных ботов с помощью Microsoft Bot Framework, Azure Cognitive Services и NER систем. Часть 1 - 5

Разработка интеллектуальных ботов с помощью Microsoft Bot Framework, Azure Cognitive Services и NER систем. Часть 1 - 6

Microsoft вынуждена была удалить бота из публичного доступа. Это говорит о том, что боты — все-таки инструмент, а каким он будет — зависит от данных и методов обучения.

Зачем боты?

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

  1. Легкий старт. Разработать бот можно достаточно быстро и легко. Гораздо легче, чем разработать мобильное приложение или бот.
  2. После разработки бота он автоматически доступен в мессенджерах и социальных сетях, а значит, нужно потратить меньше времени и ресурсов для маркетинга.
  3. Это дешевле, чем разрабатывать мобильные приложения или сайты. Так как боты работают на существующих инфраструктурах, то все что вам нужно — база данных и сервис, который будет отвечать на вопросы и предоставлять данные по запросу.
  4. Диалоговый интерфейс понятен каждому, дизайн диалогов — все же более легкая задача, нежели разработка UX/UI для мобильных приложений или графического дизайна для сайта.

Тем не менее, это не значит, что ботов нужно использовать везде, где только можно. Пользователи, в идеале, должны сделать 1-2 клика для получения необходимой информации, если же кликов надо больше — возможно, бот — не лучшее решение для вашего сервиса.

И, все таки, есть множество сценариев, где боты — более выгодное решение. Например, для работы с потенциальными клиентами (user engagement), кол-центры, заказа чего-то (пиццы, такси), для создания баз знаний в конкретных доменах (как в случае с ДонорUA.Бот).

Какие новые рынки и работу для разработчиков создают боты?

  • разработка инструментов и платформ для AI/ML/NLP;
  • разработка Bot frameworks;
  • магазины ботов;
  • разработка ботов;
  • автоматизация процессов;
  • боты в маркетинге.

Кто уже включился в игру под названием «чатботы»? Это Telegram, Microsoft Skype, WeChat, Slack, Facebook Messenger. Каждая из платформ предлагает свои уникальные фишки, например, в Telegram есть инлайн боты, которые можно подключать в разговоре с другими людьми, но в целом возможности у всех платформ более менее одинаковые.

Создаем простого чатбота

Процесс создания чат-бота состоит из нескольких частей:

  1. Регистрация бота в мессенджере. В Telegram за это отвечает @BotFather [11], в Messenger нужно создать страницу, которая и будет ботом и связать ее в настройках с приложением на портале разработчика. Для желающих написать бота для Skype есть отдельный портал [12], на котором нужно добавить своего бота.
  2. Создание веб-сервиса (webhooks endpoint), который будет принимать запросы и формировать ответы. Ссылку на веб-сервис нужно прописать в настройках вашего бота.
  3. Написание логики обработки команд (в простых случаях) или не структурированных текстов с помощью NLP/ML/NER инструментов. (о них будем говорить позже).
  4. Создание базы данных, если вы хотите отслеживать диалоги и создавать более тесное и персонифицированное общение с вашими пользователями.
  5. Собственно, все. Тестируем, запускаем, пользуемся.

Telegram позволяет создать набор команд. Как и любую другую задачу по настройке бота, это можно сделать с помощью команды BotFather [13]:

/setcommands - change bot commands list

OK. Send me a list of commands for your bot. Please use this format:
command1 - Description
command2 - Another description

У Facebook такую роль исполняет Persistent Menu [14] (до 5 элементов):

Разработка интеллектуальных ботов с помощью Microsoft Bot Framework, Azure Cognitive Services и NER систем. Часть 1 - 7

Конечно же, это не единственные UX/UI возможности ботов, и список интересных фич постоянно увеличивается.

— В следующей части поговорим о Microsoft Bot Framework для быстрой разработки ботов для ~10 платформ.

Автор: sashaeve

Источник [15]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/net/198400

Ссылки в тексте:

[1] обогнали: http://www.businessinsider.com/the-messaging-app-report-2015-11

[2] The Verge: http://www.theverge.com/2016/4/12/11395806/facebook-messenger-bot-platform-announced-f8-conference

[3] заменила: http://www.businessinsider.com/startup-msgai-wants-to-make-bots-big-2016-3

[4] вернул: http://www.techinsider.io/joshua-browder-bot-for-parking-tickets-2016-2

[5] подписчиков в Telegram: http://www.forbes.com/sites/parmyolson/2016/03/08/tina-chat-bot-telegram-siri-iran/

[6] называют: http://nautil.us/issue/33/attraction/your-next-new-best-friend-might-be-a-robot

[7] создал: http://www.techinsider.io/psychotherapy-bot-in-middle-east-2016-3

[8] Opendatabot: https://www.facebook.com/OpenDataBot

[9] ДонорUA.Бот: https://donor.ua/bot

[10] Facebook Messenger: https://www.facebook.com/donoruabot/

[11] @BotFather: https://telegram.me/BotFather

[12] отдельный портал: https://developer.microsoft.com/en-us/skype/bots

[13] команды BotFather: https://core.telegram.org/bots#commands

[14] Persistent Menu: https://developers.facebook.com/docs/messenger-platform/thread-settings/persistent-menu

[15] Источник: https://habrahabr.ru/post/312286/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best