Общие сведения о службе Azure BotAbout Azure Bot Service

Область применения: дапакет SDK версии 4 да пакет SDK версии 3 APPLIES TO: yesSDK v4 yesSDK v3

Служба Azure Bot и Bot Framework предоставляют средства для сборки, тестирования, развертывания и администрирования интеллектуальных ботов в одной среде.Azure Bot Service and Bot Framework provide tools to build, test, deploy, and manage intelligent bots all in one place. Благодаря модульной и расширяемой платформе, предоставляемой пакетом SDK, средствами, шаблонами и службами искусственного интеллекта, разработчики могут создавать боты с поддержкой речи, распознавания естественного языка, обработки вопросов и ответов и многих других возможностей.Through the use of modular and extensible framework provided by the SDK, tools, templates, and AI services developers can create bots that use speech, understand natural language, handle questions and answers, and more.

Что такое бот?What is a bot?

Боты обеспечивают взаимодействие, больше похожее не на работу с компьютером, а на общение с живым человеком, ну или хотя бы с очень умным роботом.Bots provide an experience that feels less like using a computer and more like dealing with a person - or at least an intelligent robot. Они помогут вам перенести на автоматизированные системы простые и повторяющиеся задачи, такие как резервирование столиков в ресторане или сбор сведений для профиля без необходимости прямого участия человека.They can be used to shift simple, repetitive tasks, such as taking a dinner reservation or gathering profile information, on to automated systems that may no longer require direct human intervention. Пользователи взаимодействуют с ботом, используя текстовые сообщения, интерактивные карты и речь.Users converse with a bot using text, interactive cards, and speech. Взаимодействие с ботом может ограничиваться простыми вопросами и ответами или представлять собой сложное интеллектуальное общение с предоставлением доступа к службам.A bot interaction can be a quick question and answer, or it can be a sophisticated conversation that intelligently provides access to services.

Боты можно считать современной версией веб-приложений. Они "живут" в Интернете и используют интерфейсы API для отправки и получения сообщений.Bots are a lot like modern web applications, living on the internet and use APIs to send and receive messages. Содержимое бота может быть самым разным в зависимости от его типа и назначения.What's in a bot varies widely depending on what kind of bot it is. Программное обеспечение современных ботов опирается на сложный набор технологий и средств, позволяющих предоставлять все более сложные возможности на широком спектре платформ.Modern bot software relies on a stack of technology and tools to deliver increasingly complex experiences on a wide variety of platforms. Но могут существовать и простейшие боты, которые умеют лишь получать текстовое сообщение и возвращать его пользователю. Для таких достаточно лишь пары строк кода.However, a simple bot could just receive a message and echo it back to the user with very little code involved.

Боты могут выполнять все те же действия, что и другие виды программного обеспечения: читать и сохранять файлы, использовать интерфейсы API и базы данных, производить вычисления.Bots can do the same things other types of software can do - read and write files, use databases and APIs, and do the regular computational tasks. Уникальность ботов заключается в том, что кроме этого они используют механизмы, традиционно задействованные для обмена данными между людьми.What makes bots unique is their use of mechanisms generally reserved for human-to-human communication.

Компоненты служб Azure Bot и Bot Framework:Azure Bot Service and Bot Framework offer:

  • пакет SDK Bot Framework для разработки ботов;Bot Framework SDK for developing bots
  • средства Bot Framework для поддержки всех этапов разработки ботов;Bot Framework Tools to cover end-to-end bot development workflow
  • службу Bot Framework для отправки и получения сообщений и событий между ботами и каналами;Bot Framework Service (BFS) to send and receive messages and events between bots and channels
  • возможность настройки развертывания и канала в Azure.Bot deployment and channel configuration in Azure

Кроме того, боты могут использовать другие службы Azure, такие как:Additionally, bots may use other Azure services, such as:

  • Azure Cognitive Services для создания интеллектуальных приложений;Azure Cognitive Services to build intelligent applications
  • служба хранилища Azure в качестве облачного хранилища.Azure Storage for cloud storage solution

Сборка ботаBuilding a bot

