Шаблоны, конструкторы, диалоговые платформы и open-source фреймворки — на чем делать бота новичку и профи

Шаблоны, конструкторы, диалоговые платформы и open-source фреймворки — на чем делать бота новичку и профи

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

 

Шаблоны и готовые боты

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

 

Примеры: Just AI Solution Store, шаблоны чат-ботов BotHelp

 

 

С помощью готового бота можно, например, проводить собеседования по вакансиям, консультировать клиентов интернет-магазинов, проводить опросы, принимать заказы, записывать на консультации и др. В маркетплейсе готовых решений можно найти бота для узких задач ЖКХ, ритейла, e-commerce, финтеха и др. Для каждого решения готовы словари синонимов, основные интенты, логика сценария, интеграции с технологиями, отчетами аналитики и каналами.

 

Устроены готовые боты, как правило, достаточно просто, часто работают только на кнопках и реализуют несложную логику, без разветвленного сценария.

 

Преимущества

 

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

 

Недостатки

 

  • Ограниченный выбор. Не для каждой задачи можно найти шаблон или готового бота.
  • Потолок роста. Если бизнес и количество услуг будут расти, функционала шаблона может стать недостаточно. Кроме того, не для всех кейсов будет хватать возможностей кнопочного бота без ИИ.
  • Сложная или невозможная кастомизация. Бывает, что возникает необходимость доработать сценарий, но владелец решения не дает доступ к исходному коду, что делает доработки невозможными.

 

Конструкторы ботов

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

 

Примеры: визуальный конструктор для создания ботов с ИИ Aimylogic, ManyChat, SendPulse, Botmother

 

 

В отличие от готовых ботов и шаблонных решений в конструкторе пользователь сам формирует логику работы разговорного решения. Сценарий создается из визуальных блоков, в которых закладываются намерения пользователей (интенты), действия бота и ожидаемые ответные реакции пользователей. Все компоненты сценария соединяются между собой в нужной последовательности. Затем бота можно интегрировать с CRM и внешними системами, подключить к соцсетям и мессенджерам.

 

Конструкторы бывают no-code (все настраивается через визуальные блоки) и low-code (дополнительно есть возможность прокачивать бота с помощью кода: добавлять условия и переменные, обращаться к внешним серверам, прописывать стейты).

 

Несмотря на простоту инструмента, диалоговые решения, созданные на базе визуального конструктора, приносят очевидную пользу бизнесу. Так, умный обзвон помог сети ресторанов «Додо Пицца» заработать 6 млн руб., умный IVR повысил конверсию отдела продаж Domconnect на 27%, FAQ-бот разгрузил менеджеров интернет-магазина «МногоСна» от однотипных вопросов и снизил количество пропущенных диалогов со 100 до 5 в день.

 

Что можно создать в конструкторе

 

  • Различных чат-ботов: от FAQ-бота до бота для лидогенерации
  • Несложных ботов для обзвонов и IVR (входящей телефонии)
  • Навыки для голосовых ассистентов, например, Алисы от Яндекса или Маруси от VK

 

Преимущества

 

  • Решение из «коробки».  Не нужно самостоятельно прописывать интеграции и думать о хостинге (все хранится в окружениях поставщика решения).
  • Кастомизация. Сценарий продумывается и прописывается самостоятельно, что позволяет учесть все важные для конкретного проекта детали.
  • Низкий порог входа в разработку. Не нужно уметь программировать, а готового бота можно сделать значительно быстрее, чем при разработке с нуля на базе платформы или фреймворка (о них мы поговорим далее).

 

Чек-лист по выбору конструктора

 

Типы ботов. Можно создавать и голосовых помощников, и чат-ботов или только что-то одно?

 

No-code/low-code. Как насчет прокачать бота с помощью кода?

 

Количество каналов. Возможны ли подключения к разным мессенджерам? Чем больше доступных каналов, тем лучше: даже если Telegram не актуален сейчас, он может понадобиться позднее.

 

Наличие NLU-сервиса. Можно ли создать умного бота, понимающего естественную речь клиента? Например, в low-code конструктор Aimylogic встроено NLU-ядро, что позволяет обучать бота новым смыслам и фразам и сделать так, чтобы помощник мог решать 80% запросов пользователей самостоятельно, без привлечения оператора.

 

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

 

Интеграции. Позволяет ли конструктор работать с внешними системами и сервисами, готовые ли эти интеграции или их нужно прописывать самостоятельно?

 

Аналитика. Можно ли анализировать диалоги бота с пользователями и собирать данные в отчеты?

 

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

 

