Когда язык JavaScript стал мейнстримом, в него всегда была встроена функция «асинхронной отправки». Но никто не использовал его в течение многих лет, и более или менее на начальных этапах он в основном использовался очень хакерским образом. Несколько лет спустя на главной странице Google люди внезапно увидели автозаполнение для поискового текста, и родился «Ajax» (который позже привел к Web 2.0). Google, Microsoft и все эти крупные технологические компании могут взять эти старые существующие технологии и полностью изменить их. То же самое происходит и с чат-ботами. Это существующая часть, которая использовалась годами, но никто не использовал их в полной мере. 2016 год и следующие несколько лет — век чат-ботов. Любой, кто создал и использовал чат-ботов, знает, что они приходят и идут с большим размахом. Они полностью изменят то, как мы взаимодействуем со многими другими системами. К сожалению, это определенно повлияет на некоторые рабочие места, но это всегда происходит, когда новая технология становится популярной.

В этой статье я попытаюсь раскрыть некоторые варианты использования или попытаться создать небольшой протокол того, как набор чат-ботов (или систему чат-ботов) можно использовать в нашей повседневной деятельности и разговорах. Я думаю, здесь нет ничего нового, и некоторые варианты использования мы, возможно, уже видели. Однако я видел, что большинство из этих вариантов использования были разбросаны или разделены в разных местах. В этой статье я постараюсь собрать их в одном месте.

ПРИМЕЧАНИЕ. Если кому-то из вас нравятся идеи, упомянутые здесь, не стесняйтесь использовать их в своих будущих продуктах или проектах и ​​купите мне бесплатное пиво :)

Также мы работаем над проектом с открытым исходным кодом по чат-ботам. Он все еще находится в разработке, скоро я поделюсь ссылкой на github и кодом.

Что такое чат-боты?

У меня есть и gmail, и WhatsApp на моем телефоне Android. Однако около 90% времени я использую WhatsApp по сравнению с приложением Gmail для проверки сообщений. На мой взгляд, дни электронной почты прошли, и WhatsApp полностью обновил ее, привнеся разговорный стиль и простой в использовании древовидный режим общения в автономном режиме. Проще говоря, чат большой и с каждым днем ​​становится все больше.

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

Проблема с чат-ботами?

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

Существует два способа создания чат-ботов:

1) Основанный на правилах: у них есть проблема ограниченного использования ввода.

2) Чат-боты на основе машинного обучения: чем больше объем данных, тем лучше результаты алгоритмов. Таким образом, существует зависимость от количества/типа данных, которые передаются моделям при их обучении использованию чат-ботов. По мере того, как все больше и больше инвестиций будут поступать через крупные компании-разработчики программного обеспечения, эти алгоритмы будут улучшаться.

Что такое экосистема Chabots?

Любая организация, служба или физическое лицо могут извлечь выгоду, используя программную экосистему чат-ботов или, проще говоря, группу чат-ботов для различных служб. Все эти чат-боты могут быть созданы поверх любого существующего чат-мессенджера, например, для Whatsapp, facebook messenger или Skype.

В этой статье я буду использовать образец контейнера чат-бота под названием «ChatterBot», показанный для развертывания в Skype, и этот контейнер будет содержать нужные мне чат-боты, как показано ниже:

а) Чат-бот для оплаты моих счетов онлайн (счета за электричество, телефонные счета и т. д.)

б) Чат-бот для проверки авиабилетов или других проездных билетов

c) Чат-бот для новостей, регулярного поиска, последних сообщений электронной почты или поиска по электронной почте.

г) Чат-бот для доступа к моему банковскому счету, заказа новых чековых книжек и т. д.

e) Чат-бот, связанный со здоровьем, медицинским страхованием, рекомендациями по упражнениям и т. д.

f) Чат-бот для обновления моих запасов — продуктов и т. д.

Все эти чат-боты могут быть частью группы, один контейнер позволяет назвать ее «Chatterbot». Обратитесь к снимку экрана ниже для примера идеи

Примечание. У пользователя всегда должна быть возможность «поиска» и добавления чат-бота для себя.

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

Зачем нужен отдельный набор чат-ботов, почему бы не создать одного чат-бота, обеспечивающего все функции?

Основная причина, о которой я могу думать, это:

  1. Разделение проблем, тем самым способствуя простоте использования
  2. Легче реализовать со стороны бэкэнда (поскольку в основном это чат-боты с закрытым доменом).
  3. К каждому чат-боту можно применять отдельные критерии аутентификации или принципы безопасности. Например, критерии аутентификации/авторизации чат-бота @billPay могут сильно отличаться для обычного @newsBot.

Чем это отличается от личного помощника?

Персональный помощник от google (сейчас google) / microsoft (cortana) — это открытые системы. Они похожи на поисковик с интерфейсом чат-мессенджера. Однако варианты использования, упомянутые ниже, предназначены для закрытых или доменных областей. Таким образом, объем знаний, необходимых для их создания, ограничен.

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

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

Варианты использования и особенности:

  1. Единый контейнер для всех чат-ботов.

В мессенджере создайте отдельную группу для чат-ботов. Ниже показан тот же снимок экрана, здесь «Chatterbot» — это группа чат-ботов.

2. Заполнение малых форм через самого чат-бота

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

⦁ Предположим, вам нужно оплатить счет за электроэнергию PSEG. В этой ситуации просто откройте чат-боты @payBills, дважды щелкнув по нему.

⦁ Теперь введите «оплатить счет» и отправьте. В мессенджере должна появиться форма, как показано ниже

⦁ Теперь пользователь может заполнить данные и отправить.

3. Подача команд или простых вопросов чат-ботам.

