Принцип работы Службы Azure Bot
В этом уроке вы узнаете, как использовать Bot Framework Composer для разработки ботов в интерактивном визуальном конструкторе. Вы узнаете, как расширить бот с помощью возможностей искусственного интеллекта и языка в Bot Framework Composer. Вы также узнаете, как создать бота, расширить возможности бота и опубликовать бота в Служба Bot Azure.
Что такое архитектура пакета бота?
Служба Azure Bot и Bot Framework поддерживают полный процесс создания ботов. Этот процесс включает проектирование, сборку, тестирование и публикацию задач.
Разработчики ботов используют Bot Framework Composer для создания пакета бота. Этот пакет содержит логику бота и сведения об интеграции и подключениях бота, в том числе входных каналах и проверке подлинности. Пакет бота также содержит пользовательский код бота. Служба Bot Azure размещает пакет бота. Вы можете рассматривать Azure Bot как веб-приложение Azure с несколькими дополнительными функциями, предоставляющими основную конечную точку для взаимодействия с ботом. С помощью службы Azure Bot пользователи могут взаимодействовать с ботом. В то же время он может управлять входящими и исходящими взаимодействиями REST для внешних каналов и других интеграций.
Примечание.
Пакет бота также можно обслуживать, используя пакет SSDK Bot Framework через Visual Studio или Visual Studio Code.
Выберите тип бота, который требуется создать.
Прежде чем приступать к созданию бота, необходимо решить, какой вид бота вы будете создавать. Кроме того, необходимо ответить на следующие вопросы.
Для чего используется ваш бот? Определите тип бота, который требуется создать. Планирование помогает определить необходимые функциональные возможности.
Какие проблемы этот бот должен решать? Будьте ясны об этом ответе. Решение проблем клиентов является основной задачей при создании ботов. Следует также учитывать такие факторы, как решение проблемы пользователя лучше, проще или быстрее, чем в альтернативной ситуации.
Кто использует бот? Если вы создаете бота, можно с уверенностью предположить, что вы надеетесь, что он будет востребован пользователями. Разные клиенты ожидают разные возможности пользователей. Знание аудитории помогает определить, насколько сложным должен быть дизайн бота. Обдумайте, какие языки необходимо реализовать для бота.
Совет
Таким образом, хорошее взаимодействие с пользователем должно быть приоритетом номер один при разработке бота.
Где используется бот? Необходимо решить, на каких платформах будет работать бот. Например, бот, предназначенный для запуска на мобильном устройстве, может потребовать таких функций, как отправка сообщений службы коротких сообщений (SMS).
Внимание
Процесс публикации отличается для разных платформ.
Разработка основных функций Bot в Bot Framework Composer
Bot Framework Composer можно использовать для проектирования, сборки, расширения и тестирования ботов. Bot Framework Composer — это холст для редактирования визуальных элементов для создания ботов. Обычно это начальная точка процесса создания Службы Azure Bot.
Визуальный конструктор Composer можно использовать для интуитивно понятной разработки основных функциональных возможностей ботов. Ее можно использовать в следующих целях:
- Добавление возможностей для распознавания естественного языка в бота с помощью QnA Maker. Вы можете использовать такие возможности, как служба аналитики Распознавание речи (LUIS), QnA или часто задаваемые вопросы.
- Создайте ответы на варианты текста и речи для бота с помощью шаблонов создания языка.
- Создание ботов на нескольких языках.
- Протестируйте бот непосредственно внутри Composer с помощью внедренных Веб-чат.
- Публикация ботов в Службе приложений Azure и Функциях Azure.
- Интегрирование внешних служб, таких как приложения LUIS, и базы знаний QnA Maker.
Создание диалоговых окон и поток общения
Диалоговые окна управляют беседой, которые бот ведет с пользователями. Диалоговые окна содержат шаблоны ответов на создание языка, определяющие ответы бота и инструкции по выполнению задач бота. Например, при резервировании ужинов в ресторане или создании элемента календаря Outlook.
Многие диалоговые окна являются линейными, то есть представляют собой простую последовательность вопросов и ответов. Но некоторые диалоги используют расширенную логику диалога. Такая логика может включать ветвление, циклы, а также динамические и адаптивные диалоговые окна. Эти типы диалоговых окон обычно используют внешние данные, сохраняют данные диалога с отслеживанием состояния и делают необходимые прерывания в диалоге.
Включение внешних потоков с навыками и другими ботами
Также есть возможность создать более сложные потоки общения, импортировав в свой бот навыки Composer, пакеты NuGet и даже другие боты Службы Azure Bot. Вы можете создать вложенные наборы ботов, чтобы создать модульный и многократно используемый набор функций бота. Эти небольшие модульные компоненты можно объединить в несколько сочетаний, чтобы предоставить набор возможностей для разных родительских ботов. Например, у вас может быть бот, обрабатывающий поток диалога для управления записями календаря с входными данными и ответами, такими как, "когда у меня следующее совещание?" или "Требуется ли комната для совещаний?". При упаковывании бота, как навык, вы можете легко интегрировать навык (и связанную с ним возможность обработки беседы) в любого другого создаваемого вами бота.
Использование карточек, изображений и кнопок для улучшения диалогового окна
Вы можете использовать определенные визуальные и интерактивные инструменты для улучшения беседы бота с пользователями. Используйте карта для создания содержимого с форматированным текстом, изображением и кнопками, чтобы обеспечить более интерактивный интерфейс, чем обычный текст. Bot Framework Composer поддерживает несколько типов карточек, включая эскизы, данные для входа, аудио и видео.
Расширенные возможности LUIS и QnA Maker для распознавания и анализа речи
Luis обеспечивает обработку естественного языка с полной системой управления намерениями и объектами. Вы можете интегрировать ранее созданные приложения LUIS или создать новые приложения в Composer, чтобы добавить в бот надежные возможности распознавания естественного языка.
QnA Maker — это облачная служба. Используйте ее для извлечения пар, состоящих из вопроса и ответа, из документов и веб-сайтов с часто задаваемыми вопросами. Затем эти сведения можно импортировать в базу знаний, которую специалисты смогут проанализировать вручную. Вы можете интегрировать бота с получившейся в результате базой знаний. Эта интеграция позволяет найти наиболее подходящий ответ для любого заданного ввода естественного языка.
Тестирование бота с помощью Веб-чата
Вы можете протестировать работу бота непосредственно в Composer с помощью Веб-чата. Веб-чат запускает бота в локальной среде выполнения. Это означает, что вы можете тестировать бота локально на компьютере, не публикуя его в Azure. Веб-чат имеет полные возможности отладки, записи транскрибирования и проверки состояния бота для тестирования всех аспектов возможностей бота.
Добавление ПО промежуточного слоя и расширение возможностей бота с помощью пакета SSDK Bot Framework
Чтобы изменить исходный код бота и расширить функциональные возможности бота, можно использовать Visual Studio, Visual Studio Code или поддерживаемую интегрированную среду разработки с помощью пакета SDK Bot Framework. Собирайте и публикуйте боты в качестве пакетов NuGet. Импорт этих пакетов в Composer позволит упростить интеграцию. Вы можете легко перемещаться между Composer и пакетом SDK Bot Framework на протяжении всего жизненного цикла разработки ботов. Такая мобильность гарантирует, что вы всегда будете использовать наиболее эффективный инструмент для решения любой задачи.
Публикация бота в Azure
Служба Azure Bot поддерживает функциональные возможности ботов в Azure. Публикуйте боты непосредственно из интерфейса Composer, создавая в Composer комплексную среду разработки.
Служба Azure Bot размещает бот на ресурсе веб-приложения Azure. Этот ресурс содержит код, логику и базовые конечные точки HTTP RESTFUL для подключения к внешним ресурсам. Служба Azure Bot также предоставляет готовые каналы для обслуживания ботов. Каналы службы ботов предоставляют слой адаптера, который адаптирует взаимодействие ботов к другому протоколу службы чата, например Facebook, Slack, Teams, телефонии и т. д.
При публикации из Composer можно также создавать или импортировать зависимые ресурсы Azure. К таким ресурсам относятся LUIS, QnA Maker, Azure Cosmos DB, Application Insights и Хранилище BLOB-объектов.