Tabla de contenido

Dialogflow: Managing Intents

Susan Swier Actualizado por Susan Swier

¿Qué es una intención?

Dialogflow's definición de intención:

Un intento clasifica la intención de un usuario final's para un turno de conversación. Para cada agente, usted define muchos intentos, donde sus intenciones combinadas pueden manejar una conversación completa. Cuando un usuario final escribe o dice algo, referido como una expresión del usuario final, Dialogflow coincide con la expresión del usuario final con la mejor intención de su agente. La coincidencia de una intención también se conoce como clasificación de intenciones.

Un intento básico contiene lo siguiente:

  • Frases de entrenamiento - Estas son frases de ejemplo para lo que los usuarios finales pueden decir. Cuando una expresión de usuario final se asemeja a una de estas frases, Dialogflow coincide con la intención.
Las frases de plantilla serán obsoletas e ignoradas durante el entrenamiento. Más información aquí.
  • Acción - Puedes definir una acción para cada intención. Cuando una intención coincide, Dialogflow proporciona la acción a su sistema, y puede usar la acción para desencadenar ciertas acciones definidas en su sistema.
  • Parámetros - Cuando una intención coincide en tiempo de ejecución, Dialogflow proporciona los valores extraídos de la expresión del usuario final como parámetros. Cada parámetro tiene un tipo, llamado el tipo de entidad, que dicta exactamente cómo se extraen los datos.
  • Respuestas - Usted define textos, palabras o respuestas visuales para volver al usuario final. Éstas pueden proporcionar al usuario final respuestas o pedir al usuario final más información o terminar la conversación.

Una intención más compleja también puede contener lo siguiente:

  • Contextos: Los contextos de dialogflow son similares al contexto de lenguaje natural. Si una persona te dice "que son naranjas", necesitas contexto para entender a qué se refiere la persona. De la misma manera, para que Dialogflow maneje una expresión de usuario final como esta, es necesario dotarla de contexto para que coincida correctamente con una intención.
  • Eventos: Con eventos, puedes invocar una intención basada en algo que ha sucedido, en lugar de lo que un usuario final comunica.
Los intentos se pueden activar en función de tus contactos' País y Idioma. Si tu contacto tiene un valor de país o idioma presente en sus datos de contacto, los propósitos se pueden activar basándose en los diferentes valores del país y el idioma.

Intentos de visualización

Paso 1: Iniciar sesión en Dialogflow

Vaya a la consola de Dialogflow e inicie sesión con sus credenciales de usuario.

Paso 2: Navegar a Intentos

Seleccione el agente que desea configurar y seleccione Intentos del menú de navegación lateral

Todos los intentos por defecto y los intentos creados se mostrarán en esta vista.
captura de pantalla de la página de intentos de flujo de diálogo

Intentos por defecto

Al crear un agente, se crearán dos intentos por defecto para usted mediante Dialogflow.

  • Intento de bienvenida predeterminado: Esta intención coincide cuando el contacto inicia una conversación con la plataforma. Esta intención debería devolver una respuesta que permita al usuario final saber lo que hace su agente o lo que puede decir para iniciar una conversación.
  • Intento de Fallback predeterminado: Esta intención coincide cuando el agente no puede coincidir con la expresión del usuario final con ninguna otra intención.

Intento de bienvenida predeterminado

Como puede ver, el Intento de Bienvenida por Defecto tiene un pre-requerimiento del evento Welcome y frases de saludo. Cuando un mensaje de contacto usted por primera vez, esta intención será emparejada de acuerdo a lo especificado.

captura de pantalla mostrando intento de bienvenida por defecto de flujo de diálogo

Consulte el siguiente ejemplo:

gif mostrando una bienvenida predeterminada generada por el flujo de diálogo en un webchat respond.io
Sugerencia: Para gestionar las expectativas de contacto's, sugerimos incluir respuestas que informen al contacto de que están interactuando con un chatbot.

Intento de Fallback por defecto

Consejo: Obtenga más información sobre Dialogflow's definición de Intento de Fallback predeterminado.

Cuando el mensaje o evento entrante no coincide con ninguno de los propósitos existentes, una intención de reserva será igualada en su lugar.

flujo de diálogo'intento de reserva por defecto

Consulte el siguiente ejemplo:

gif mostrando la intención de retorno de flujo de diálogo en un cuadro de webchat respond.io
Sugerencia: Si el agente no puede entender el mensaje, el Agente debe ofrecerse a entregar la conversación a un agente vivo para ayudar con el problema del contacto's.

