Dialogflow (api.ai) — Breve introdução da plataforma

Bruno Brandes
Bots Brasil
Published in
4 min readJun 22, 2017

O Dialogflow é uma plataforma para construir interfaces de conversação para bots, aplicativos e dispositivos.

api.ai

Na minha jornada de desenvolvimento de Chatbots, experimentei na prática alguns NLU (Natural Language Understanding) e venho utilizando o api.ai em vários projetos, como por exemplo a @aliceseguros.

Um dos grandes fatores que pesam nessa decisão é o fato da plataforma ser 100% grátis. 😀

Além de ser uma ferramenta, que na minha opinião, possui uma das melhores interfaces para construção de aplicações com NLU, em setembro de 2016, ela foi adquirida pelo Google, o que evidencia o poder da plataforma e o tanto que ela ainda vai evoluir.

No Google I/O deste ano, foi anunciado que os desenvolvedores poderão alcançar usuários do Google Assistant utilizando Actions no api.ai 😮

Uma outra feature anunciada no dia do evento, foi o Analytics da plataforma. A página de análise fornece informações sobre o desempenho do seu agente para que você possa trabalhar em melhorias e focar ainda mais na experiência do usuário 😍

O api.ai disponibiliza SDK’s em várias linguagens de desenvolvimento e apesar de ter uma implementação em .NET, framework que eu utilizo com frequência para desenvolvimento dos meus projetos, optei em desenvolver uma nova versão com padrões atuais.

Ter desenvolvido esse projeto, que também esta disponível para comunidade, está sendo incrível. Tenho recebido muito feedback de pessoas do mundo todo e isso vem ajudando a evoluir meus projetos e conhecimento.

Utilizar o api.ai é algo bastante simples mas é preciso que você entenda alguns conceitos básicos descritos de forma resumida a seguir.

Introdução

O diagrama abaixo mostra como o api.ai está relacionado a outros componentes e a forma como ele processa os dados:

api.ai — Diagram

A parte verde é a parte fornecida pela plataforma. Ela está localizada entre sua aplicação que deve fornecer os métodos de entrada e saída, respondendo assim aos dados acionáveis.

Uma opção que pode ser bastante explorada é a implementação de webhook , onde o api.ai permite que sistemas externos recebam notificações de eventos que ocorrem na intenção do usuário, possibilitando que seu serviço execute suas lógicas de negócios ou acesse dados de armazenamento.

Diálogos

O api.ai recebe uma query que é texto em linguagem natural ou um nome de evento enviado para plataforma como dados de entrada, que é transformado em seguida em actionable data e retorna dados de saída.

O processo de transformar a linguagem natural em dados acionáveis ​​como contextos e propriedades de intenções, é chamado Natural Language Understanding (NLU).

Conceitos

Agente: Os agentes podem ser descritos como sendo o módulos NLU. Seu objetivo é transformar o idioma natural do usuário em dados acionáveis.

Entidades: As entidades representam conceitos e servem como uma poderosa ferramenta para extrair valores de parâmetros de entradas de linguagem natural.

Contextos: Contextos são cadeias de caracteres que representam o contexto atual do pedido de um usuário.

Parâmetros: As ações podem ter parâmetros para extrair informações das entradas de usuários.

Intenções: Uma intenção representa um mapeamento entre o que o usuário diz e quais ações devem ser tomadas pelo seu software.

As interfaces de intenção possuem as seguintes seções:

  • Usuário diz
  • Ação
  • Resposta
  • Contextos

O api.ai disponibiliza um passo a passo para tornar o processo de criação e integração de interfaces de conversação, o mais simples possível.

Uma dica legal para você praticar e criar seus agentes, é utilizar o Sample Data.

api.ai — Sample Data

Com ele você consegue carregar dados de amostra, por exemplo, carregar um agente de pizza que utiliza todos os conceitos a serem explorados na plataforma.

api.ai— Intent

Depois de criar e configurar seu agente, você precisa “publica-lo” em algum canal e apesar do api.ai ter várias integrações para isso,

api.ai— Integrations

nas próximas semanas vou fazer um novo post por aqui, mostrando a vantagem de se utilizar o api.ai com outros frameworks do mercado: blip.ai e botframework 🔝

Esta desenvolvendo seu Chatbot utilizando o api.ai? Não deixe de participar do programa Actions Challenge pra você obter a chance de ganhar grandes prêmios, incluindo uma viagem ao Google I/O 2018! 😍

Tem alguma dúvida?

Está utilizando api.ai em seus projetos? Deixe seu comentário ai pra trocarmos ideias.

Curtiu esse conteúdo?

Recomende ele para que outras pessoas tenham acesso 💚.

Compartilhe essa ideia 💡

--

--