Introdução
Neste tutorial, você aprenderá a construir um assistente virtual chamado ‘Genie’ utilizando o framework Rasa, ideal para quem deseja desenvolver chatbots interativos com capacidade de processamento de linguagem natural. Exploraremos desde a instalação do Rasa até a implementação de um chatbot que pode se integrar com APIs de serviços externos. Você irá configurar os componentes de NLU (Natural Language Understanding) e diálogo do Rasa, criar um modelo de chatbot e integrar o assistente a APIs para fornecer respostas dinâmicas. Este guia abrange cada etapa do processo, facilitando a construção de assistentes virtuais personalizados e eficazes.
Etapas
Instalação do Rasa
Certifique-se de ter o Python 3.8 ou superior instalado em sua máquina. Para instalar o Rasa, utilize o gerenciador de pacotes pip. Execute o seguinte comando no terminal para instalar o Rasa e suas dependências:
commands# Instalar o Rasa
pip install rasaCriar um Novo Projeto Rasa
Uma vez que o Rasa está instalado, você pode criar um novo projeto executando o comando abaixo. Isso criará a estrutura básica do projeto, incluindo caminhos para treinamento de NLU e diálogos.
commands# Criar um novo projeto chamado 'genie'
rasa init --no-promptTreinamento do Modelo NLU
Edite o arquivo `datalu.yml` para adicionar algumas intenções e exemplos de treinamento. Cada intenção deve ter exemplos para que o modelo aprenda a reconhecê-las:
nlu.ymlversion: "3.0" -nlu: - saudacao - Oi - Olá - Bom dia - despedida - Tchau - Até logo - informacao_servico - Me fale sobre o serviço
Definir Respostas do Assistente
No arquivo `domain.yml`, defina as intenções, entidades e respostas que o assistente virtual fornecerá. Por exemplo, você pode adicionar uma resposta para o intent ‘informacao_servico’.
domain.ymlintents: - saudacao - despedida - informacao_servico responses: utter_saudacao: - text: "Olá! Como posso ajudar você hoje?" utter_despedida: - text: "Tchau! Até mais!" utter_informacao_servico: - text: "Nosso serviço oferece suporte 24/7 e atendemos diversas necessidades."
Configurar Histórias de Diálogo
As histórias ajudam o Rasa a entender como as intenções se conectam em uma conversa. Adicione algumas histórias no arquivo `data/stories.yml` para treinar o modelo sobre como responder às intenções.
stories.ymlversion: "3.0" - story: saudacao steps: - intent: saudacao - action: utter_saudacao - story: informacao_servico steps: - intent: informacao_servico - action: utter_informacao_servico
Treinar o Modelo Rasa
Após definir as intenções, respostas e histórias, você deve treinar o modelo antes de iniciar o assistente. Execute o comando abaixo para treinar o modelo:
commands# Treinar o modelo
rasa trainTestar o Assistente Virtual
Após o treinamento, teste seu assistente virtual. Use o comando abaixo para iniciar a interface de linha de comando do Rasa e interagir com o assistente:
commands# Iniciar o assistente para testes
rasa shellIntegração com APIs externas
Para que o assistente se conecte a APIs externas, defina uma ação personalizada. Crie um arquivo Python para a ação no diretório `actions`. Aqui está um exemplo simples de como definir uma ação que retorna informações de uma API.
actions.pyfrom rasa_sdk import Action import requests class ActionInformacaoServico(Action): def name(self): return 'action_informacao_servico' def run(self, dispatcher, tracker, domain): response = requests.get('https://api.exemplo.com/servicos') dispatcher.utter_message(text=response.json()['descricao']) return []
Executar a Ação Personalizada
Adicione a ação personalizada ao seu fluxo de conversa no arquivo `domain.yml`, e faça referência a ela nas suas histórias. Com isso, quando o usuário solicitar informações sobre serviços, o Rasa poderá chamar a API.
stories.yml- story: informacao_servico steps: - intent: informacao_servico - action: action_informacao_servico
Verificar o Funcionamento do Chatbot
Finalmente, execute o seguinte comando para iniciar o servidor de ações, que permite que seu chatbot chame as APIs integradas. Certifique-se de que o seu assistente virtual está funcionando conforme o esperado.
commands# Executar servidor de ações
rasa run actions
Conclusão
Neste tutorial, você aprendeu a construir um assistente virtual ‘Genie’ utilizando o framework Rasa. Desde a configuração inicial, passando pelo treinamento do modelo NLU e a definição de diálogos, até a integração com APIs de serviços. Agora você tem as ferramentas necessárias para desenvolver chatbots interativos personalizados, que podem responder a consultas e realizar ações sobre dados obtidos por meio de chamadas de API. A criação de assistentes virtuais pode trazer muitos benefícios, como melhorar o atendimento ao cliente e automatizar tarefas repetitivas.