Диалоговые платформы

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

 

Примеры: JAICP, SAP Conversational AI, Intelligent Virtual Assistants (iVa) Platform

 

 

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

 

Другим важным отличием от конструкторов является модульность платформ, то есть возможность подключать внешние сервисы для улучшения работы бота, например, NLU-сервис или любые собственные сервисы по API: телефонию, ASR и TTS, любую CRM-систему, текстовые каналы и BI-систему.

 

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

 

Что можно создать в платформах

 

В платформе можно разработать бота почти любого уровня сложности. Назовем три самых распространенных решения:

  • Чат-боты техподдержки, которые понимают естественную речь, дают ответы из  базы знаний и при необходимости переводят диалог на оператора
  • Голосовые ассистенты и навыки для них с разветвленной логикой и чит-чатом
  • Виртуальные операторы для входящих и исходящих звонков, которые правильно реагируют на перебивания, вносят изменения в CRM-систему и перезванивают по запросу

 

Платформы являются лучшим инструментом для создания ботов в телефонном канале (для обзвонов или IVR). Они удобны тем, что инфраструктура работы с телефонией уже реализована. Тем не менее создать телефонного бота можно также на базе конструктора и open-source фреймворка.

 

Чек-лист по выбору платформы

 

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

 

Возможности NLU.  Позволяет ли NLU глубоко обучать сложные модели или можно использовать только простейшие паттерны? Есть ли в платформе API для подключения сторонних NLU? Так, платформа JAICP интегрирована с собственным NLU-ядром CAILA. Дообучать NLU можно прямо из интерфейса JAICP, также есть возможность загружать обучающие выборки, чтобы на старте проекта обучить бота лучше распознавать намерения клиентов.

 

Языки программирования. В зависимости от вендора сценарии можно разрабатывать на одном или нескольких общих языках программирования (Java, Javascript, Python, Kotlin) или только с помощью DSL. Вне зависимости от доступного языка очень ценно, когда внутри есть хороший SDK и грамотные абстракции. В JAICP логика сценария описывается с помощью DSL и вставок JavaScript, с которыми бот может обращаться к внешним системам, обрабатывать и синхронизировать данные, проводить вычисления и оставаться в контексте диалога. Если нужно больше возможностей — например, подключать произвольные библиотеки на Java, писать код на Kotlin с автодополнением в IDEA — можно объединить инфраструктуру JAICP с бесплатным фреймворком JAICF.

 

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

 

Документация и поддержка. Гораздо легче работать, когда документация — это хорошо структурированный раздел, где грамотно объясняются и внутренние термины, и разбираются кейсы.

 

Open-source фреймворки

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

 

Примеры: Deep Pavlov — фреймворк для Python, JAICF — для Kotlin, Jovo — для TypeScript.

 

 

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

 

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

 

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

 

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

 

Что можно создать с помощью фреймворка

 

Возможно реализовать бота любого уровня, функционал будет ограничен только языком программирования.

 

Использование фреймворка имеет смысл, если у компании есть аналоги сервисов, которые предоставляет платформа.

 

Преимущества

 

  • Базовые конструкции описаны вендором — модель диалога, правила перехода между стейтами, интеграции с NLU и т. д. Разработчику остается только описать логику самого бота. 
  • Нет ограничений по расширению моделей диалога, созданию новых конструкций и подключению любых доступных библиотек для интеграции с внешними системами.
  • Отладка бота выполняется как отладка обычной программы с возможностями локальной разработки, установки точек прерывания, вывода содержимого контекста и т.д.

 

Чек-лист по выбору фреймворка

 

  • Какие компоненты нужно подключить и какие требования предъявляются к производительности готового проекта? Убедитесь, что вы выбрали фреймворк от компании, которая имеет собственное ядро NLU, потому что это самый сложный и важный компонент в фреймворках для разговорного AI. 
  • Обязательно загляните на Github, чтобы узнать дату последнего обновления и убедиться, что фреймворк имеет постоянную поддержку и активное сообщество. Так вы можете быть абсолютно уверены, что найдете готовое решение и получите быструю помощь, если возникнет проблема. 
  • Перед началом работы определите, какая команда будет работать над проектом. Например, если в штате разработчики на Python или JavaScript, то целесообразно искать удобное для них решение. 

Подводим итоги

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

    Спасибо за заявку!

    Наш менеджер скоро свяжется с вами.

    Спасибо за заявку!

    Ждите тестовый звонок

    Отлично!

    Вы подписались на видеоподкаст «Conversations with…». Теперь вы первым узнаете о выходе нового эпизода!