Sobre o Serviço de Bot do AzureAbout Azure Bot Service

Observação

Este tópico se aplica à versão do SDK v3.This topic applies to SDK v3 release. Você pode encontrar a documentação para a versão mais recente do SDK v4 aqui.You can find the documentation for the latest version of the SDK v4 here.

O Serviço de Bot do Azure fornece ferramentas para criar, testar, implantar e gerenciar bots inteligentes em um só lugar.Azure Bot Service provides tools to build, test, deploy, and manage intelligent bots all in one place. Por meio da estrutura modular e extensível fornecida pelo SDK, os desenvolvedores podem usar modelos para criar bots que fornecem fala, compreensão de linguagem, perguntas e respostas e muito mais.Through the modular and extensible framework provided by the SDK, developers can leverage templates to create bots that provide speech, language understanding, question and answer, and more.

O que é um bot?What is a bot?

Um bot é um aplicativo com o qual os usuários interagem de maneira conversacional usando texto, gráficos (cartões) ou fala.A bot is an app that users interact with in a conversational way using text, graphics (cards), or speech. Pode ser uma simples caixa de diálogo de perguntas e respostas, ou um bot sofisticado que permite que as pessoas interajam com os serviços de maneira inteligente usando padrões de correspondência, rastreamento de estado e técnicas de inteligência artificial bem integradas aos serviços de negócios existentes.It may be a simple question and answer dialog, or a sophisticated bot that allows people to interact with services in an intelligent manner using pattern matching, state tracking and artificial intelligence techniques well-integrated with existing business services.

Criação de um botBuilding a bot

Você pode optar por usar seu ambiente de desenvolvimento favorito ou ferramentas de linha de comando para criar seu bot em C# ou Node.js.You can choose to use your favorite development environment or command line tools to create your bot in C# or Node.js. Nós fornecemos ferramentas para vários estágios de desenvolvimento de bots que você pode usar para construir seu bot para você começar.We provide tools for various stages of bot development that you can use to build your bot to get you started.

Visão geral do bot

PlanoPlan

Antes de escrever código, revise as diretrizes de design do  para obter práticas recomendadas e identifique as necessidades do seu bot.Before writing code, review the bot design guidelines for best practices and identify the needs for your bot. Você pode criar um bot simples ou incluir recursos mais sofisticados, como fala, compreensão de linguagem, QnA ou a capacidade de extrair conhecimento de diferentes fontes e fornecer respostas inteligentes.You can create a simple bot or include more sophisticated capabilities, such as speech, language understanding, QnA, or the ability to extract knowledge from different sources and provide intelligent answers.

Dica

Crie uma conta do Azure.Create Azure account.

Crie seu botBuild your bot

Seu bot é um serviço da web que implementa uma interface de conversação e se comunica com o serviço de bot.Your bot is a web service that implements a conversational interface and communicates with the Bot Service. Você pode criar essa solução em vários ambientes e idiomas e oferecemos ferramentas simples para o Visual Studio ou o Yeoman ou diretamente no portal do Azure.You can create this solution in any number of environments and languages and we offer easy getting started tools for Visual Studio or Yeoman or directly within the Azure portal. Veja abaixo algumas das ferramentas e serviços que você pode usar.Look below for some of the tools and services you can use.

Dica

Crie um bot usando o portal do Azure.Create a bot using Azure portal. Se necessário, adicione componentes, como:If needed, add components, such as:

  • Reconhecimento vocal LUIS.Language understanding LUIS.
  • Base de conhecimento do QnA Maker para responder a perguntas dos usuários.QnA Maker knowledge base to answer questions users ask.

Testar seu botTest your bot

Os bots estão aplicativos complexos, com muitas partes diferentes, trabalhem em conjunto.Bots are complex apps, with a lot of different parts working together. Como qualquer outro aplicativo complexo, isso pode levar a alguns erros interessantes ou fazer com que seu bot se comporte de maneira diferente do esperado.Like any other complex app, this can lead to some interesting bugs or cause your bot to behave differently than expected. Antes de publicar, teste seu bot.Before publishing, test your bot.

Dica

PublicarPublish

