Aqui no blog, eu já fiz diversas postagens falando sobre bots e mostrando como construí-los tanto para o Telegram quanto para o Facebook Messenger. Em todas essas postagens, a implementação dos bots foi feita do zero e a “inteligência” implantada neles responde apenas a comandos específicos, sem uma análise mais profunda da semântica da mensagem enviada pelo usuário. Sendo assim, quando o usuário envia a mensagem “Mega-Sena”, o bot responde com o resultado, porém se a mensagem enviada for “Qual é o resultado da Mega-Sena?”, o bot não a compreende.
Diante desse cenário, vem a pergunta: Como fazer o bot ficar mais “inteligente”, de forma que ele, literalmente, compreenda as mensagens enviadas pelo usuário?
A resposta é: Usar Machine Learning!
Ai você deve ter pensado: – Ah Luiz, ai você já quer tirar onda, né!? Desenvolver um algoritmo de machine learning é muito complicado!
Se você pensou isso, não se preocupe, você é uma pessoa normal! (kkkkkkk)
O fato de a implementação de machine learning ser complexa, gerou a motivação para o surgimento de empresas voltadas para a disponibilização de machine learnings como serviço, ou, em inglês, Machine Learnings As a Service (MLAAS). As plataformas que essas empresas fornecem podem, por um certo valor ou de graça, serem integradas aos bots, visando melhorar o desempenho cognitivo.
Como existem várias empresas no mercado de inteligência artificial, neste post, eu irei apresentar apenas três exemplos de plataformas que disponibilizam serviços de machine learning, as quais você poderá utilizar para criar novos bots ou melhorar a parte cognitiva dos já existentes.
API.AI (DialogFlow)
A Api.ai (adquirida em 2016 pela Google) é uma plataforma voltada para o processamento de linguagem natural, cujo objetivo é tornar mais agradáveis as conversas entre os bots e seus usuários. Essa plataforma é capaz de utilizar machine learning para processar tanto mensagens em texto quanto em áudio. É importante ressaltar que a Api.ai suporta o idioma português. Além disso, a plataforma pode ser integrada ao Telegram, Facebook Messenger, entre outros serviços.
O uso da Api.ai é gratuito e toda a configuração é feita no console disponibilizado no próprio site. A configuração é baseada na criação de agents e no uso de intents e entities, sendo a reposta do processamento retornada em JSON.
Errata (10/10/2017): O Api.ai teve seu nome alterado para DialogFlow.
WIT.AI
A Wit.ai (adquirida em 2015 pelo Facebook) é uma plataforma especializada no uso de machine learning no processamento de texto e voz. A Wi.ai tem como objetivo simplificar as interfaces de conversação e deixá-las mais intuitivas. O uso dessa plataforma é gratuito e para facilitar a integração com o bot, são disponibilizados SDK em linguagens como Ruby e Python.
O uso de mensagens em português é suportado pela plataforma.
LUIS.AI
A Luis.ai (essa não podia faltar! kkkkkk) é uma API administrada pela Microsoft. A sigla “LUIS” significa (Language Understanding Intellingent Service) . A LUIS é uma API de machine learning que permite adicionar processamento de linguagem natural em aplicações, entendendo e interpretando linguagens contextualmente. Essa API faz parte do Microsoft Bot Framework, o qual é um framework para desenvolvimento de bots e fornece tudo o que é necessário para construir, conectar, gerenciar e publicar bots. Além disso, é importante destacar que a LUIS suporta português.
Apesar do uso da LUIS ser gratuito, existe um limite de 10 mil requisições por mês.
Bom, é isso!
Muito provavelmente eu irei fazer posts explicando detalhadamente como utilizar cada uma das plataformas que acabei de citar. Mas caso você conheça outra que eu não citei ou tenha alguma observação a fazer, deixa um comentário. =]