Setar NLU
Dentro do Builder é possível utilizar os nlus_extras
de dois modos:
Input
Ao configurar um input, é possível escolher com qual NLU a resposta do usuário será processada. Caso o nlu_id
não esteja na lista que aparece na tela de edição do assistente, o NLU padrão será utilizado.
Action
A action set_nlu
permite alterar o NLU do assistente, o NLU extra será utilizado em todo o assistente a menos que ocorra um evento de new_dialog
, reiniciando a conversa.
Ao usar essa ação uma nova variável de sistema ficará disponível: context.system.nlu_id
. A partir desse ponto, qualquer chamada com cognitivo usará esse nlu_id
para o processamento.
Caso o nlu_id
(tanto da action quanto do input) não esteja na lista que aparece na tela de edição do assistente, o NLU padrão será utilizado e os retornos e erro estarão disponíveis:
se o
nlu_id
for diferente de um número: { 'code': 500, 'message': 'nlu_id is not a number.'}se o
nlu_id
usado não estiver na lista denlu_extra
: { 'code': 500, 'message': 'There is no nlu with the provided id linked to this assistant.'}
Ao vincular mais de um NLU ao assistente, uma prioridade deverá ser usada. Caso ocorra uma troca de NLU por meio do set_nlu
a continuação da conversa será com base no NLU definido pela ação. Porém, se houver uma troca no NLU e posteriormente for enviado um input que corresponde a um nlu_id
diferente, o NLU prioritário será àquele fornecido via input. Portanto, a ordem de prioridade no Builder será: nlu_id
setada no input > nlu_id
de context.system.nlu_id
> nlu_id
do NLU padrão
Então, caso você tenha usado a action set_nlu
e depois tenha um input com nlu_id diferente, o nlu_id
usado no input será usado.
Last updated