Intents

Un intent categoriza la intención de un usuario final en un turno de conversación.

Una intención contiene los siguientes datos:

Término Definición
Nombre visible Nombre que se muestra en la consola de la intención.
Etiquetas Etiquetas que ayudan a clasificar las intenciones. Por ejemplo, intención principal.
Frases de preparación Las frases de entrenamiento son frases de ejemplo de lo que pueden escribir o decir los usuarios finales, lo que se conoce como entrada de usuario final. Cuando la entrada del usuario final se parece a una de estas frases, los agentes conversacionales (Dialogflow CX) la asocian con la intención. No tienes que definir todos los ejemplos posibles, ya que el aprendizaje automático integrado de Conversational Agents (Dialogflow CX) amplía tu lista con otras frases similares.
Parámetros Defines las frases de entrenamiento para usar parámetros y extraer valores de partes específicas de la entrada del usuario final.
Patrones DTMF Consulta DTMF para integraciones de telefonía.

Concordancia de intents

Cuando un usuario final introduce datos (texto, voz o pulsaciones de teclas del teléfono), los agentes conversacionales (Dialogflow CX) comparan los datos con las frases de entrenamiento de las intenciones para encontrar la mejor coincidencia. Este proceso se denomina "coincidencia de intenciones". La coincidencia de intenciones solo puede producirse en intenciones asociadas a una ruta de intención (un controlador de estado con un requisito de intención) en el ámbito.

La entrada de pulsaciones de teclas se corresponde con patrones DTMF. Sin embargo, al buscar un intent que coincida con un texto, Conversational Agents (Dialogflow CX) asigna una puntuación a las posibles coincidencias con una confianza de detección de intents, también conocida como puntuación de confianza. Estos valores van de 0,0 (totalmente incierto) a 1,0 (totalmente cierto). Una vez que se han puntuado las intenciones, hay dos resultados posibles:

  • Si la intención con la puntuación más alta tiene una puntuación de confianza igual o superior al ajuste del umbral de clasificación, se devuelve como una coincidencia.
  • Si ningún intent cumple el umbral, se invocará un evento de no coincidencia.

Frases de preparación

Las frases de entrenamiento son frases de ejemplo de lo que pueden escribir o decir los usuarios finales, lo que se conoce como entrada del usuario final. Por cada intención, se crean muchas frases de entrenamiento. Cuando la entrada de un usuario final se parece a una de estas frases, los agentes conversacionales (Dialogflow CX) la asocian con la intención.

Por ejemplo, la frase de entrenamiento "Quiero pizza" entrena a tu agente para que reconozca las entradas de los usuarios finales que sean similares a esa frase, como "Pide una pizza" o "Quiero pedir una pizza".

No tienes que definir todos los ejemplos posibles, ya que el aprendizaje automático integrado de Conversational Agents (Dialogflow CX) amplía tu lista con otras frases similares. Debes crear al menos entre 10 y 20 frases de entrenamiento (en función de la complejidad de la intención) para que tu agente pueda reconocer una variedad de entradas de usuario final. Por ejemplo, si quieres que tu intención reconozca la entrada de un usuario final sobre su color favorito, puedes definir las siguientes frases de entrenamiento:

  • "Me gusta el rojo"
  • "Mi color favorito es el amarillo"
  • "black"
  • "El azul es mi color favorito"
  • ...

Generar y traducir automáticamente frases de entrenamiento

Puedes usar la generación de IA para generar automáticamente las frases de entrenamiento en lugar de introducirlas manualmente. Para usar esta función:

  1. Ve a la pestaña Gestionar y haz clic en Intenciones. Elige una intención o haz clic en + Crear para crear una.
  2. Asegúrate de introducir un propósito para la intención en el campo Descripción. Por ejemplo, "Esta intención se activa cuando un usuario pregunta por el estado de su pedido". El generador de IA usa este campo para generar frases de entrenamiento más precisas.
  3. Haz clic en el botón radial __ frases recién generadas por IA. El valor predeterminado es 3. Si generas más de 15 frases de entrenamiento a la vez, pueden producirse errores.
  4. Haz clic en + Añadir. La IA generará el número de frases de entrenamiento que hayas especificado y las incluirá en la tabla. Asegúrate de revisar todas las frases de entrenamiento generadas para comprobar que son correctas.

