Exportar intents en Dialogflow CX, de un agente a otro, es ahora más sencillo y rápido gracias a una nueva funcionalidad que también permite transferir frases de entrenamiento
Google ha puesto disponible de forma general dos nuevas funciones en Dialogflow CX que van a facilitar en gran medida el trabajo diario de lingüistas que utilizan la consola. Se trata de la posibilidad de exportar e importar tanto intents como frases de entrenamiento.
En la construcción de asistentes conversacionales hay algunas tareas recurrentes, como son la definición de intents y los entrenamientos del agente. En muchos casos, incluso, el propio contenido de los agentes es parecido, independientemente del sector al que vaya destinado el asistente virtual. Por ejemplo, prácticamente la totalidad de bots poseen intents de bienvenida y despedida, así como un específico para cuando ocurre algún error (fallback intent).
Hasta ahora, si se quería reutilizar parte de ese trabajo en diferentes asistentes virtuales, no existía un mecanismo de exportación e importación en la consola. También había que realizar esta tarea de forma manual en caso de querer compartir esta información entre miembros de un mismo equipo.
Es cierto que hace unos meses se incluyó la funcionalidad de duplicar un agente. Pero esta opción tampoco resultaba del todo útil, ya que con ella se clona el agente de forma íntegra. Esto obligaba a eliminar a posteriori todo lo que no era válido en el nuevo caso de uso.
Con la nueva funcionalidad de Dialogflow CX, ahora se puede seleccionar uno o varios intents de un agente y exportarlos en bloque para, después, importarlos en un nuevo proyecto. Con ello, se elimina el tener que duplicar 100% otro agente y luego eliminar lo que no se necesita.
Al usar la función export, la consola generará un archivo CSV que será el que podamos subir de nuevo a la plataforma. De esta forma, también se elimina el paso intermedio de documentar en excel el listado de intenciones y frases de entrenamiento para posteriormente convertir el archivo en CSV, pues es el formato necesario para la importación.
Exportar e importar intents en Dialogflow CX
En el CSV resultado de la exportación encontrarás las siguientes columnas:
- Nombre visible de intent
- Lenguaje
- Frase
Cada entrada contiene el nombre visible, el idioma y la primera frase de entrenamiento. Dialogflow codifica las anotaciones en las frases de entrenamiento exportadas para que se puedan reestablecer al importarse. Se codifican en el siguiente formato:
(annotated part)[entity, parameter]
Por ejemplo, la importación de un intent de información sobre seguros de automóvil quedaría así:
Intent Display Name,Language,Phrase
car.information,es,"preguntar por seguros de (auto)[@coche, coche]"
,,"(auto)[@coche, coche] lo cubre seguro"
,,"me gustaría saber si el seguro de (coche)[@coche, coche] cubre asistencia"
Exportar un intent
Realizar una exportación de intents en Dialogfow CX es muy sencillo. Sólo hay que seguir los siguientes pasos:
- Abre la consola de Dialogflow CX
- Elige tu proyecto de Google Cloud
- Selecciona el agente
- Selecciona la pestaña Administrar
- Haz clic en Intents
- Selecciona cada intent que deseas exportar
- Haz clic en Exportar intents seleccionados
- Selecciona el formato y el destino que quieras
- Haz clic en Enviar
Importar un intent
El proceso de importación es casi muy similar al de exportación e igualmente asequible. De hecho, los 5 primeros pasos son idénticos:
- Abre la consola de Dialogflow CX
- Elige tu proyecto de Google Cloud
- Selecciona el agente
- Selecciona la pestaña Administrar
- Haz clic en Intents
- Haga clic en Import
- Selecciona la fuente
- Si hay algún conflicto, se mostrará una ventana de diálogo que permitirá seleccionar el comportamiento de la combinación
- Haz clic en Enviar
Conflictos al importar intents
Una cuestión que has de tener en cuenta a la hora de utilizar esta nueva función es que al importar intents puede haber conflictos de combinación si el nombre visible de un intent importado coincide con el de uno existente en el agente al que se importa. No obstante, hay varias opciones para controlar el comportamiento de combinación cuando los nombres visibles de intent coincides:
- Reemplazar los intents existentes: el ítem importado reemplazará cualquier otro, con el mismo nombre, que ya existiera en el agente.
- Cambiar nombre e importar como intents nuevos: el nombre del intent importado se actualiza agregando «_1» al nombre visible.
- Fusionar con intents existentes: las frases de entrenamiento de un intent importado se agregan al ya existente. Si coinciden las frases de entrenamiento, no se duplicarán.
- Conservar los intents originales: el intent existente no se modifica y se ignora el que entra en conflicto. Se importan los intents sin conflictos.
Exporta e importa frases de entrenamiento
El mecanismo para exportar e importar frases de entrenamiento es similar al de los intents. La principal diferencia radica en el formato de archivo del CSV de importación: sin encabezado y a una sola columna, de esta manera:
"preguntar por seguros de auto"
"auto lo cubre seguro"
"me gustaría saber si el seguro de coche cubre asistencia"
Existen dos modos de importación para las training phrases:
- Importar como frases de entrenamiento nuevas: Las frases importadas se añaden a la lista de frases de entrenamiento existentes.
- Reemplazar las frases de entrenamiento existentes: Se añaden al agente las frases importadas borrando las training phrases que existían hasta el momento.
De forma predeterminada, la herramienta anota automáticamente las frases de entrenamiento importadas. Aunque esta opción puede deshabilitarse seleccionando “Omitir anotación automática”.
Exportar training phrases
Los pasos a seguir para una exportación de training phrases en Dialogfow CX son similares a los de exportación de intents:
- Abre la consola de Dialogflow CX.
- Elige tu proyecto de Google Cloud.
- Selecciona el agente.
- Selecciona la pestaña Administrar.
- Haz clic en Intents.
- Selecciona cada intent que deseas exportar.
- Haz clic en Exportar intents seleccionados.
- Selecciona el formato y el destino que quieras.
- Haz clic en Enviar.
Importar frases de entrenamiento
Al igual que ocurría con los intents, la importación de frases de entrenamiento comparte algunos pasos con la exportación:
- Abre la consola de Dialogflow CX.
- Elige tu proyecto de Google Cloud.
- Selecciona el agente.
- Selecciona la pestaña Administrar.
- Haz clic en Intents.
- Haga clic en Import.
- Selecciona la fuente.
- Si hay algún conflicto, se mostrará una ventana de diálogo que permitirá seleccionar el comportamiento de la combinación.
- Haz clic en Enviar.
Mejoras en los componentes preconstruidos
Además de incorporar la posibilidad de exportar e importar tanto intents como frases de entrenamiento, Dialogflow CX ha experimentado también otras mejoras recientes, en concreto, en algunos de los Prebuit Components:
- Se han solucionado los problemas en los nombres con varios caracteres especiales en la recopilación de nombres (Name collection)
- Se ha actualizado el SSML en las respuestas de los agentes a la hora de recopilar las fechas de caducidad de tarjetas de crédito.
- Han solventado el problema con entidades para pronunciaciones específicas de meses y días en la recopilación de fechas de nacimiento.
Por último, Dialogflow CX ahora exporta flujos de forma recursiva y se ha añadido la función de sistema “filtro”.