Службы Azure Bot и Bot Framework предлагают интегрированный набор средств и служб для ускорения этого процесса.Azure Bot Service and Bot Framework offer an integrated set of tools and services to facilitate this process. Выберите любую среду разработки или средства командной строки для создания бота.Choose your favorite development environment or command line tools to create your bot. Существуют пакеты SDK для C#, JavaScript и Typescript.SDKs exist for C#, JavaScript, and Typescript. (Пакеты SDK для Java и Python находятся на стадии разработки.) Мы предоставляем средства, помогающие на разных этапах проектирования и разработки ботов.(SDKs for Java and Python are under development.) We provide tools for various stages of bot development to help you design and build bots.

Обзор бота

ПланPlan

Как и с любым другим типом программного обеспечения, для успешного создания бота важно хорошее понимание всех целей, процессов и потребностей пользователей.As with any type of software, having a thorough understanding of the goals, processes and user needs is important to the process of creating a successful bot. Прежде чем писать код, просмотрите руководство по разработке  бота, чтобы ознакомиться с рекомендациями и определить потребности своего бота.Before writing code, review the bot design guidelines for best practices and identify the needs for your bot. Вы можете создать бот как с простыми, так и более сложными возможностями, например распознаванием речи или естественного языка и (или) с возможностью отвечать на вопросы.You can create a simple bot or include more sophisticated capabilities such as speech, natural language understanding,and question answering.

СозданиеBuild

