Skip to content

Um baseline para criar um FAQ chatbot usando Rasa, Rocket.chat, elastic search

License

Notifications You must be signed in to change notification settings

deeplearningunb/rasa-class-assistant

 
 

Repository files navigation

Rasa Class Assistant

Um Chatbot para ajudar nas tarefas do dia-a-dia na sala de aula

Ideia

Tal bot veio do desejo de automatizar o processo da chamada de cada aula, entretanto essa é só a ideia inicial.

O que pode se tornar:

Esse bot, se aplicado a escolas de Ensino Médio ou Fundamental, poderia ter a funcionalidade de reconhecer os alunos que tem faltas constantes, o que ajudaria a escola se essa quisesse contactar o Conselho Tutelar ou algum órgão similar para averiguar o motivo dessas faltas.
Agora se quisermos trazer para o universo universitário, poderia ter funcionalidade de avisar aos alunos a porcentagem de faltas que cada um tem.

Bot

RocketChat

sudo docker-compose up -d rocketchat
# aguarde 3 minutos para o rocketchat terminar de levantar
sudo docker-compose up bot

Para que a assistente virtual inicie a conversa você deve criar um trigger. Para isso, entre no rocketchat como admin, e vá no painel do Livechat na seção de Triggers, clique em New Trigger. Preencha o Trigger da seguinte forma:

Enabled: Yes
Name: Start Talk
Description: Start Talk
Condition: Visitor time on site
    Value: 3
Action: Send Message
 Value: Impersonate next agent from queue
 Value: Olá!

O valor http://localhost:8080/ deve ser a URL de acesso do Bot.

Instalação

Para executar o bot em um site você precisa inserir o seguinte Javascript na sua página

<!-- Start of Rocket.Chat Livechat Script -->
<script type="text/javascript">
(function(w, d, s, u) {

    // !!! Mudar para o seu host AQUI !!!
    host = 'http://localhost:3000';
    // !!! ^^^^^^^^^^^^^^^^^^^^^^^^^^ !!!

    w.RocketChat = function(c) { w.RocketChat._.push(c) }; w.RocketChat._ = []; w.RocketChat.url = u;
    var h = d.getElementsByTagName(s)[0], j = d.createElement(s);
    j.async = true; j.src = host + '/packages/rocketchat_livechat/assets/rocketchat-livechat.min.js?_=201702160944';
    h.parentNode.insertBefore(j, h);
})(window, document, 'script', host + '/livechat');
</script>
<!-- End of Rocket.Chat Livechat Script -->

Atenção: Você precisa alterar a variavel host dentro do código acima para a url do site onde estará o seu Rocket.Chat.

Console

sudo docker-compose run --rm bot make train
sudo docker-compose run --rm bot make run-console

Train Online

sudo docker-compose run --rm bot make train
sudo docker-compose run --rm bot make train-online

Analytics

Setup

sudo docker-compose run --rm -v $PWD/analytics:/analytics bot python /analytics/setup_elastic.py
sudo docker-compose up -d elasticsearch

Lembre-se de setar as seguintes variaveis de ambiente no docker-compose.

ENVIRONMENT_NAME=localhost
BOT_VERSION=last-commit-hash

Vizualização

sudo docker-compose up -d kibana

Você pode acessar o kibana no locahost:5601

Notebooks - Análise de dados

Setup

Levante o container notebooks

docker-compose up -d notebooks

Acesse o notebook em localhost:8888

Tutorial para levantar toda a stack

sudo docker-compose up -d rocketchat

sudo docker-compose up -d kibana
sudo docker-compose run --rm -v $PWD/analytics:/analytics bot python /analytics/setup_elastic.py

sudo docker-compose up -d bot

About

Um baseline para criar um FAQ chatbot usando Rasa, Rocket.chat, elastic search

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Jupyter Notebook 98.0%
  • Python 1.9%
  • Other 0.1%