o NLG Server é utilizado como um seletor de respostas baseado em templates
para o Rasa, fazendo com que não há necessidade de retreinar o bot para que as alterações das responses
façam efeito
Como exemplo de utilização desse serviço, acesse este link
É recomendável utilizar um ambiente virtual
comandos para instalação de dependências e execução do servidor:
pip install -r requirements.txt
python server.py
-d
ou--domain
: localizaçao dos arquivos (padrão:./data
)-p
ou--port
: port utilizado pelo server (padrão:5065
)-w
ou--workers
: quantia de workers a serem utilizados (padrão:1
)--nlg
: caminho da classe de NLG customizada a ser carregada (padrão:TemplatedNaturalLanguageGenerator
)
Para importar o arquivo de responses, basta colocar os arquivos na pasta especificada no parâmetro -d
No arquivo endpoints.yml
do Rasa, adicione a seguinte configuração:
nlg:
url: http://localhost:5056/nlg
Para utilizar um NLG diferente, basta passar por parâmetro ao inicializar o serviço, exemplo:
python server.py --nlg generator.CustomNLG
Também há a possibilidade de recarregar o domain ao fazer um request GET
no endpoint /reload
Exemplo de resposta de /reload
{
"text":"Loaded 6 responses",
"domain_path":"."
}
Exemplo de resposta de /reload?show_responses=title
{
"text":"Loaded 6 responses",
"domain_path":".",
"responses":[
"utter_greet",
"utter_cheer_up",
"utter_did_that_help",
"utter_happy",
"utter_goodbye",
"utter_iamabot"
]
}
Exemplo de resposta de /reload?show_responses=full
{
"text":"Loaded 6 responses",
"domain_path":".",
"responses":{
"utter_greet":[
{
"text":"Hey! How are you?"
}
],
"utter_cheer_up":[
{
"text":"Here is something to cheer you up:",
"image":"https:\/\/i.imgur.com\/nGF1K8f.jpg"
}
],
"utter_did_that_help":[
{
"text":"Did that help you?"
}
],
"utter_happy":[
{
"text":"Great, carry on!"
}
],
"utter_goodbye":[
{
"text":"Bye"
}
],
"utter_iamabot":[
{
"text":"I am a bot, powered by Rasa."
}
]
}
}