Intents

Un intent clasifica la intención del usuario final para un turno de conversación. Puedes definir varios intents para cada agente, de manera que, en conjunto, estos intents permitan manejar una conversación completa. Cuando un usuario final escribe o dice algo (lo que se denomina expresión de usuario final), Dialogflow trata de identificar el intent más adecuado de tu agente para esa expresión del usuario final. La búsqueda de intents coincidentes también se conoce como clasificación de intent.

Por ejemplo, podrías crear un agente meteorológico que reconozca preguntas de los usuarios finales sobre el clima y las responda. Podrías definir un intent para las preguntas sobre el pronóstico del tiempo. Si un usuario final dice “¿Cuál es el pronóstico?”, Dialogflow determinaría que esa expresión del usuario final corresponde al intent del pronóstico. También puedes definir tu intent con el fin de extraer información útil de la expresión del usuario final, como una hora o ubicación para el pronóstico del tiempo deseado. Estos datos extraídos son importantes a fin de que tu sistema realice una consulta sobre el clima para el usuario final.

Agente que extrae datos de una expresión del usuario final que solicita el clima

Un intent básico contiene los siguientes elementos:

  • Frases de entrenamiento: Estas son frases de ejemplo de algo que podrían decir los usuarios finales. Cuando una expresión de usuario final se parece a una de estas frases, Dialogflow identifica la coincidencia con el intent. No es necesario que definas todos los ejemplos posibles, ya que el aprendizaje automático integrado de Dialogflow expande tu lista con otras frases similares.
  • Acción: Puedes definir una acción para cada intent. Cuando se identifica una coincidencia con un intent, Dialogflow proporciona la acción al sistema, y puedes usarla para activar determinadas acciones definidas en tu sistema.
  • Parámetros: Cuando se identifica una coincidencia con un intent en el entorno de ejecución, Dialogflow proporciona los valores extraídos de la expresión del usuario final en forma de parámetros. Cada parámetro tiene un tipo que se denomina tipo de entidad, el cual determina cómo se extraen los datos. A diferencia de la entrada sin procesar del usuario final, los parámetros son datos estructurados que se pueden usar con facilidad para realizar alguna lógica o generar respuestas.
  • Respuestas: Debes definir las respuestas de texto, de voz o visuales que se le mostrarán al usuario final. Estas pueden responder una pregunta del usuario final, solicitarle más información o finalizar la conversación.

En el siguiente diagrama, se muestra el flujo básico para identificar coincidencias de intents y responderle al usuario final:

Intent y agente que manejan una expresión de usuario final

Un intent más complejo también puede contener lo siguiente:

  • El concepto de contexto en Dialogflow es similar al que se usa en el lenguaje natural. Si una persona te dice “son naranjas”, necesitas contexto para entender a qué se refiere. Del mismo modo, para que Dialogflow maneje una expresión de usuario final como esa, se debe proporcionar un contexto que le permita identificar el intent correspondiente.
  • Eventos: Con los eventos, puedes invocar un intent basado en algo que haya sucedido, en lugar de lo que comunica un usuario final.