Para obtener información sobre cómo usar esta función para generar y traducir automáticamente datos a idiomas distintos del predeterminado, consulta la documentación sobre agentes multilingües.

Anotar frases de preparación

Tú controlas cómo se extraen los datos de los usuarios finales anotando partes de tus frases de entrenamiento y configurando los parámetros asociados.

Por ejemplo, considera la frase de entrenamiento "¿Qué tiempo va a hacer mañana en Tokio?". Debes anotar "mañana" con un parámetro date y "Tokio" con un parámetro location. Cuando anotas partes de una frase de entrenamiento, Conversational Agents (Dialogflow CX) reconoce que estas partes son solo ejemplos de los valores reales que proporcionarán los usuarios finales en el tiempo de ejecución. Si un usuario introduce una consulta como "¿Qué tiempo hará el viernes en Sídney?", Conversational Agents (Dialogflow CX) extraerá el parámetro date de "Friday" y el parámetro location de "Sydney".

Debes anotar todas las partes de la frase de entrenamiento que quieras extraer como parámetros. De lo contrario, Dialogflow no extraerá los valores.

Cuando creas un agente con la consola, la mayoría de las anotaciones se crean automáticamente al añadir frases de entrenamiento que contienen partes que se pueden asociar a un tipo de entidad. Estas partes se resaltan en la consola. Puedes editar estas anotaciones y parámetros según sea necesario.

Para anotar manualmente una frase de entrenamiento con la consola, sigue estos pasos:

  1. Selecciona la parte de la frase de entrenamiento que quieras anotar.
  2. Seleccione el tipo de entidad que quiera en la lista.
  3. Se creará un parámetro en la tabla de parámetros que aparece más abajo.

Cuando crees un agente con la API, debes anotar manualmente las partes de las frases de entrenamiento. Consulta el tipo TrainingPhrase que usa el tipo Intent.

Selecciona un protocolo y una versión para la referencia de Intent:

Protocolo V3 V3beta1
REST Recurso de intención Recurso de intención
RPC Interfaz de intents Interfaz de intents
C++ IntentsClient No disponible
C# IntentsClient No disponible
Go IntentsClient No disponible
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP No disponible No disponible
Python IntentsClient IntentsClient
Ruby No disponible No disponible

Entidades implícitas creadas por frases de preparación

La mayoría de las entidades personalizadas se definen explícitamente creando tipos de entidades y añadiendo entradas de entidades. Sin embargo, las entidades personalizadas también pueden contener valores implícitos. Esto ocurre cuando anotas texto de una frase de entrenamiento, y el texto anotado no es un valor definido por el tipo de entidad seleccionado. El texto anotado se convierte en un valor de referencia de entidad para la entrada de entidad añadida implícitamente. Si el tipo de entidad es una entidad de mapa, el texto también se convierte en un sinónimo de la entrada de la entidad.

Intent de bienvenida predeterminado

Cuando creas un agente, se genera una intención de bienvenida predeterminada. En algunos idiomas, la intención tiene frases de entrenamiento sencillas, como "Hola", que se usan para que coincidan con la entrada inicial del usuario final. Puedes editar esta intención como quieras.

Cuando uses la API, puedes hacer referencia a esta intención con el siguiente ID:

00000000-0000-0000-0000-000000000000

Si tu agente inicia la conversación, puedes activar esta intención mediante la API. Usa el valor projects/<PROJECT_ID>/locations/<LOCATION_ID>/agents/<AGENT_ID>/intents/00000000-0000-0000-0000-000000000000 en el campo QueryInput.intent.intent al llamar al método detectIntent o streamingDetectIntent.

Intent negativo predeterminado

