Почему веб-боты сильнее чат-ботов

Всё большее количество услуг можно получить через чат-бота. Можно легко оплачивать эти услуги, проходя по присылаемой ботом ссылке, и сразу после оплаты возвращаться по другой ссылке обратно в чат мессенджера. Чат-бот уже будет “знать”, что оплата успешна, после чего он предоставит услугу в полном объёме, даст ссылку на загрузку какого-нибудь билета и так далее. Так работал бот, продающий билеты на Kyiv Legal Hackers Conference (насколько мне известно, над ним хорошенько поработал Nikita Podgainiy). Это удобно? Удобно. Мода на чат-ботов растёт. Например, вот здесь вы можете увидеть, какие компании сделали себе чат-ботов на платформе Chatfuel (тут можно увидеть KFC, Adidas, Netflix, Mercedes-Benz, Reebok и других).

Но также существуют и веб-боты, которые во многих ситуациях могут составить уверенную конкуренцию чат-ботам. Веб-бот — это то, что сведущий технарь сразу назовёт интерактивным сайтом на JavaScript с AJAX-ом. А интерактивный сайт — это стандарт современного сайта, способный мгновенно отзываться на ваши действия и обмениваться данными с сервером “в фоновом режиме” (без перезагрузки страницы). Какие же интерактивные сайты мы можем называть веб-ботами?

Представьте себе, что веб-сайт ведёт себя как чат-бот: может принимать от вас сообщения, реагировать на нажатие кнопок, выдавать релевантные ответы и так далее. То есть этот сайт полностью подменяет собой чат-бота. На первый взгляд, это может показаться странным, ведь зачем загонять на сайт то, что, казалось бы, отлично работает в мессенджере? А затем, что сайт способен на большее.

У чат-бота очень ограниченная “область видимости” на стороне клиента. Это, по сути, конечная (она же текущая) точка вашего диалога с ним в мессенджере. В мессенджере Telegram к этой области видимости также относятся “инлайновые кнопки” — то есть кликабельные слова со слешами перед ними, по типу “/menu”, которые могут быть расположены в ранее присланных сообщениях бота (см. рис. 1). Еще чат-бот способен без вашего желания и участия считывать ваше имя-фамилию и чуток других технических сведений. Но во всём остальном на стороне пользователя он “слеп”.

рис. 1 — область видимости чат-бота — лишь поле ввода, кнопки и инлайновые кнопки

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

А представьте теперь, что эта страница через 25 секунд после открытия внезапно сообщает, что у вас сильно дрожит рука (управляющая мышью) и рекомендует успокоительное, выводя ссылку на него. И, если вы разрешите сайту определить ваше расположение, то страница выведет карту вашего района с ближайшими аптеками; а ещё, если имеется такая возможность, то может подсказать, где дешевле всего взять этот препарат. А ведь всё это — следствие способности веб-страницы отслеживать движение курсора. Впечатляет?

Веб-сайт вполне можно оформить как веб-бота. Можно тоже придумать ему образ и характер (как это становится модным с некоторыми чат-ботами, претендующими на широкое распространение и всенародную любовь). Но наиболее важно то, что им часто гораздо удобнее пользоваться, чем чат-ботом. Например, при составлении какого-нибудь документа на основе ответов на вопросы можно всю историю вопросов и ответов отображать одновременно на одной странице. И клиент в любой момент может поменять свой ответ на предыдущие вопросы, не нарушая ход “диалога” и не ставя крест на своих дальнейших действиях. Так работает наш Privacy Policy Bot, составляющий политики приватности для приложений (см. рис. 2). В чат-боте для этого нужно возвращаться на определённое количество шагов назад, а нередко и вовсе перезапускать его (если только разработчик чат-бота не реализует возможность всегда возвращаться на один шаг назад). Это неудобно. И времени больше занимает.

рис. 2 — веб-бот “гибче”, можно легко и безболезненно менять предыдущие ответы

В чат-боте у вас лишь одно измерение — вертикальная временная линия диалога, а вы к тому же можете действовать лишь в её конечной точке, именуемой “сейчас”. В сравнении с этим веб-бот располагает прям эйнштейновским пространством-временем. Это сильно ощутимая разница. Более того, на странице веб-сайта даже третье измерение можно использовать (за счёт так называемой многослойности).

Многие серьёзные юридические услуги удобней предоставлять через веб-ботов, потому что зачастую нужно задать человеку много вопросов и получить много ответов перед тем, как выдать ему достойный результат. Поэтому мы в Axon Partners и создали такого веб-бота, который намного превосходит аналогичного чат-бота. К тому же, пользуясь веб-ботом, человек может оставаться анонимным, потому что он обычный посетитель сайта (тогда как в мессенджере для такого же эффекта ему нужно будет использовать поддельный аккаунт). А если наш бот как раз на тему приватности, то зачем её нарушать? :)

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

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

P.S. Меня некоторые игроки рынка время от времени троллят за то, что я (“гуманитарий-юрист”) изучаю программирование. Но это, несмотря на некоторые сложности на старте, становится очень полезным опытом. Появляется возможность лично (а не насилуя другого программиста за деньги, еду или что-то ещё) тестировать свои гипотезы и создавать в своих целях разнообразные извращения в виде веб-ботов и просто веб-сайтов, которые могут быть очень полезны и удобны. К тому же, давайте будем честны. Когда необходимо будет сделать более сложного чат-бота с довольно развитой логикой распознания пользовательского ввода, с обращением к базам данных и сторонним сервисам, с принятием решений на основании предыдущего опыта, с уникальными техническими плюшками, то конструктор ботов не поможет сохранить “гуманитарную девственность”. Здесь вплотную придётся подойти к границе между “играющим в конструктор ботов гуманитарием” и “кодером-технарём” и во многих случаях перешагнуть её.