Вы можете запускать простые команды для своих чат-ботов. Итак, если вы хотите увидеть «новости», откройте newsBot, как показано ниже, и введите, например, «последние новости».

4. Недопустимый текст в ответе чат-бота.

Чат-бот может вернуться с некоторыми наводящими на размышления ответами. например Обратитесь к снимку экрана ниже, в ответе «после оплаты счета» чат-бот дает наводящий текст для автоматической регистрации.

5. Поддержка отправки в автономном режиме:

Вы едете в поезде, и у вас нет сети передачи данных. Вы вдруг понимаете, что для восстановления подключения к газу вам необходимо отправить запрос в ПСЭГ. Если у вас установлен бот, просто введите сообщение и отправьте. Чат также поддерживает прием сообщений в автономном режиме. На стороне сервера сообщение может быть зарегистрировано в очереди запросов (может быть очередью Kafka в стеке больших данных). Как только сайт возвращается, запрос может быть передан в реальную систему, и пользователь может получить ответ о том, что запрос отправлен.

6. Обеспечение поддержки сложных запросов

Пользовательский интерфейс привязан к тому, что выпущено на веб-сайте, то есть существует ограничение на поддерживаемую функциональность. Любое небольшое изменение, например небольшая поддержка нового запроса или фильтра, потребует новой версии кода в рабочей среде. С такими небольшими случаями в чат-боте можно легко справиться во внешнем интерфейсе (поскольку это просто еще один вопрос, которому нужно обучить машинного обучения чат-бота). например

Последний счет @mobileBot, возможность обновления, доступные телефоны

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

7. Вызов чат-бота во время чата с другом.

Пользователь должен иметь возможность вызывать чат-бота во время разговора с другим пользователем. Например,

⦁ Во время чата с другом, если вы набираете

«Привет, Джон, посмотри, какие рейсы есть у @kayakBot в Дели»

Пожалуйста, обратитесь к изображению ниже, например.

⦁ Приведенный выше текст будет отправлять сообщение вашему другу «Джон», а также вызывать чат-бота «KayakBot» и получать предложения на рейсы «ewr to delhi» в окне чата.

8. Вызов чат-бота в групповом чате

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

9. Вызов нескольких чат-ботов одной командой.

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

Текущий счет @mobileBot, текущий счет @psegBot или

Текущий счет @mobileBot и @psegBot

Примечание. Это выглядит очень просто с точки зрения мессенджера, но что-то подобное очень неудобно делать через пользовательский интерфейс. Фактически, чтобы сделать это через пользовательский интерфейс, вам нужно будет войти как в пользовательский интерфейс мобильного приложения, так и в пользовательский интерфейс приложения PSEG (хотя я мог бы использовать один и тот же идентификатор oauth в обоих приложениях). Также я должен был бы знать заранее, где искать информацию, которая мне нужна.

10. Уведомления.

Как мы узнаем, что в WhatsApp пришло новое сообщение?

На значке WhatsApp на мобильном телефоне мы видим «число» для количества новых сообщений. Просто взглянув на него, вы поймете, что у вас есть новые сообщения или пересланные шутки :). Подобную функцию можно эффективно использовать и на уровне чат-бота, как показано на скриншоте ниже (пожалуйста, обратитесь к цифрам, выделенным красным цветом, для новых сообщений)

Это хороший способ отправки уведомлений о сделках/предложениях конечным пользователям.

10. Мобильная интеграция чат-ботов

Если вы создаете чат-ботов на популярных платформах, таких как Skype/facebook messenger/Gtalk, по умолчанию они будут доступны на мобильных телефонах, а присутствие на мобильных телефонах станет автоматическим. Это значительно увеличивает возможности взаимодействия с ботами, пока пользователь путешествует или находится в пути.

11. Настройка локального маяка.

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

Так что, если я потеряю свой пульт от телевизора, и на моем телевизоре установлен маяк, который слушает мое сообщение в чате. Я могу открыть своего @localBot и сказать: «Netflix играет в Star Trek». Хотя у нетфликса пока нет звездного пути :), но это был просто пример того, на что способен маяк. Маяк может помочь в локальном взаимодействии от вашего имени. Это может помочь вам установить напоминания в вашем прогнозе, установить будильник, когда вы встаете, или напоминание о важных днях рождения и т. д.

12. Голосовая интеграция чат-ботов

Поскольку большинство чат-клиентов теперь поддерживают интеграцию чата, почти все чат-боты будут поддерживать голосовую интеграцию по умолчанию.

Преимущества этой экосистемы чат-ботов:

  1. Естественный способ добиться цели. Поддерживает разговорный стиль на простом английском языке. Нет необходимости придерживаться какой-либо сложной навигации или устанавливать несколько приложений на свой мобильный телефон.
  2. Поддержка автономного режима может быть очень полезной, если у людей нет стабильной сети передачи данных.
  3. Нет необходимости писать какую-либо логику переноса для обеспечения доступности между устройствами. Как и почти все известные мессенджеры, такие как скайп, мессенджер фейсбук доступны на всех устройствах.
  4. Упрощает задачи типа часто задаваемых вопросов, которые в противном случае потребовали бы обращения в службу поддержки для избыточной работы. Например, чтобы проверить, имеете ли вы право на обновление телефона, вы можете просто ввести текст и спросить у вас mobileBot вместо того, чтобы звонить в службу поддержки клиентов.
  5. Простая голосовая интеграция, так как почти все известные мессенджеры поддерживают голосовую связь на мобильных телефонах.
  6. Поддержка отправки простых форм через сам чат-мессенджер. Форму, состоящую из 2–3 строк, можно легко отправить через сам мессенджер.
  7. Поддержка уведомлений. Любой простой способ для пользователей узнать о своей незавершенной работе или предлагаемых сделках и т. Д. Через уведомления.