Quando estiver pronto, publique seu bot no Azure ou em seu próprio serviço da Web ou data center.When you are ready, publish your bot to Azure or to your own web service or data center. Você pode configurar uma implantação contínua que permite desenvolver seu bot localmente e é útil se o bot for colocado em um controle de origem como o GitHub ou o Visual Studio Team Services.You can set up continuous deployment that allows you to develop your bot locally and is useful if your bot is checked into a source control like GitHub or Visual Studio Team Services. Conforme você verifica suas alterações novamente em seu repositório de origem, suas alterações serão implantadas automaticamente no Azure.As you check your changes back into your source repository, your changes will automatically be deployed to Azure.

ConnectConnect         

Conecte seu bot a canais como Facebook, Messenger, Kik, Skype, Slack, Microsoft Teams, Telegram, texto/SMS, Twilio, Cortana e Skype para aumentar as interações e alcançar mais clientes.Connect your bot to channels such as Facebook, Messenger, Kik, Skype, Slack, Microsoft Teams, Telegram, text/SMS, Twilio, Cortana, and Skype to increase interactions and reach more customers.

AvaliarEvaluate

Use os dados coletados no portal do Azure para identificar oportunidades de melhorar os recursos e o desempenho do seu bot.Use the data collected in Azure portal to identify opportunities to improve the capabilities and performance of your bot. Você pode obter dados de nível de serviço e de instrumentação, como tráfego, latência e integrações.You can get service-level and instrumentation data like traffic, latency, and integrations. O Google Analytics também fornece relatórios no nível da conversa sobre dados de usuários, mensagens e canais.Analytics also provides conversation-level reporting on user, message, and channel data.

Sobre o Serviço de Bot do AzureAbout Azure Bot Service

Observação

Este tópico é para a versão mais recente do SDK (v4).This topic is for the latest release of the SDK (v4). Você pode encontrar conteúdo sobre a versão mais antiga do SDK (v3) aqui.You can find content for the older version of the SDK (v3) here.

O Serviço de Bot do Azure fornece ferramentas para criar, testar, implantar e gerenciar bots inteligentes em um só lugar.Azure Bot Service provides tools to build, test, deploy, and manage intelligent bots all in one place. Por meio do uso da estrutura modular e extensível fornecida pelo SDK, pelas ferramentas, pelos modelos e serviços de inteligência artificial, os desenvolvedores podem criar bots que utilizam fala, compreendem linguagem natural, lidam com perguntas e respostas e muito mais.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.

O que é um bot?What is a bot?

Os bots fornecem uma experiência na qual parece que estamos lidando com uma pessoa, ou pelo menos um robô inteligente, e não com uma máquina.Bots provide an experience that feels less like using a computer and more like dealing with a person - or at least an intelligent robot. Eles podem ser usados para transferir simples tarefas repetitivas, como fazer a reserva para um jantar ou coletar informações de perfil, para sistemas automatizados que não exigem uma intervenção humana direta.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. Os usuários conversam com um bot usando texto, cartões interativos e fala.Users converse with a bot using text, interactive cards, and speech. Uma interação de bot pode ser uma pergunta e resposta rápidas, ou pode ser uma conversa sofisticada que fornece acesso aos serviços de forma inteligente.A bot interaction can be a quick question and answer, or it can be a sophisticated conversation that intelligently provides access to services.

Os bots são muito semelhantes aos aplicativos Web modernos, residindo na Internet e usando APIs para enviar e receber mensagens.Bots are a lot like modern web applications, living on the internet and use APIs to send and receive messages. O que um bot oferece varia muito dependendo do tipo de bot.What's in a bot varies widely depending on what kind of bot it is. Um software de bot moderno se baseia em um conjunto de tecnologias e ferramentas para fornecer experiências cada vez mais complexas em uma ampla variedade de plataformas.Modern bot software relies on a stack of technology and tools to deliver increasingly complex experiences on a wide variety of platforms. No entanto, um bot simples pode apenas receber uma mensagem e ecoá-la para o usuário com muito pouco código envolvido.However, a simple bot could just receive a message and echo it back to the user with very little code involved.

Os bots podem fazer as mesmas coisas que outros tipos de software podem fazer: ler e gravar arquivos, usar bancos de dados e APIs e realizar tarefas computacionais normais.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. O que torna os bots únicos é o uso de mecanismos geralmente reservados à comunicação entre seres humanos.What makes bots unique is their use of mechanisms generally reserved for human-to-human communication.

