/ / Detecta la intención en una pronta elección - botframework, luis

Detectar la intención en una pronta elección - botframework, luis

Utilizo el Node Botframework Sdk, y el usuario tiene que completar un cuestionario.

Este cuestionario tiene tres preguntas con la misma respuesta "sí", "no", "quizás".

Pero si la respuesta del usuario es "sí" o "sí, por supuesto" o "siempre" que puede coincidir con "sí" (respuesta afirmativa)

Si la respuesta del usuario es "a veces" o "depende" o "raramente" que puede coincidir con "tal vez" (respuesta de matiz)

En el futuro, debemos ser capaces de predecir una nueva respuesta que no se esperaba al principio (agregar fácilmente una nueva respuesta).

Desafortunadamente, Prompts.choice () no permite vincular una elección a un intento.

Así que dos soluciones:

  • Utilice Prompts.choice () sinónimos
  • Use Prompts.text () y cree 3 intentos diferentes (afirmativo, matiz, negativo) y pase la respuesta a luis. En la respuesta de luis, guarda la buena respuesta (sí | no | quizás)

¿Cuál es la mejor solución? ¿Otra solución existe?

Respuestas

1 para la respuesta № 1

Probablemente el camino a seguir aquí es usando los sinónimos.de los avisos. sin embargo, una alternativa que también puede explorar es anular algunos de los comportamientos de Prompts.choice para llamar también a LUIS antes de analizar la respuesta y devolverla si es válida o no.


0 para la respuesta № 2

¿Por qué no usa los botones para obtener una entrada de usuario usando botones? Sin embargo, puede escribir este código en la función ResumeAfterAsync

var r = await result;
if(r.ToLower.Contains("yes") || r.ToLower.Contains("yea" || .....)
{
}

Pero creo que usar botones es una mejor manera.