Funcionamiento

En esta página, se describen los conceptos básicos del funcionamiento de Dialogflow y el flujo desde el procesamiento de las entradas del usuario hasta la compilación y el envío de una respuesta.

Ayuda a los usuarios a interactuar con la tecnología

Las interfaces informáticas tradicionales requieren entradas predecibles y estructuradas para funcionar de manera correcta, lo que hace que el uso de estas interfaces no sea natural y que, a veces, sea difícil. Si los usuarios no pueden entender fácilmente estas entradas estructuradas, tendrán dificultades para averiguar qué hacer. Lo ideal sería que tus interfaces pudieran inferir lo que tus usuarios desean, en función del lenguaje natural utilizado por los usuarios.

Por ejemplo, considera una solicitud de usuario sencilla, como: "¿Cuál es el pronóstico para hoy?". Otros usuarios también pueden preguntar:

  • "¿Cuál es el clima en este momento?"
  • "¿Qué temperatura hará mañana en San Francisco?"
  • "¿Cómo estará el clima el 21?"

Incluso con estas preguntas sencillas, puedes ver que las experiencias de conversación son difíciles de implementar. La interpretación y el procesamiento del lenguaje natural requieren un analizador del lenguaje muy sólido que sea capaz de comprender los matices del lenguaje. Dialogflow maneja la comprensión del lenguaje natural (CLN) por ti, lo que permite a tu aplicación proporcionar al usuario una experiencia de conversación de mayor calidad.

Agentes

Un agente es un módulo de comprensión del lenguaje natural que compilas y usas en tu aplicación o servicio. Los agentes comprenden los matices del lenguaje humano y traducen las entradas del usuario a datos estructurados que tus servicios y aplicaciones pueden entender. Un agente de Dialogflow es similar a un agente de un centro de llamadas humano. Los entrenas para manejar los escenarios esperados que involucran preguntas y solicitudes de los usuarios, y el entrenamiento no necesita ser demasiado explícito.

Para cada agente, defines diversos intents, que categorizan la intención del usuario y definen cómo asignar las entradas de los usuarios a las acciones y respuestas. En cada intent, defines ejemplos de declaraciones de usuarios posibles que pueden activar una coincidencia para el intent y ciertos tipos de datos que extraer de la declaración.

Agente que extrae datos de las declaraciones de un usuario que pregunta sobre el clima

Intents

Un intent básico contiene los siguientes elementos:

  • Frases de entrenamiento: Debes proporcionar frases de ejemplo para lo que los usuarios puedan decir. No tienes que definir todos los ejemplos posibles, ya que el aprendizaje automático incorporado de Dialogflow expande tu lista con otras declaraciones similares.

  • Acciones y parámetros: También puedes anotar tus frases de entrenamiento con entidades, que son tipos específicos de datos que deseas que Dialogflow extraiga de las declaraciones del usuario. Dialogflow extrae entidades coincidentes como parámetros desde las frases de entrenamiento. Por ejemplo, si el usuario dice: "Quiero una zanahoria", "zanahoria" podría ser un valor de parámetro para una entidad de vegetal.

  • Respuestas: Debes definir las respuestas de texto, de voz o visuales para devolver al usuario. Estas pueden proporcionar respuestas al usuario, solicitarle más información o terminar la conversación.

Intent y agente que manejan una declaración de usuario

  1. Cuando los usuarios dicen algo, conocido como una declaración, tu agente asocia la declaración con un intent determinado, también conocido como clasificación de intent. Un intent coincide si el modelo de aprendizaje automático para ese intent puede coincidir de manera cercana o exacta con la declaración de usuario. Para definir el modelo, debes especificar frases de entrenamiento, o ejemplos de las frases que los usuarios podrían decir. Dialogflow toma estas frases de entrenamiento y las expande para crear el modelo del intent.

  2. Una vez que tu agente asocia un intent, extrae los parámetros que necesitas de la declaración. Esto puede ser un color, un nombre, una fecha, o un conjunto de otras categorías de datos llamadas entidades. Dialogflow proporciona un gran conjunto de entidades del sistema que categorizan los parámetros comunes, o puedes crear un conjunto propio. También puedes anotar partes específicas de tus frases de entrenamiento para especificar los parámetros que deseas extraer.

  3. Se envía una respuesta al usuario. Si se necesita más información, este ida y vuelta continúa.

Respuestas

Existen varios enfoques que permiten compilar respuestas para las solicitudes de los usuarios.

Estático

Los intents tienen un controlador de respuestas incorporado que puede mostrar respuestas después de la coincidencia del intent. Esta característica solo admite respuestas estáticas que pueden contener los valores de los parámetros extraídos. En algunos casos, esto es todo lo que necesitas. En los casos en los que tu código deba realizar alguna acción o compilar una respuesta dinámica, deberías usar una de las siguientes opciones de respuesta. Generalmente, los agentes usan una combinación de respuestas estáticas y dinámicas, y emplean el controlador de respuestas incorporado para las respuestas simples, como mensajes de bienvenida o despedida.

Respuestas analizadas de tu contenido

Si tienes contenido que incluye respuestas a preguntas comunes de los usuarios (por ejemplo, preguntas frecuentes), Dialogflow puede analizar tu contenido y responder automáticamente a los usuarios según el contenido. Para obtener más información, consulta Conectores de conocimiento.

Entrega

Puedes habilitar las entregas para un intent, que es una forma de integrar tu servicio en Dialogflow. Cuando un intent con entregas tiene una coincidencia, Dialogflow envía una solicitud a tu webhook con información sobre el intent coincidente. Después de recibir la solicitud, tu webhook puede realizar cualquier tarea necesaria. El controlador de respuestas incorporado del intent actúa como un resguardo si el webhook no responde.

Por ejemplo, el webhook podría usar la información de la solicitud para buscar un producto en una base de datos o realizar un pedido. Finalmente, tu webhook debería responder a Dialogflow con instrucciones sobre lo que debería hacer Dialogflow a continuación.

  1. Tu agente asocia una declaración de usuario con un intent.
  2. Tu agente extrae parámetros de la declaración de usuario y llama a tu webhook para proporcionar los detalles.
  3. Tu webhook procesa la solicitud y toma las medidas necesarias.
  4. Tu webhook construye una respuesta y se la muestra a Dialogflow para que este se la presente al usuario.

API

Si escribes código que interactúa directamente con tu usuario final (por ejemplo, el servicio de chat de usuarios de tu empresa), no necesitas utilizar las entregas para tomar medidas o compilar respuestas dinámicas.

El flujo típico cuando usas la API es el siguiente:

  1. Tu código interactúa con el usuario final y recibe una declaración de usuario.
  2. Tu código envía la declaración a Dialogflow en una solicitud de intent de detección.
  3. Dialogflow responde con un intent coincidente, incluidas las acciones y los parámetros.
  4. Tu código realiza las acciones necesarias y responde directamente al usuario.

Para obtener más información, consulta Guía de inicio rápido: Interacción con los agentes mediante la API.

¿Te sirvió esta página? Envíanos tu opinión:

Enviar comentarios sobre…

Documentación de Dialogflow
¿Necesitas ayuda? Visita nuestra página de asistencia.