O Serviço de Bot do Azure oferece:Azure Bot Service offers:

  • SDK do Bot Framework para o desenvolvimento de botsBot Framework SDK for developing bots
  • Ferramentas do Bot Framework para cobrir o fluxo de trabalho de desenvolvimento de bot de ponta a pontaBot Framework Tools to cover end-to-end bot development workflow
  • Serviço do Bot Framework (BFS) para enviar e receber mensagens e eventos entre bots e canaisBot Framework Service (BFS) to send and receive messages and events between bots and channels
  • Implantação do bot e configuração do canal no AzureBot deployment and channel configuration in Azure

Além disso, os bots podem usar outros serviços do Azure, como:Additionally, bots may use other Azure services, such as:

  • Serviços Cognitivos do Azure para compilar aplicativos inteligentesAzure Cognitive Services to build intelligent applications
  • Armazenamento do Azure para a solução de armazenamento em nuvemAzure Storage for cloud storage solution

Criação de um botBuilding a bot

O Serviço de Bot do Azure oferece um conjunto integrado de ferramentas e serviços para facilitar esse processo.Azure Bot Service offers an integrated set of tools and services to facilitate this process. Escolha seu ambiente de desenvolvimento favorito ou ferramentas de linha de comando para criar seu bot.Choose your favorite development environment or command line tools to create your bot. Existem SDKs para C#, JavaScript e Typescript.SDKs exist for C#, JavaScript, and Typescript. (Os SDKs para Java e Python estão em desenvolvimento.) Nós fornecemos ferramentas para vários estágios de desenvolvimento de bot para ajudá-lo a projetar e criar bots.(SDKs for Java and Python are under development.) We provide tools for various stages of bot development to help you design and build bots.

Visão geral do bot

PlanoPlan

Assim como acontece com qualquer tipo de software, é importante que o processo de criação de um bot bem-sucedido tenha uma compreensão detalhada dos objetivos, processos e necessidades dos usuários.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. Antes de escrever código, revise as diretrizes de design do  para obter práticas recomendadas e identifique as necessidades do seu bot.Before writing code, review the bot design guidelines for best practices and identify the needs for your bot. Você pode criar um bot simples ou incluir recursos mais sofisticados, como fala, compreensão de linguagem natural ou respostas a perguntas.You can create a simple bot or include more sophisticated capabilities such as speech, natural language understanding,and question answering.

CompilaçãoBuild

