Como funciona o Serviço de Bot do Azure

Concluído

Nesta unidade, você vai explorar o uso do Bot Framework Composer para ajudar a criar bots em um designer visual interativo. Você aprenderá a estender seu bot com funcionalidades de IA e de linguagem no Bot Framework Composer e obterá uma compreensão básica de como criar um bot, estender as funcionalidades dele e publicá-lo no Serviço de Bot do Azure.

Qual é a arquitetura de um pacote de bot?

O Serviço de Bot do Azure e o Bot Framework dão suporte ao processo completo de criação de bots. O processo com suporte inclui tarefas de design, criação, teste e publicação.

Os desenvolvedores de bot usam o Bot Framework Composer para criar um pacote de bots. Esse pacote contém a lógica de bot e os detalhes sobre integrações e conexões de bot, incluindo canais de entrada e autenticação. O pacote de bot também contém o código de bot personalizado. O pacote de bot é hospedado pelo Serviço de Bot do Azure. Você pode pensar em um Bot do Azure como um Aplicativo Web do Azure com alguns recursos extras que fornece o ponto de extremidade primário para interação com o bot. Por meio do Serviço de Bot, os usuários podem interagir com o bot. Enquanto isso, ele pode gerenciar interações REST de entrada e de saída para canais externos e outras integrações.

Observação

O pacote de bot também pode ser fornecido com o uso do SDK do Bot Framework por meio do Visual Studio ou do Visual Studio Code.

Diagram of the Azure Bot Service architecture.

Considere o tipo de bot que deseja criar

Antes de criar seu bot, você precisa decidir que tipo de bot está criando. Ao decidir sobre isso, considere as seguintes perguntas:

  • Para qual finalidade você usará o bot? Determine o tipo de bot que deseja criar. O planejamento ajuda a definir as funcionalidades que você deseja implementar.

  • Quais problemas o bot pretende resolver? Seja claro sobre isso. A solução de problemas para os clientes é uma consideração principal ao criar bots. Você também deve considerar aspectos que incluem como resolver o problema do usuário melhor, com mais facilidade ou rapidez do que as experiências alternativas.

  • Quem usará o bot? Se você está criando um bot, é seguro pressupor que você esteja esperando que os usuários o usem. Diferentes clientes terão diferentes expectativas de experiências do usuário. Saber quem é seu público-alvo ajudará a determinar a complexidade do design do bot. Considere os idiomas nos quais o bot deve ser implementado.

    Dica

    Garantir uma ótima experiência do usuário deve ser a sua principal prioridade durante a criação de um bot.

  • Onde o bot será usado? Você precisa decidir em quais plataformas o bot será executado. Por exemplo, um bot projetado para ser executado em um dispositivo móvel pode exigir recursos como envio de SMS.

    Importante

    A experiência de publicação varia de acordo com a plataforma.

Desenvolver a funcionalidade principal do bot no Bot Framework Composer

Use o Composer para projetar, criar, estender e testar um bot. O Composer é uma tela de edição visual para a criação de bots. Normalmente, é o ponto de partida para o processo de criação do Serviço de Bot do Azure.

Use o designer visual do Composer para desenvolver intuitivamente a funcionalidade principal do bot. Você pode usá-lo para:

  • Adicione funcionalidades de reconhecimento de linguagem natural ao bot com o QnA Maker. Use funcionalidades como o LUIS, o QnA ou perguntas frequentes.
  • Crie respostas de variação de texto e fala para seu bot usando modelos de geração de linguagem.
  • Crie bots em vários idiomas.
  • Teste-o diretamente no Composer usando o Webchat.
  • Publique bots no Serviço de Aplicativo do Azure e no Azure Functions.
  • Integre serviços externos, como aplicativos LUIS e bases de dados de conhecimento do QnA Maker.

Criar diálogos e fluxo de conversa

Os diálogos controlam as conversas que um bot tem com os usuários. Os diálogos contêm modelos de resposta de geração de linguagem que definem as respostas do bot e as instruções sobre como um bot executará tarefas, como fazer reservas de jantar em um restaurante ou criar um item de calendário do Outlook.

Muitos diálogos são lineares, com uma sequência simples de perguntas e respostas. Mas alguns também incluem uma lógica de conversa avançada. Essa lógica pode incluir ramificação, loop e diálogos dinâmicos e adaptativos baseados em contexto. Esses tipos de diálogos normalmente usam dados externos, mantêm dados de conversa com estado e fazem interrupções necessárias na conversa.

