O que é o SDK do Bot Framework?

aplica-se a: SDK v4

O bot Framework, juntamente com o serviço de bot do Azure, fornece ferramentas para criar, testar, implantar e gerenciar bots inteligentes, tudo em um só lugar. A estrutura de bot inclui um SDK modular e extensível para a criação de bots, bem como ferramentas, modelos e serviços de ia relacionados. Com essa estrutura, os desenvolvedores podem criar bots que usam fala, compreender a linguagem natural, lidar com perguntas e respostas e muito mais.

O que é um 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. 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. Os usuários conversam com um bot usando texto, cartões interativos e fala. 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.

Um bot pode ser considerado como um aplicativo Web que tem uma interface de conversação. Um usuário se conecta a um bot por meio de um canal, como o Facebook, a margem de atraso ou Microsoft Teams.

  • Os motivos de bot sobre a entrada e executa tarefas relevantes. Isso pode incluir solicitar informações adicionais ao usuário ou acessar serviços em nome do usuário.
  • O bot executa o reconhecimento na entrada do usuário para interpretar o que o usuário está solicitando ou dizendo.
  • O bot gera respostas para enviar ao usuário para comunicar o que o bot está fazendo ou fez.
  • Dependendo de como o bot é configurado e como ele é registrado no canal, os usuários podem interagir com o bot por meio de texto ou fala, e a conversa pode incluir imagens e vídeos.

Um bot remoto interage com um usuário em um dispositivo por meio de texto, fala, imagens ou vídeo

Os bots são muito parecidos com aplicativos Web modernos, vivendo na Internet e usando APIs para enviar e receber mensagens. O que um bot oferece varia muito dependendo do tipo de bot. 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. No entanto, um bot simples pode apenas receber uma mensagem e ecoá-la para o usuário com muito pouco código envolvido.

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. O que torna os bots únicos é o uso de mecanismos geralmente reservados à comunicação entre seres humanos.

O serviço de bot do Azure e o bot Framework oferecem:

  • O SDK do bot Framework para desenvolvimento de bots
  • Ferramentas do Bot Framework para cobrir o fluxo de trabalho de desenvolvimento de bot de ponta a ponta
  • Serviço do Bot Framework (BFS) para enviar e receber mensagens e eventos entre bots e canais
  • Implantação do bot e configuração do canal no Azure

Além disso, os bots podem usar outros serviços do Azure, como:

  • Serviços Cognitivos do Azure para compilar aplicativos inteligentes
  • Armazenamento do Azure para a solução de armazenamento em nuvem

Criação de um bot

O Serviço de Bot do Azure e o Bot Framework oferecem um conjunto integrado de ferramentas e serviços para facilitar esse processo. Escolha seu ambiente de desenvolvimento favorito ou ferramentas de linha de comando para criar seu bot. Os SDKs existem para C#, JavaScript, Typescript e o Python (o SDK para Java está em desenvolvimento). Nós fornecemos ferramentas para vários estágios de desenvolvimento de bot para ajudá-lo a projetar e criar bots.

Visão geral do bot

Plano

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. Antes de escrever código, revise as diretrizes de design do  para obter práticas recomendadas e identifique as necessidades do seu bot. Você pode criar um bot simples ou incluir recursos mais sofisticados, como fala, compreensão de linguagem natural ou respostas a perguntas.

Build

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. O Bot Framework Service é um dos componentes do Serviço de Bot do Azure e do Bot Framework. Você pode criar bots em quantos ambientes e idiomas desejar. Você pode criar um bot para o desenvolvimento local.

Como parte do Serviço de Bot do Azure e do Bot Framework, oferecemos componentes adicionais que você pode usar para estender a funcionalidade do seu bot:

Recurso Descrição Link
Adicionar processamento de idioma natural Habilite seu bot para entender a linguagem natural, entender os erros de ortografia, usar a fala e reconhecer a intenção do usuário Como usar o LUIS
Responder a perguntas Adicionar uma base de conhecimento para responder a perguntas que os usuários fazem de forma mais natural e conversacional Como usar o QnA Maker
Gerenciar vários modelos 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 bot Orchestrator
Adicionar botões e cartões Aprimore a experiência do usuário com mídia diferente de texto, como gráficos, menus e cartões Como adicionar cartões

Observação

A tabela acima não é uma lista abrangente. Explore os artigos à esquerda, começando com enviando mensagens, para mais funcionalidades do bot.

Além disso, fornecemos ferramentas de linha de comando para ajudá-lo a criar, gerenciar e testar os ativos do bot. Essas ferramentas podem configurar aplicativos LUIS, criar uma base de dados de conhecimento QnA, criar modelos para rotear entre componentes, simular uma conversa e muito mais. Você pode encontrar mais detalhes no Leiamedas ferramentas de linha de comando.

Você também tem acesso a vários exemplos que demonstram muitos dos recursos disponíveis por meio do SDK. Esses são ótimos para os desenvolvedores que buscam um ponto de partida mais rico em recursos.

Teste

Os bots são aplicativos complexos com muitas partes diferentes trabalhando juntos. 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. Antes de publicar, teste seu bot. Fornecemos várias maneiras de testar bots antes que eles sejam liberados para uso:

  • Teste seu bot localmente com o emulador. O Bot Framework Emulator é um aplicativo autônomo que não só fornece uma interface de chat, mas também ferramentas de depuração e de interrogação para ajudar a entender como e por que seu bot faz o que ele faz. o Emulator pode ser executado localmente junto com seu aplicativo de bot no desenvolvimento.

  • Teste o bot na Web. Uma vez configurado no portal do Azure, seu bot também pode ser acessado através de uma interface de chat da Web. 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.

  • Teste a unidade do bot com o SDK do bot Framework atual.

Publicar

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. 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.

Conectar

Conexão o bot a canais como Facebook, Messenger, Kik, margem de atraso, Microsoft Teams, Telegram, texto/SMS e Twilio. 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. Para obter informações sobre como adicionar canais, confira o tópico canais.

Avaliar

Use os dados coletados no portal do Azure para identificar oportunidades de melhorar os recursos e o desempenho do seu bot. Você pode obter dados de nível de serviço e de instrumentação, como tráfego, latência e integrações. O Google Analytics também fornece relatórios no nível da conversa sobre dados de usuários, mensagens e canais. Para obter mais informações, confira como reunir as análises.

Próximas etapas

Confira estes estudos de caso de bots ou clique no link abaixo para criar um bot.