Cuando creas un agente, se crea una intención negativa predeterminada. Puedes añadir frases de entrenamiento a esta intención que actúen como ejemplos negativos. Puede haber casos en los que la entrada del usuario final se parezca ligeramente a las frases de entrenamiento de las intenciones normales, pero no quieras que estas entradas coincidan con ninguna intención normal.

Por ejemplo, un agente de reservas de habitaciones puede tener una frase de entrenamiento como "Quería reservar una habitación". Si el usuario final quiere comprar un libro sobre habitaciones, puede decir "Quiero comprar un libro sobre habitaciones". Para asegurarte de que la entrada del usuario final no coincida con tu intención, puedes añadir esa frase como ejemplo negativo.

Además, debes añadir posibles frases que estén fuera del ámbito del agente, para que no coincidan con ninguna intención. Sin embargo, no añadas una cantidad muy grande de estas frases. Por ejemplo, si define 10.000 frases de intención negativas predeterminadas, esto afectará negativamente a la coincidencia de intenciones normal.

Debe revisar estas frases con regularidad, ya que es posible que algunas de ellas no estuvieran incluidas originalmente en el ámbito del agente, pero se hayan añadido posteriormente a las intenciones.

La intención negativa predeterminada influye en todas las coincidencias de intenciones. Las frases que añadas pueden mejorar la concordancia de una intención, pero perjudicar la de otra. Por ejemplo, puedes añadir "llamadas internacionales" a la intención negativa predeterminada para evitar que se asigne a una intención de viaje internacional. Sin embargo, esto también evitará que la frase coincida con una intención de llamada internacional.

Cuando uses la API, puedes hacer referencia a esta intención con el siguiente ID:

00000000-0000-0000-0000-000000000001

Cancelar intents

Durante una conversación, el usuario final puede querer cancelar el tema de conversación actual. Por ejemplo, puede que la página activa esté pidiendo una fecha para una nueva cita, pero el usuario final haya decidido no crearla. El usuario final puede decir algo como "cancelar" o "no quiero una cita nueva". Para gestionar esta situación, puedes crear uno o varios intentos de cancelación para tu agente. Puedes ponerles el nombre que quieras a estas intenciones de cancelación, pero lo habitual es incluir "cancel" en el nombre. Debe asociar estas intenciones de cancelación con rutas de intención que estén en el ámbito en los puntos relevantes de la conversación. Estas rutas de intención deben redirigir a una página adecuada para gestionar la cancelación.

Las frases de entrenamiento de las intenciones de cancelación deben gestionar tanto los intentos genéricos como los específicos de un tema para cancelar. Por ejemplo:

  • Cancelar
  • Detener
  • He cambiado de opinión
  • Mejor no
  • Volver a la consola anterior
  • Volver
  • No quiero concertar una cita
  • Cancelar nueva cita
  • Eliminar cita nueva

Crear una intención

Para crear una intención, sigue estos pasos:

Consola

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Intenciones.
  6. Haz clic en + Crear.
  7. Introduce los datos de la intención.
  8. Haz clic en Guardar.

API

Consulta el método create del tipo Intent.

Selecciona un protocolo y una versión para la referencia de Intent:

Protocolo V3 V3beta1
REST Recurso de intención Recurso de intención
RPC Interfaz de intents Interfaz de intents
C++ IntentsClient No disponible
C# IntentsClient No disponible
Go IntentsClient No disponible
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP No disponible No disponible
Python IntentsClient IntentsClient
Ruby No disponible No disponible

Eliminar un intent

Para eliminar un intent, sigue estos pasos:

Consola

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Intenciones.
  6. Coloca el cursor sobre la intención que quieras eliminar.
  7. Haz clic en el botón Eliminar .

API

Consulta el método delete del tipo Intent.

Selecciona un protocolo y una versión para la referencia de Intent:

Protocolo V3 V3beta1
REST Recurso de intención Recurso de intención
RPC Interfaz de intents Interfaz de intents
C++ IntentsClient No disponible
C# IntentsClient No disponible
Go IntentsClient No disponible
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP No disponible No disponible
Python IntentsClient IntentsClient
Ruby No disponible No disponible