Seu bot é um serviço Web que implementa uma interface de conversação e se comunica com o Serviço do Bot Framework para enviar e receber mensagens e eventos.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. O Serviço do Bot Framework é um dos componentes do Serviço de Bot do Azure.Bot Framework Service is one of the components of the Azure Bot Service. Você pode criar bots em quantos ambientes e idiomas desejar.You can create bots in any number of environments and languages. Você pode iniciar o desenvolvimento de bot no portal do Azure ou usar modelos de [C# | JavaScript] para o desenvolvimento local.You can start your bot development in the Azure portal, or use [C# | JavaScript] templates for local development.

Como parte do Serviço de Bot do Azure, oferecemos componentes adicionais que você pode usar para estender a funcionalidade do seu botAs part of the Azure Bot Service, we offer additional components you can use to extend your bot's functionality

RecursoFeature DESCRIÇÃODescription LinkLink
Adicionar processamento de idioma naturalAdd natural language processing Habilite seu bot para entender a linguagem natural, entender os erros de ortografia, usar a fala e reconhecer a intenção do usuárioEnable your bot to understand natural language, understand spelling errors, use speech, and recognize the user's intent Como usar o LUISHow to use LUIS
Responder a perguntasAnswer questions Adicionar uma base de conhecimento para responder a perguntas que os usuários fazem de forma mais natural e conversacionalAdd a knowledge base to answer questions users ask in a more natural, conversational way Como usar o QnA MakerHow to use QnA Maker
Gerenciar vários modelosManage multiple models Se você estiver usando mais de um modelo, como LUIS e QnA Maker, determine de forma inteligente quando usar qual durante a conversa do seu botIf using more than one model, such as for LUIS and QnA Maker, intelligently determine when to use which one during your bot's conversation Ferramenta de expediçãoDispatch tool
Adicionar botões e cartõesAdd cards and buttons Aprimore a experiência do usuário com mídia diferente de texto, como gráficos, menus e cartõesEnhance the user experience with media other than text, such as graphics, menus, and cards Como adicionar cartõesHow to add cards

Observação

A tabela acima não é uma lista abrangente.The table above is not a comprehensive list. Explore os artigos à esquerda, começando com enviando mensagens, para mais funcionalidades do bot.Explore the articles on the left, starting with sending messages, for more bot functionality.

Além disso, fornecemos ferramentas de linha de comando para ajudá-lo a criar, gerenciar e testar os ativos do bot.Additionally, we provide command line tools to help you to create, manage, and test bot assets. Essas ferramentas podem gerenciar um arquivo de configuração do bot, configurar aplicativos LUIS, criar uma base de conhecimento de QnA, simular uma conversa e muito mais.These tools can manage a bot configuration file, configure LUIS apps, build a QnA knowledge base, mock a conversation, and more. Você pode encontrar mais detalhes no arquivo Leiame das ferramentas de linha de comando.You can find more details in the command line tools readme.

Você também tem acesso a vários exemplos que demonstram muitos dos recursos disponíveis por meio do SDK.You also have access to a variety of samples that showcase many of the capabilities available through the SDK. Eles são excelentes para desenvolvedores que buscam um ponto de partida com mais recursos.These are great for developers looking for a more feature rich starting point.

TesteTest

Os bots estão aplicativos complexos, com muitas partes diferentes, trabalhem em conjunto.Bots are complex apps, with a lot of different parts working together. Como qualquer outro aplicativo complexo, isso pode levar a alguns erros interessantes ou fazer com que seu bot se comporte de maneira diferente do esperado.Like any other complex app, this can lead to some interesting bugs or cause your bot to behave differently than expected. Antes de publicar, teste seu bot.Before publishing, test your bot. Fornecemos várias maneiras de testar bots antes que eles sejam liberados para uso:We provide several ways to test bots before they are released for use:

  • Teste seu bot localmente com o emulador.Test your bot locally with the emulator. O emulador do Bot Framework é um aplicativo autônomo que não só fornece uma interface de chat, mas também ferramentas de depuração e para fazer perguntas para ajudar a entender como e porque seu bot faz o que ele faz.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. O emulador pode ser executado localmente juntamente com seu aplicativo de bot em desenvolvimento.The emulator can be run on a locally alongside your in-development bot application.

  • Teste o bot na Web.Test your bot on the web. Uma vez configurado no portal do Azure, seu bot também pode ser acessado através de uma interface de chat da Web.Once configured through the Azure portal your bot can also be reached through a web chat interface. A interface de chat da Web é uma ótima maneira de conceder acesso ao bot para testadores e outras pessoas que não têm acesso direto ao código de execução do bot.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.

PublicarPublish

Quando estiver pronto para disponibilizar seu bot na Web, publique seu bot no Azure ou em seu próprio serviço Web ou data center.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. A primeira etapa para o bot ganhar vida em seu site, ou dentro de canais de chat, é ter um endereço na Internet pública.Having an address on the public internet is the first step to your bot coming to life on your site, or inside chat channels.

ConnectConnect         

Conecte seu bot a canais como Facebook, Messenger, Kik, Skype, Slack, Microsoft Teams, Telegram, texto/SMS, Twilio, Cortana e Skype.Connect your bot to channels such as Facebook, Messenger, Kik, Skype, Slack, Microsoft Teams, Telegram, text/SMS, Twilio, Cortana, and Skype. O Bot Framework faz a maior parte do trabalho necessário para enviar e receber mensagens de todas essas diferentes plataformas. Seu aplicativo bot recebe um fluxo de mensagens unificado e normalizado, independentemente do número e tipo de canais aos quais ele está conectado.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. Para obter informações sobre como adicionar canais, confira o tópico canais.For information on adding channels, see channels topic.

AvaliarEvaluate

Use os dados coletados no portal do Azure para identificar oportunidades de melhorar os recursos e o desempenho do seu bot.Use the data collected in Azure portal to identify opportunities to improve the capabilities and performance of your bot. Você pode obter dados de nível de serviço e de instrumentação, como tráfego, latência e integrações.You can get service-level and instrumentation data like traffic, latency, and integrations. O Google Analytics também fornece relatórios no nível da conversa sobre dados de usuários, mensagens e canais.Analytics also provides conversation-level reporting on user, message, and channel data. Para obter mais informações, confira como reunir as análises.For more information, see how to gather analytics.

Próximas etapasNext steps

Confira estes estudos de caso de bots ou clique no link abaixo para criar um bot.Check out these case studies of bots or click on the link below to create a bot.