-
Notifications
You must be signed in to change notification settings - Fork 42
Estudo sobre custom actions
Arthur Temporim edited this page Mar 27, 2019
·
3 revisions
As actions são as respostad do bot para as entradas de usuário. Elas podem ter 3 tipos:
- default actions (action_listen, action_restart, action_default_fallback)
- utter actions, começa com utter_, manda mensagem para os usuários
- custom actions - qualquer outra ação, pode rodar outros trechos de código
Quando o bot prediz a intenção de uma custom action, ele chama um webserver no endpoint especificado no arquivo endpoints.yml
:
action_endpoint:
url: "https://localhost:5055/webhook"
Deve passar a flag --endpoints endpoints.yml
ao rodar os scripts.
Rodar python -m rasa_core_sdk.endpoint --actions actions
.
É preciso criar um arquivo para as custom actions:
from rasa_core_sdk import Action
from rasa_core_sdk.events import SlotSet # importar slots para pegar valores vindos do usuário. Ainda não usado
import requests
import random
class ActionTest(Action):
def name(self):
return "action_test" # nome da action no arquivo domain
def run(self, dispatcher, tracker, domain):
try: #consultar projeto na API SALIC e printar o nome de um deles
dispatcher.utter_message("Um dos projetos cadastrados no SALIC")
req = requests.request('GET', "https://api.salic.cultura.gov.br/v1/projetos/")
quantity = req.json()['count']
a = req.json()['_embedded']['projetos'][random.randint(0, quantity)]['nome']
dispatcher.utter_message(a)
except ValueError:
dispatcher.utter_message(ValueError)
Deve acrescentar as intents, stories e actions nos arquivos apropriados.
- Conteúdo atual
- Novos tópicos para inserir no futuro
- Intents classificados errado
- Sinônimos de tópicos existentes
- Tópicos complicados para avaliar
- Sugestões de Fluxo
- intents_depreciadas
- utters_depreciadas
- Estudo sobre ferramentas de bots
- Estudo sobre melhores práticas de bots
- Estudo sobre pipeline do RASA
- Estudo sobre intents eficientes
- Estudo sobre refinamento da Taís
- Estudo de ferramentas de edição de conteúdo
- Estudo de Slots e Entidades
- Estudo de teste automatizado
- Estudo de Custom Actions
- Estudo de Interação
- Estudo de Métricas para Bots
- Estudo de Embedding Policy