Бот — это веб-служба, которая реализует интерфейс для общения, а также взаимодействует со службой Azure Bot для отправки и получения сообщений и событий.Your bot is a web service that implements a conversational interface and communicates with the Bot Framework Service to send and receive messages and events. Служба Bot Framework — это один из компонентов службы Azure Bot.Bot Framework Service is one of the components of the Azure Bot Service and Bot Framework. Боты можно создавать в большом количестве языков и сред.You can create bots in any number of environments and languages. Вы можете начать разработку бота на портале Azure или применить шаблоны [C# | JavaScript] для локальной разработки.You can start your bot development in the Azure portal, or use [C# | JavaScript] templates for local development.

В составе служб Azure Bot и Bot Framework мы предлагаем дополнительные компоненты, которые расширяют функции бота.As part of the Azure Bot Service and Bot Framework, we offer additional components you can use to extend your bot's functionality

ФункцияFeature ОПИСАНИЕDescription СсылкаLink
Добавление возможности обработки естественного языкаAdd natural language processing Включите в боте возможность распознавать естественные языки, распознавать орфографические ошибки, использовать обработку речи и распознавать намерения пользователя.Enable your bot to understand natural language, understand spelling errors, use speech, and recognize the user's intent Использование LUISHow to use LUIS
Ответы на вопросыAnswer questions Добавьте базу знаний, чтобы отвечать на вопросы в более естественной разговорной форме.Add a knowledge base to answer questions users ask in a more natural, conversational way Использование QnA MakerHow to use QnA Maker
Объединение нескольких моделейManage multiple models При использовании нескольких моделей, например для LUIS и QnA Maker, приложение само определяет, когда и какую модель следует использовать во время диалога.If using more than one model, such as for LUIS and QnA Maker, intelligently determine when to use which one during your bot's conversation Средство DispatchDispatch tool
Добавление карточек и кнопокAdd cards and buttons Расширьте возможности взаимодействия с пользователем, чтобы кроме текста можно было использовать элементы мультимедиа, например изображения, меню и карточки.Enhance the user experience with media other than text, such as graphics, menus, and cards Добавление карточекHow to add cards

Примечание

В таблице выше приведен неполный список доступных компонентов.The table above is not a comprehensive list. Для дополнительных сведений о функциональности бота просмотрите статьи слева, начиная с отправки сообщений.Explore the articles on the left, starting with sending messages, for more bot functionality.

Кроме того, мы предоставляем средства командной строки для создания, администрирования и проверки ресурсов ботов.Additionally, we provide command line tools to help you to create, manage, and test bot assets. Эти средства настраивать приложения LUIS, создавать базы знаний QnA, создавать модели отправки между компонентами, имитировать беседу и многое другое.These tools can configure LUIS apps, build a QnA knowledge base, build models to dispatch between components, mock a conversation, and more. Дополнительные сведения см. в файле readme для средств командной строки.You can find more details in the command line tools readme.

Также у вас есть доступ к различным примерам, которые демонстрируют многие возможности, доступные через пакет SDK.You also have access to a variety of samples that showcase many of the capabilities available through the SDK. Это удобно для разработчиков, которые предпочитают начинать работу сразу с широким набором функций.These are great for developers looking for a more feature rich starting point.

ТестTest

Боты — это сложные приложения, где работают вместе много различных частей.Bots are complex apps, with a lot of different parts working together. Как и любое другое сложное приложение, бот может иметь некоторые нестандартные ошибки или он может вести себя иначе, чем ожидалось.Like any other complex app, this can lead to some interesting bugs or cause your bot to behave differently than expected. Поэтому перед публикацией протестируйте бот.Before publishing, test your bot. Мы предоставляем несколько способов проверить боты перед выводом в общий доступ.We provide several ways to test bots before they are released for use:

  • Тестирование в локальной среде с помощью эмулятора.Test your bot locally with the emulator. Bot Framework Emulator — это автономное приложение с интерфейсом для чата, которое содержит дополнительные средства отладки и опроса, позволяющие обнаружить проблемы с ботом и выявить их причины.The Bot Framework Emulator is a stand-alone app that not only provides a chat interface, but also debugging and interrogation tools to help understand how and why your bot does what it does. Эмулятор можно запускать локально в той же системе, что и разрабатываемый бот.The emulator can be run locally alongside your in-development bot application.

  • Проверка бота в Интернете.Test your bot on the web. Завершив настройку бота через портал Azure, вы сможете обратиться к нему через веб-интерфейс чата.Once configured through the Azure portal your bot can also be reached through a web chat interface. Веб-интерфейс чата — это отличный способ предоставить доступ к боту инженерам-испытателям и другим заинтересованным лицам, у которых нет прямого доступа к исполняемому коду бота.The web chat interface is a great way to grant access to your bot to testers and other people who do not have direct access to the bot's running code.

  • Выполните модульное тестирование бота с помощью пакета SDK для Bot Framework с обновлением, вышедшем в июле.Unit Test your bot with the July update of Bot Framework SDK.

ПубликацияPublish

Когда все будет готово для публикации бота, передайте его содержимое в Azure или в собственной веб-службе или центре обработки данных.When you are ready for your bot to be available on the web, publish your bot to Azure or to your own web service or data center. Постоянный адрес в общедоступном сегменте Интернета будет первым шагом к активному использованию бота на вашем сайте или в специализированных каналах для чата.Having an address on the public internet is the first step to your bot coming to life on your site, or inside chat channels.

ПодключениеConnect         

Подключите бот к таким каналам, как Facebook, Messenger, Kik, Skype, Slack, Microsoft Teams, Telegram, текстовым и SMS-сообщениям, Twilio, Cortana и Skype.Connect your bot to channels such as Facebook, Messenger, Kik, Skype, Slack, Microsoft Teams, Telegram, text/SMS, Twilio, Cortana, and Skype. Платформа Bot Framework берет на себя основную часть работы по отправке и получению сообщений на всех этих платформах. Ваше приложение всегда получит унифицированный и нормализованный поток сообщений независимо от количества и типа каналов, к которым оно подключено.Bot Framework does most of the work necessary to send and receive messages from all of these different platforms - your bot application receives a unified, normalized stream of messages regardless of the number and type of channels it is connected to. Сведения о добавлении каналов, см. в разделе о каналах.For information on adding channels, see channels topic.

EvaluateEvaluate

Используйте данные, собранные на портале Azure, чтобы определить возможности для повышения производительности бота.Use the data collected in Azure portal to identify opportunities to improve the capabilities and performance of your bot. Вы можете получить данные уровня службы и инструментирования, например трафик, задержку и интеграцию.You can get service-level and instrumentation data like traffic, latency, and integrations. Аналитика также поддерживает отчеты уровня общения для данных пользователя, сообщений и каналов.Analytics also provides conversation-level reporting on user, message, and channel data. Дополнительные сведения см. в разделе о сборе аналитики.For more information, see how to gather analytics.

Дополнительная информацияNext steps

Ознакомьтесь с примерами внедрения ботов или щелкните приведенную ниже ссылку, чтобы сразу приступить к созданию своего бота.Check out these case studies of bots or click on the link below to create a bot.