Acceder a los datos de intención

Para acceder a los datos de intención, haga lo siguiente:

Consola

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Intenciones.
  6. Haz clic en la intención a la que quieras acceder.
  7. Ver o actualizar los datos de intención.
  8. Haz clic en Guardar para guardar los cambios.

API

Consulta los métodos get y patch/update del tipo Intent.

Selecciona un protocolo y una versión para la referencia de Intent:

Protocolo V3 V3beta1
REST Recurso de intención Recurso de intención
RPC Interfaz de intents Interfaz de intents
C++ IntentsClient No disponible
C# IntentsClient No disponible
Go IntentsClient No disponible
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP No disponible No disponible
Python IntentsClient IntentsClient
Ruby No disponible No disponible

Sugerencias de intents

Dialogflow analiza automáticamente las coincidencias nulas durante las conversaciones y puede sugerir nuevos intents o recomendar frases de entrenamiento adicionales para los intents que ya tengas. Aceptar estas sugerencias puede ayudar a evitar que se produzcan más coincidencias no encontradas en el futuro.

Cuando uses sugerencias, puedes ajustar el tamaño del clúster. Los valores más pequeños del tamaño del clúster sugieren más intenciones con menos frases de entrenamiento por intención. Los valores más altos del tamaño del clúster sugieren que hay menos intenciones, pero con más frases de entrenamiento por intención.

Para aceptar sugerencias de intenciones, sigue estos pasos:

Consola

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Intenciones.
  6. Haga clic en la pestaña Sugerencias.
  7. Ajusta el Tamaño del clúster como quieras.
  8. Selecciona una sugerencia.
  9. Selecciona las frases de entrenamiento que quieras.
  10. En el caso de la intención de destino, añade las frases de entrenamiento a una intención que ya tengas o a una nueva.
  11. Haz clic en Guardar o en Crear nuevo para guardar los cambios. Cuando aceptas sugerencias de intenciones, la intención permanece en la lista de sugerencias.

Dividir intents

Puedes dividir una intención en dos intenciones con la consola. La interfaz te permite seleccionar frases de entrenamiento de una intención de origen y moverlas a una nueva intención:

Consola

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Intenciones.
  6. Selecciona la intención que quieras dividir.
  7. Haz clic en Dividir.
  8. Selecciona las intenciones de la intención de origen.
  9. Haz clic en Mover a la derecha.
  10. Proporciona otros detalles sobre la intención de destino.
  11. Haz clic en Dividir.

Comparar y combinar intents

Puedes comparar o combinar dos intenciones en una sola intención con la consola:

Consola

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Intenciones.
  6. Selecciona las dos intenciones que quieras comparar o combinar.
  7. Haz clic en Comparar.
  8. Las frases de entrenamiento se muestran una al lado de la otra para que puedas compararlas.
  9. Para combinar las dos intenciones, haz clic en Combinar.

Exportar e importar intenciones

Puede exportar e importar intenciones para compartirlas entre agentes.

Una de las opciones de formato de exportación es CSV, que tiene las siguientes columnas:

  • Nombre visible del intent
  • Idioma
  • Frase

Cada entrada contiene el nombre visible, el idioma y la primera frase de entrenamiento, o solo una frase de entrenamiento de la intención declarada anteriormente. Dialogflow codifica las anotaciones en las frases de preparación exportadas para que se restauren al importarlas. El formato de esta codificación es el siguiente:

(annotated part)[entity, parameter]

Por ejemplo:

Intent Display Name,Language,Phrase
Shirt Selection,en,I want a (green)[@sys.color, color] shirt
,,I would like a (yellow)[@sys.color, color] shirt
Store Hours,en,When are you open?
,,What are your hours?