Crear un intento

Puede crear nuevas intenciones si desea crear procesos automatizados para casos de uso específicos. Con Parámetros y Eventos, se pueden crear intenciones que se adapten a múltiples casos de uso.

Para ayudarte a entender mejor, la siguiente guía se basará en un caso de uso específico como se describe a continuación:

La compañía XYZ recibe a menudo consultas sobre el estado del pedido desde el sitio web's webchat. Mientras estaban pasando por las conversaciones, detectaron un patrón común donde sus agentes solicitarían el ID del cliente'del cliente para revisar el problema o resolver la consulta. Una vez que hayan obtenido el ID de cliente del cliente, actualizarían el campo personalizado y lo añadirían como etiqueta.

Basado en el escenario anterior, el proceso de obtención del ID del cliente puede ser realizado por el chatbot. Una vez obtenida la identificación del cliente, el contacto será entregado a un agente humano para obtener más ayuda.

Deja que's lo desglose en pasos más simples:

  1. Crear un intento de pedir el ID del cliente.
  2. Crear una intención para obtener el ID del cliente.
  3. Guardar el ID del cliente como un campo personalizado en respond.io.
  4. Añadir una etiqueta.
  5. Apagar la conversación con un agente humano.
  6. Notificar al agente humano.
  7. Desactivar el bot.

Resultado esperado

gif mostrando el resultado esperado del flujo de diálogo en respond.io

Crear una intención básica

Paso 1: Crear Intento

Vaya a la consola Dialogflow y presione Intentos desde el menú lateral de navegación. Presione ➕

o INTENCIA DE CREATE desde la parte superior del módulo.

Paso 2: Nombra su intención

Introduzca un nombre para su intención. Su nombre de intención debe representar las expresiones de usuario final que reconoce.

Para este escenario,'lo nombraremos order_status_enquiry.

captura de pantalla mostrando cómo crear una intención en el flujo de diálogo

Paso 3: Incluye Fases de Entrenamiento

Basándonos en el escenario anterior, debemos incluir frases de entrenamiento que soliciten el estado del pedido específicamente. Comience escribiendo en la sección de Marcadores de Entrenamiento de Fases de Entrenamiento. Puede incluir múltiples frases para atender diferentes tipos de frases.

Por ejemplo:

dónde está mi pedido
podría ayudarme a comprobar mi pedido por favor
cuál es el estado de mi pedido

Paso 4: Crear Respuesta de Intento

Para este propósito, la respuesta debe pedir al Contacto que su ID de cliente se utilice para el siguiente propósito.

captura de pantalla de añadir frases de entrenamiento de intentos en flujo de diálogo

Desplácese hacia abajo hasta la sección Respuestas y escriba la respuesta. Puede añadir una respuesta de texto o carga personalizada. Para este escenario, Respuesta de texto servirá al propósito.

Consejos:
Puedes enviar múltiples respuestas a la vez para una mejor legibilidad.
Puedes añadir algunas variantes de la respuesta y serán aleatorizadas cuando se envíen a Contactos.

La respuesta que vamos a construir para este propósito es:

Pido disculpas por adelantado si su pedido está tardando demasiado.
¿Puedo tener su ID de cliente por favor?

Consejo: Más información sobre plantillas de respuesta aquí.

Crear una entidad

Antes de poder guardar el valor como un campo personalizado, necesitaremos crear una entidad para detectar el valor de los mensajes entrantes.

Basado en el escenario anterior, llamaremos esta entidad como customerId y se utilizará para almacenar el ID del cliente para un cliente.

captura de pantalla de configuración de flujo de diálogo para añadir respuestas de intenciones

Paso 1: Crear una entidad

Navegar al módulo Entidades. Presiona en el ➕ o ENTITÍA DE CREATE.

captura de pantalla mostrando cómo crear una entidad de flujo de diálogo

Paso 2: Nombre de la Entidad

Para este ejemplo, lo llamaremos customer_id.

Paso 3: Introduzca los valores posibles

La entidad debe aceptar una cadena con 5 enteros de longitud. La expresión regular se aplicará para validar el valor.

Para este ejemplo, el valor será (\d){5} que acepta cualquier cadena con 5 dígitos.

Consejo: Aprende más sobre expresiones regulares aquí.
captura de pantalla mostrando cómo agregar el id del cliente como una entidad en el flujo de diálogo
Consejo: Aprende más sobre entidades aquí.

