Participe da Maratona Behind the Code! A competição de programação que mais te desafia! Inscreva-se aqui

Integre o robô de bate-papo de comunicação de crise da COVID-19 a um website

Este tutorial demonstra como criar um aplicativo Node.js simples conectado a um robô de bate-papo da COVID-19 usando as APIs do Watson Assistant. As etapas são iniciadas a partir deste repositório assistant-simple.

Objetivos do aprendizado

Neste tutorial, você vai:

  1. Aprender como criar um aplicativo Node.js simples.
  2. Conectar o aplicativo a um robô de bate-papo usando as APIs do IBM Watson Assistant.
  3. Testar e executar o aplicativo localmente.
  4. Implementar o aplicativo no IBM Cloud como um aplicativo do Cloud Foundry.

Aqui está uma demonstração do aplicativo final:

Demonstração do robô de bate-papo

Pré-requisitos

  1. Inscreva-se em uma conta do IBM Cloud.
  2. Faça download da CLI do IBM Cloud. Você a usará para enviar o aplicativo Node.js por push para a nuvem.
  3. Crie um robô de bate-papo da COVID-19 e conecte-o a fontes de dadosSerá necessário obter as credenciais desse robô de bate-papo a serem usadas no aplicativo Node.js:
    • Efetue login na conta do IBM Cloud.
    • Acesse os recursos e abra a instância do serviço Watson Assistant.
    • Você acessará a página de ativação do Watson Assistant. Clique em Service Credentials para visualizar as credenciais de serviço. Credenciais do Watson Assistant
    • Você usará essas credenciais para preencher o arquivo .env ao configurar o aplicativo abaixo. Copie e salve o JSON em algum lugar ou deixe essa janela aberta.

Tempo estimado

Este tutorial levará cerca de 30 minutos para ser concluído.

Diagrama de arquitetura

O diagrama a seguir mostra o fluxo de trabalho de um robô de bate-papo de website que responde a perguntas sobre a COVID-19.

Diagrama de arquitetura de comunicação da crise

  1. O usuário visita um website com o robô de bate-papo da COVID-19 e faz uma pergunta.
  2. O servidor da web Node.js chama o serviço Watson Assistant hospedado no IBM Cloud.
  3. O Watson Assistant usa o entendimento de linguagem natural e o aprendizado de máquina para extrair entidades e intenções da pergunta do usuário.
  4. As perguntas frequentes sobre a COVID-19 são extraídas dos dados de CDC confiáveis.
  5. O Watson Assistant chama um IBM Cloud Function com a capacidade de software livre do OpenWhisk.
  6. O IBM Cloud Function chama o serviço Watson Discovery em execução no IBM Cloud.
  7. O Watson Discovery verifica novos artigos e responde com artigos relevantes.
  8. O Watson Assistant chama um IBM Cloud Function com a capacidade de software livre do OpenWhisk.
  9. O IBM Cloud Function chama a API da COVID-19 para obter estatísticas.
  10. O Watson Assistant responde à consulta do usuário.
  11. O servidor da web Node.js exibe a resposta do bate-papo ao usuário.

Etapas

As etapas a seguir consideram que você já criou um assistente, importou as aptidões da COVID e tem as credenciais do serviço Watson Assistant disponíveis. Caso contrário, conclua este tutorial primeiro.

Configure o aplicativo

  1. Clone o repositório e o cd em starter-kit/covid-simple.

  2. Copie o arquivo .env.example em um arquivo chamado .env

     cp .env.example .env
    
  3. Abra o arquivo .env e inclua as credenciais de serviço obtidas na etapa anterior.

    O arquivo .env de exemplo a seguir configura apikey e url para uma instância do serviço Watson Assistant hospedada na região leste dos EUA:

     ASSISTANT_IAM_APIKEY=X4rbi8vwZmKpXfowaS3GAsA7vdy17Qhxxxxxxxx
     ASSISTANT_URL=https://gateway-wdc.watsonplatform.net/assistant/api
    
    • Se a instância de serviço usa as credenciais username e password, inclua as variáveis ASSISTANT_USERNAME e ASSISTANT_PASSWORD no arquivo .env.

      O arquivo .env de exemplo a seguir configura username, password e url para uma instância do serviço Watson Assistant hospedada na região leste dos EUA:

      ASSISTANT_USERNAME=522be-7b41-ab44-dec3-xxxxxxxx
      ASSISTANT_PASSWORD=A4Z5BdGENxxxx
      ASSISTANT_URL=https://gateway.watsonplatform.net/assistant/api
      

      No entanto, se as credenciais contiverem uma Chave de API do IAM, copie a apikey e a url nos campos relevantes.

      {
        "apikey": "ca2905e6-7b5d-4408-9192-xxxxxxxx",
        "iam_apikey_description": "Auto generated apikey during resource-key ...",
        "iam_apikey_name": "auto-generated-apikey-62b71334-3ae3-4609-xxxxxxxx",
        "iam_role_crn": "crn:v1:bluemix:public:iam::::serviceRole:Manager",
        "iam_serviceid_crn": "crn:v1:bluemix:public:iam...",
        "url": "https://gateway-syd.watsonplatform.net/assistant/api"
      }
      
     ASSISTANT_IAM_APIKEY=ca2905e6-7b5d-4408-9192-xxxxxxxx
    
  4. Inclua a ASSISTANT_ID nas propriedades anteriores:

     ASSISTANT_ID=522be-7b41-ab44-dec3-xxxxxxxx
    

Executando localmente

  1. Instale as dependências:

     npm install
    
  2. Execute o aplicativo:

     npm start
    
  3. Visualize o aplicativo em um navegador em localhost:3000.

Implemente no IBM Cloud como um aplicativo do Cloud Foundry

  1. Efetue login no IBM Cloud com a CLI do IBM Cloud:

     ibmcloud login
    
  2. Direcione a uma organização e um espaço do Cloud Foundry:

     ibmcloud target --cf
    
  3. Edite o arquivo manifest.yml. Mude o campo name para algo exclusivo.
    Por exemplo, - name: covid-assistant-simple-yourname.

  4. Implemente o aplicativo

     ibmcloud app push
    
  5. Visualize o aplicativo on-line na URL do aplicativo.

Assuma a COVID-19

Agora você sabe como criar um robô de bate-papo usando o Watson Assistant e um website no IBM Cloud no qual os usuários podem interagir com o robô de bate-papo. Veja alguns outros aplicativos de amostra do Watson Assistant na documentação oficial.

Aviso

O conteúdo aqui presente foi traduzido da página IBM Developer US. Caso haja qualquer divergência de texto e/ou versões, consulte o conteúdo original.