Al importar intenciones, puede haber conflictos de combinación si el nombre visible de una intención de tu agente coincide con el de una intención importada. Puedes controlar el comportamiento de la combinación cuando los nombres visibles de las intenciones coincidan. Para ello, selecciona una de las siguientes opciones:

  • Reemplazar las intenciones actuales: una intención importada sobrescribe cualquier intención con el mismo nombre en tu agente.
  • Cambiar el nombre e importar como nuevos intents: Se cambia el nombre del intent importado añadiendo "_1" al nombre visible.
  • Combinar con intenciones actuales: las frases de entrenamiento de una intención importada se añaden a la intención actual. Si ya existen las mismas frases de entrenamiento, no se duplicarán.
  • Mantener las intenciones originales: la intención original no cambia y la intención conflictiva se ignora. Se importan las intenciones que no entran en conflicto.

Para exportar intenciones, siga estos pasos:

Consola

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Intenciones.
  6. Selecciona cada intención que quieras exportar.
  7. Haz clic en Exportar las intenciones seleccionadas.
  8. Selecciona el formato y el destino que quieras.
  9. Haz clic en Enviar.

Para importar intenciones, sigue estos pasos:

Consola

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Intenciones.
  6. Haz clic en Importar.
  7. Selecciona la fuente.
  8. Si hay algún conflicto, se muestra una ventana de diálogo que permite seleccionar el comportamiento de la combinación.
  9. Haz clic en Enviar.

Exportar e importar frases de entrenamiento

Puedes exportar e importar frases de entrenamiento de una intención.

El formato de archivo para la importación es CSV, sin encabezado de columna y con una sola columna. Por ejemplo:

"I want a pony"
"I need a pony"
"I must have a pony"

Cuando importes frases de entrenamiento, puedes elegir uno de los siguientes modos de importación:

  • Importar como nuevas frases de entrenamiento: las frases de los archivos se añaden a la lista de frases que ya hay.
  • Sustituir frases de entrenamiento: se eliminan las frases de entrenamiento que ya tengas y se añaden las frases de entrenamiento de los archivos.

De forma predeterminada, las frases de entrenamiento importadas se anotan automáticamente. Para inhabilitar este comportamiento, selecciona Omitir anotación automática.

Para exportar las frases de entrenamiento de una intención, sigue estos pasos:

Consola

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Intenciones.
  6. Selecciona una intención.
  7. Desplázate hacia abajo hasta la sección Frases de entrenamiento.
  8. Selecciona las frases de entrenamiento que quieras exportar.
  9. Haz clic en Exportar.

Para importar frases de entrenamiento de un intent, sigue estos pasos:

Consola

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Intenciones.
  6. Selecciona una intención.
  7. Desplázate hacia abajo hasta la sección Frases de entrenamiento.
  8. Si quieres, selecciona Saltar anotación automática.
  9. Haz clic en el botón de importar situado encima de la lista de frases de entrenamiento.
  10. Selecciona un archivo y un modo de importación.
  11. Haz clic en Enviar.

Al diseñar agentes, a veces es útil pensar en las intenciones como intenciones principales o intenciones complementarias.

Una intención principal identifica el propósito principal del usuario final al interactuar con un agente. Una intención complementaria identifica las preguntas posteriores de un usuario final que están relacionadas con la intención principal. Estas preguntas posteriores pueden proporcionar contexto adicional sobre las necesidades del usuario final o ser preguntas de seguimiento que le ayuden a aclarar o entender mejor algo.

Una intención principal suele ser una de las primeras intenciones que se identifican en una conversación, mientras que las preguntas posteriores de los usuarios finales se corresponden con intenciones complementarias. Por ejemplo:

Creación de diálogos Explicación
Usuario final: activa un teléfono nuevo.
Agente: claro, puedo ayudarte. ¿Cuáles son los últimos cuatro dígitos del número de teléfono que quieres activar?
Se corresponde con la intención de la consulta
Usuario final: 1234
Agente: ¿Estás listo para activar tu teléfono?
Se ha definido un parámetro
Usuario final: ¿Se transferirán todos mis mensajes a mi nuevo teléfono?
Agente: ...
Se ha encontrado una coincidencia con la intención suplementaria