Crear un Intento con Parámetros

Paso 1: Crear Intento de Seguimiento

Vaya a la consola Dialogflow y presione Intentos en el menú lateral de navegación. Localice el intento anterior creado y presione Añadir intento de seguimiento.

En su lugar, se utiliza una intención de seguimiento porque esta intención tendrá que ser activada después del intento especificado.

Por defecto, el contexto y la acción se llenarán por defecto para que la intención funcione en secuencia.

cómo agregar una intención de seguimiento en el flujo de diálogo

Paso 2: Incluye Fases de Entrenamiento

Las frases que se incluirán en esta intención serán probablemente las que contengan el ID del cliente. Podemos introducir una frase y destacar el texto que probablemente será el ID del cliente. Seleccione la entidad creada anteriormente y anotar el texto con ella.

añadiendo frases de entrenamiento a un intento de seguimiento

De forma predeterminada, se creará un parámetro cuando anotes un texto con una entidad para almacenar los valores.

Consejo: Aprende más sobre anotar frases de entrenamiento aquí.

Paso 3: compilar respuesta de intento

Con este propósito, la respuesta debe informar al contacto de que la identificación del cliente ha sido recibida y un agente humano se hará cargo de la conversación y resolverá el problema.

Desplácese hacia abajo hasta la sección Respuestas y escriba la respuesta. Añade una Respuesta de texto.

La respuesta que crearemos para este propósito es:

Gracias por proporcionar su ID de cliente. Su petición está siendo asignada a nuestros agentes humanos.

captura de pantalla de la respuesta de texto predeterminada del flujo de diálogo

Guardar un valor como un campo personalizado

Cuando el contacto responde con su ID de cliente, el valor puede ser guardado como un campo personalizado en la plataforma respond.io.

Para guardar el valor en un campo personalizado, por favor asegúrese de que el campo personalizado es creado en la plataforma respond.io.

Para guardar el valor, agregue un parámetro RB_FIELD_{custom field's name}. En este caso, el parámetro será RB_FIELD_customerid y establecerá la entidad $customer_id como el valor.

captura de pantalla mostrando cómo guardar un campo personalizado en el flujo de diálogo

Añadiendo una etiqueta

Añadir un parámetro RB_ADDTAGS y establecer la entidad $customer_id como el valor

captura de pantalla mostrando cómo agregar etiquetas en el flujo de diálogo

Manejar la conversación

Ahora, queremos dejar la conversación con un agente humano. Esto puede lograrse con otro parámetro, RB_USER_ASSIGN y establecer el correo electrónico's como el valor

captura de pantalla de cómo agregar un parámetro para asignar a un usuario en el flujo de diálogo

Deshabilitando el bot

Los parámetros se ejecutarán en secuencia. Por último, desactivaremos la respuesta del bot para este contacto porque no queremos que se active ninguna intención cuando el contacto es manejado por un agente humano.

Para ello, añadiremos otro parámetro, RB_BOTSTATUS y estableceremos FALSE como valor.

captura de pantalla de cómo desactivar un bot de flujo de diálogo después de que la conversación sea transmitida
Cuando un bot está desactivado, los contactos ya no podrán recibir mensajes del bot hasta que el estado del bot esté habilitado. El estado del bot se puede activar manualmente a través de la consola de mensajería o a través de la automatización.

Manejo de Ubicación

Cuando se recibe una ubicación de un contacto, se enviará un evento de tipo LOCATION a Dialogflow. Puedes añadir LOCATION a los eventos para activar los respectivos disparadores.

captura de pantalla de añadir ubicación al intento de flujo de diálogo

Revisa los otros parámetros disponibles en Dialogflow:

Probando un Intento

Si necesita probar la intención, utilice el panel de pruebas situado en el lado derecho de la consola de Dialogflow.

opción de flujo de diálogo para probar un intento

Borrando un intento

Desde la lista de intenciones, pase el cursor sobre la intención que desea eliminar. Pulse el icono de la papelera de la intención.

gif mostrando cómo eliminar un intento en el flujo de diálogo

¿Tienes problemas con Dialogflow? ¡Contacta con nosotros aquí!

¿Sentirse atrapado? No temas.

¿Necesitas ayuda? Contáctanos para recibir asistencia. ¡La ayuda está aquí!

Dialogflow: Creando un Chatbot

Flujo de diálogo: parámetros

Powered by HelpDocs (opens in a new tab)

Powered by HelpDocs (opens in a new tab)