Incluir fluxos externos com habilidades e outros bots

Você pode criar fluxos de conversa mais complexos importando habilidades do Composer, pacotes NuGet e, até mesmo, outros bots do Serviço de Bot do Azure para o seu bot. Você pode criar uma série aninhada de bots para criar um conjunto mais modular e reutilizável de funcionalidades de bot. Combine esses componentes menores e modulares de várias formas para fornecer um conjunto de funcionalidades para diferentes bots pai. Por exemplo, você pode ter um bot que lida com o fluxo de conversa em relação ao gerenciamento de entradas de calendário, com entradas e respostas como “quando é meu próximo encontro?” ou “Você precisa de uma sala de reunião?”. Ao empacotar o bot como uma habilidade, será possível integrar facilmente a habilidade (e o recurso de tratamento de conversa de calendário associado) em qualquer outro bot criado por você.

Usar cartões, imagens e botões para aprimorar a conversa

Use vários métodos visuais e interativos para aprimorar a conversa para os usuários do seu bot. Use cartões para criar conteúdo baseado em botão, rich text e imagem a fim de proporcionar uma experiência mais interativa do que a de um texto sem formatação. O Composer oferece vários tipos de cartões, incluindo miniatura, credenciais, áudio e vídeo.

Estender a inteligência e o reconhecimento de linguagem com o LUIS e o QnA Maker

O LUIS fornece um processamento de linguagem natural com um sistema completo de gerenciamento de entidades e intenções. Você pode integrar os aplicativos LUIS criados anteriormente ou criar aplicativos no Composer para adicionar funcionalidades robustas de reconhecimento de linguagem natural ao bot.

O QnA Maker é um serviço baseado em nuvem. Use-o para extrair pares de perguntas e respostas de documentos e sites existentes no estilo de perguntas frequentes. Em seguida, você pode importar essas informações para uma base de dados de conhecimento que podem ser coletadas manualmente pelos especialistas de conhecimento. Integre seu bot a uma base de dados de conhecimento do QnA. Essa integração permite encontrar a resposta mais apropriada para qualquer entrada de linguagem natural especificada.

Testar o bot com o Webchat

Teste a funcionalidade do bot diretamente no Composer com o Webchat. O Webchat executa o bot em um runtime de bot local, o que significa que você pode testá-lo localmente no computador de desenvolvimento sem publicá-lo no Azure. O Webchat conta com funcionalidades completas de depuração, gravação de transcrição e inspeção de estado do bot para testar todos os aspectos das funcionalidades do bot.

Adicionar um middleware e estender a funcionalidade do bot com o SDK do Bot Framework

Use o Visual Studio, o Visual Studio Code ou o IDE compatível de sua preferência e o SDK do Bot Framework para editar o código-fonte do bot e estender a funcionalidade dele. Empacote e publique bots como pacotes NuGet. Importe esses pacotes para o Composer para fácil integração. Transite perfeitamente entre o Composer e o SDK do Bot Framework durante todo o ciclo de vida de desenvolvimento do bot. Essa mobilidade garante que você esteja sempre usando a ferramenta mais eficaz para qualquer tarefa de desenvolvimento.

Publicar seu bot no Azure

O Serviço de Bot do Azure hospeda a funcionalidade do bot no Azure. Publique os bots diretamente por meio da interface do Composer, criando uma experiência de desenvolvimento completa no Composer.

O Serviço de Bot do Azure hospeda um bot em um recurso de Aplicativo Web do Azure. Esse recurso contém o código, a lógica e os pontos de extremidade HTTP REST básicos para conectividade com recursos externos. O Serviço de Bot do Azure também fornece canais do Serviço de Bot prontos para uso. Os Canais de Serviço de Bot fornecem uma camada de adaptador que adapta a interação do bot a outro protocolo de serviço de chat, como o Facebook, o Slack, o Teams, a telefonia e outros.

Quando você faz a publicação por meio do Composer, o processo de publicação também pode criar ou importar recursos dependentes do Azure. Esses recursos incluem o LUIS, o QnA Maker, o Azure Cosmos DB, o Application Insights e o Armazenamento de Blobs.