Creación de una intención
Estos son los pasos para crear una intención en una aptitud.
Agregar entidades a intenciones


Agnóstico de valor solo se aplica a entidades incorporadas. No puede aplicarlo a entidades personalizadas.
También puede hacer clic en Nueva entidad para agregar una entidad específica de la intención.
Consejo:
Solo las entidades de intención incluidas en las cargas útiles de JSON se envían al servicio de componentes y son devueltas por este. Las que no estén asociadas a una intención no se incluirán, aunque contribuyan a la resolución de la intención reconociendo la entrada del usuario. Si el componente personalizado accede a las entidades mediante coincidencias de entidad, asegúrese de agregar la entidad a la intención.Entidades de intención independiente del valor
La función Agnóstico de valor permite ajustar cómo afectan los valores de entidad a la clasificación de intenciones. Al activar esta función, los valores específicos de una entidad incorporada asociada no influyen en la clasificación de intenciones. Sin embargo, al desactivar esta función, permite que el valor de entidad desempeñe un papel clave en la resolución de la entrada.
Intenciones de ejemplo | Entidad Asociada | Expresiones de formación | ¿Desea activar la independencia del valor? |
---|---|---|---|
Balance de Cuentas | FECHA |
|
Sí: los valores de fecha específicos no indican la intención. Los distintos valores de fecha de estas expresiones se pueden ignorar porque un usuario puede solicitar un saldo de cuenta en cualquier día. |
Horas de tienda de vacaciones | FECHA |
|
No: la clasificación de intenciones se basa en un juego específico (y limitado) de valores y los usuarios están preguntando sobre los festivos. |
|
FECHA |
|
No: desactive Agrupación de valores para ambas intenciones. Los valores DATE agnósticos en este caso significaría que el modelo no consideraría un valor como pasado o futuro. Se ignoraría un valor de "último mes", que debería indicar la intención Comprobar saldo de vacaciones pasado. Como resultado, una entrada con palabras similares como "Did I take any time off next month" puede resolverse de forma incorrecta para esta intención. |
Importación de intenciones desde un archivo CSV
Puede agregar sus intenciones de forma manual o importarlas desde un archivo CSV. Puede crear este archivo a partir de un CSV de intenciones exportadas o crearlo desde cero en un programa de hoja de cálculo o un archivo de texto.
El archivo CSV tiene seis columnas para aptitudes que utilizan el modo de idioma con soporte nativo y cinco columnas para las que no lo hacen. Estos son los nombres de columna y lo que representan:
query
: ejemplo de expresión.topIntent
: intención con la que debe coincidir la expresión.conversationName
: nombre de la conversación de la intención.answer
: para las intenciones de respuesta, respuesta estática de la intención.enabled
: si el valor estrue
, la intención está activada en la aptitud.nativeLanguageTag
: (solo para aptitudes con soporte en idioma nativo) el idioma de la expresión. Para valores, utilice etiquetas de idioma de dos caracteres (fr
,en
, etc.).- Para las aptitudes con soporte de idioma nativo de Digital Assistant, esta columna es necesaria.
- Para las aptitudes sin el soporte de idioma nativo, no puede importar un CSV que tenga esta columna.
A continuación, se muestra un extracto de un archivo CSV para una aptitud que no tiene soporte de idioma nativo y que no utiliza intenciones de respuesta.
query,topIntent,conversationName,answer,enabled
I want to order a pizza,OrderPizza,Order a Pizza.,,true
I want a pizza,OrderPizza,Order a Pizza.,,true
I want a pizaa,OrderPizza,Order a Pizza.,,true
I want a pizzaz,OrderPizza,Order a Pizza.,,true
I'm hungry,OrderPizza,Order a Pizza.,,true
Make me a pizza,OrderPizza,Order a Pizza.,,true
I feel like eating a pizza,OrderPizza,Order a Pizza.,,true
Gimme a pie,OrderPizza,Order a Pizza.,,true
Give me a pizza,OrderPizza,Order a Pizza.,,true
pizza I want,OrderPizza,Order a Pizza.,,true
I do not want to order a pizza,CancelPizza,Cancel your order.,,true
I do not want this,CancelPizza,Cancel your order.,,true
I don't want to order this pizza,CancelPizza,Cancel your order.,,true
Cancel this order,CancelPizza,Cancel your order.,,true
Can I cancel this order?,CancelPizza,Cancel your order.,,true
Cancel my pizza,CancelPizza,Cancel your order.,,true
Cancel my pizaa,CancelPizza,Cancel your order.,,true
Cancel my pizzaz,CancelPizza,Cancel your order.,,true
I'm not hungry anymore,CancelPizza,Cancel your order.,,true
don't cancel my pizza,unresolvedIntent,unresolvedIntent,,true
Why is a cheese pizza called Margherita,unresolvedIntent,unresolvedIntent,,true
A continuación, se muestra un extracto de un archivo CSV para una aptitud con soporte en idioma nativo que utiliza intenciones de respuesta.
query,topIntent,conversationName,answer,enabled,nativeLanguageTag
Do you sell pasta,Products,Our Products,We sell only pizzas. No salads. No pasta. No burgers. Only pizza,true,en
Vendez-vous des salades,Products,Our Products,Nous ne vendons que des pizzas. Pas de salades. Pas de pâtes. Pas de hamburgers. Seulement pizza,fr
do you sell burgers,Products,Our Products,We sell only pizzas. No salads. No pasta. No burgers. Only pizza,true,en
Do you sell salads,Products,Our Products,We sell only pizzas. No salads. No pasta. No burgers. Only pizza,true,en
Vendez des hamburgers,Products,Our Products,Nous ne vendons que des pizzas. Pas de salades. Pas de pâtes. Pas de hamburgers. Seulement pizza,true,fr
Para importar un archivo CSV:
-
Haga clic en Intenciones (
) en la barra de navegación izquierda.
-
Haga clic en Más y, a continuación, seleccione Importar intenciones.
Descripción de la ilustración import-intents.png -
Seleccione el archivo
.csv
y, a continuación, haga clic en Abrir. -
Entrene la aptitud.
Exportación de intenciones a un archivo CSV
Puede volver a utilizar el corpus de entrenamiento exportándolo a un archivo CSV. A continuación, puede importar este archivo en otra aptitud.
-
Haga clic en Intenciones
en la barra de navegación izquierda.
-
Haga clic en Más y, a continuación, seleccione Exportar intenciones.
Descripción de la ilustración export-corpus.png -
Guardar el archivo. Este archivo tiene las siguientes columnas, que se describen en Importación de intenciones desde un archivo CSV:
query, topIntent, conversationName, answer, enabled, nativeLanguageTag
¿Qué modelo de entrenamiento debo utilizar?
No puede utilizar Trainer Ht para aptitudes que utilicen intenciones de respuesta, utilicen soporte de idioma nativo o tengan un gran número de intenciones. Utilice Trainer Tm para estas aptitudes.
Trainer Tm
No es necesario aumentar los datos de entrenamiento con expresiones que admitan la sensibilidad a mayúsculas/minúsculas (por ejemplo, Tm reconoce BlacK Friday como Black Friday), la puntuación, verbos y sustantivos similares o errores ortográficos. En este último caso, Trainer Tm utiliza el contexto para resolver una frase incluso si un usuario introduce una palabra clave incorrectamente. Estas son algunas directrices generales para crear un corpus de entrenamiento al desarrollar una aptitud con este modelo.
- El reconocimiento del contenido irrelevante. En Estoy muy emocionado con las ofertas del próximo Black Friday, estoy impaciente por conocerlas. ¿Puede decirme qué va a estar en oferta para el Black Friday?, Trainer Tm:
- Desecha el contenido extraño (Estoy muy emocionado con las ofertas del próximo Black Friday...)
- Resuelve el contenido relevante (¿Puede decirme qué va a estar en oferta para el Black Friday?) en una intención. En este caso, la intención se denomina Ofertas de Black Friday.
Trainer Tm también puede distinguir entre el contenido relevante e irrelevante de un mensaje, incluso si el contenido irrelevante puede resolverse en una intención. Por ejemplo, He comprado el nuevo televisor de 80 pulgadas en Black Friday por 2200 $, pero ahora veo que el mismo juego está disponible en línea por 2100 $. ¿Ofrecen una igualación de precios?se podría hacer coincidir con la intención Ofertas de Black Friday y con una intención Igualación de precios, que es adecuada para este mensaje. En este caso, Trainer Tm:- Reconoce que He comprado el nuevo televisor de 80 pulgadas en Black Friday por 2200 $, pero ahora veo que el mismo juego está disponible en línea por 2100 $ es un contenido extraño.
- Resuelve ¿Ofrecen una igualación de precios?
- Resuelve las intenciones cuando una sola palabra o un nombre coincide con una entidad. Por ejemplo, Trainer Tm puede resolver un mensaje que consiste solo en Black Friday en una intención asociada a una entidad de Black Friday.
- Distingue entre expresiones similares (Cancelación de mi orden frente a ¿Por qué ha realizado la cancelación de mi orden?).
- Reconoce expresiones fuera de ámbito, como Mostrar recetas de pizza o Cuántas calorías tiene una Meat Feast para una aptitud para pedir pizza y nada más.
- Reconoce expresiones fuera de ámbito, como Qué tiempo hace hoy para una aptitud para pedir pizza.
Consejo:
Aunque Tm de entrenador puede distinguir fácilmente cuando un mensaje de usuario no se puede clasificar porque es claramente diferente de los datos de entrenamiento, puede que desee definir unaunresolvedIntent
con expresiones que representen las frases que desee asegurarse de que no se resuelven en ninguna de las intenciones de la aptitud. Estas frases pueden estar dentro del dominio de la aptitud, pero seguir fuera de ámbito, aunque puedan compartir algunas palabras iguales a las de los datos de entrenamiento. Por ejemplo, Quiero pedir un vehículo para una aptitud de pizza, que también se ha entrenado con Quiero pedir una pizza. - Distingue entre entidades similares; por ejemplo, Tm reconoce que el correo no es lo mismo que el correo electrónico en el contexto de una intención denominada Registrarse para ofertas por correo electrónico. Debido a que reconoce que una entidad denominada correo ordinario estaría fuera de ámbito, resolvería la frase Quiero suscribirme para las ofertas por correo ordinario con una confianza inferior que Quiero suscribirme para las ofertas por correo electrónico.
Trainer Ht
Trainer Ht es el modelo de entrenamiento por defecto. Solo necesita un pequeño corpus de entrenamiento, así que se puede utilizar a medida que se desarrollan las entidades, las intenciones y el corpus de entrenamiento. Cuando el corpus de entrenamiento se haya desarrollado hasta un punto en el que las pruebas muestren una gran precisión en la resolución de las intenciones, podrá agregar una dimensión más profunda al conocimiento de su aptitud mediante el entrenamiento con Trainer Tm.
Puede hacerse una idea de cómo Trainer Ht resuelve las intenciones a partir del corpus de entrenamiento. Forma reglas de coincidencia a partir de las reglas de coincidencia de las frases de ejemplo, etiquetando partes del discurso y entidades (tanto personalizadas como incorporadas) y detectando aquellas palabras que tienen el mismo significado en el contexto de la intención. Si una intención denominada SendMoney contiene las expresiones Enviar 500 € a mamá y Pagar 500 € a Cleo, por ejemple, Trainer Ht interpreta que pagar y enviar son equivalentes. Tras el entrenamiento, el etiquetado de Trainer Ht reduce estas frases a plantillas (Enviar dinero a una persona, Pagar a una persona dinero) que aplica a las entradas del usuario.
Dado que Trainer Ht se basa en las frases proporcionadas por el usuario, puede predecir su comportamiento: mostrará una gran precisión cuando se pruebe con frases parecidas a las que componen el corpus de entrenamiento (las entradas de usuario que siguen las reglas, por así decirlo), pero su rendimiento puede no sea tan bueno si se enfrenta a entradas de usuario abstrusas.
Creación del corpus de entrenamiento
Al definir una intención, lo primero que se hace es asignarle un nombre adecuado a la acción del usuario y, a continuación, se compila un conjunto de enunciados reales del usuario, también denominados expresiones. En conjunto, las intenciones y las expresiones que contienen componen un corpus de entrenamiento. El término corpus es una forma rápida de decir “todas las intenciones y frases de ejemplo que se me han ocurrido para aumentar la inteligencia de esta aptitud”. El corpus es la clave de la inteligencia de la aptitud. Al entrenar un modelo con el corpus, lo que hace es, básicamente, convertir dicho modelo en una herramienta de referencia para resolver las entradas de usuario en una única intención. Dado que, en última instancia, el corpus de entrenamiento tiene el papel principal a la hora de decidir qué camino va a tomar la conversación entre la aptitud y la persona, es necesario elegir las palabras con cuidado al crearlo.
Por lo general, un conjunto amplio y variado de frases de ejemplo incrementa la capacidad del modelo para resolver las intenciones correctamente. Sin embargo, para crear un corpus de entrenamiento sólido no nos limitaremos a frases de ejemplo bien construidas, sino que empezaremos con intenciones claramente definidas. No solo deben reflejar los casos prácticos, sino que su relación con las frases de ejemplo debe ser evidente. Si no tiene claro dónde situar una frase de ejemplo, las intenciones no son diferentes entre sí.
Es posible que esté pensando en alguna expresión de ejemplo mientras crea las intenciones, pero puede desarrollarlas utilizando estas directrices.
Directrices para Trainer Tm
- Utilice un umbral de seguridad mínimo de 0,7 para cualquier aptitud que desee poner en producción.
- Utilice convenciones de nomenclatura adecuadas para los nombres de las intenciones, de modo que sea sencillo revisar las intenciones relacionadas.
- Como regla general, cree al menos de 80 a 100 expresiones para cada intención. Según las directrices de tamaño y unidad del corpus, el número mínimo (aunque no recomendado) de expresiones para una intención es dos. El número total de expresiones del juego de entrenamiento no debe superar los 25 000.
- Si es posible, utilice frases sin modificar y con palabras del mundo real que incluyan:
- coloquiales
- abreviaturas estándar que un usuario pueda introducir ("dto." por descuento, por ejemplo)
- nombres no estándar, como los nombres de productos
- variantes ortográficas ("reembolso" y "rembolso", por ejemplo)
- Cree frases totalmente formadas que mencionen tanto la acción como la entidad en la que se realiza la acción.
- Intente mantener la longitud de la expresión entre 3 y 30 palabras. Las expresiones que son demasiado cortas y carentes de contexto pueden hacer que el modelo se generalice de maneras impredecibles. Las expresiones que son demasiado largas pueden impedir que el modelo identifique las palabras y frases pertinentes. Sin embargo, puede haber excepciones para las expresiones de una o dos palabras cuando son frases de uso común. Si espera mensajes de dos palabras como estado de pedido, comprobación de precios, información de afiliación o envío internacional) que especifiquen la entidad y la acción, agréguelos a los datos de entrenamiento. Asegúrese de que las frases de ejemplo tengan una acción y una entidad.
- Sea concreto. Por ejemplo, ¿Cuál es el número de teléfono de su tienda? es mejor que ¿Cuál es su número de teléfono? porque permite a Trainer Tm asociar un número de teléfono a una tienda. Como resultado de este aprendizaje, resolverá ¿Cuál es el número de teléfono de tu madre? en una puntuación de confianza más baja.
- Aunque Trainer Tm detecta las expresiones fuera de ámbito, puede mejorar aún más la confianza y la precisión creando
unresolvedIntent
para las expresiones que estén en el dominio, pero que estén fuera de ámbito para las intenciones de la aptitud. Esto permite a Trainer Tm aprender el límite de las intenciones del dominio. Puede definirunresolvedIntent
para las frases que no desee resolver con ninguna de las intenciones de la aptitud. Puede que solo desee definirunresolvedIntent
si los mensajes de usuario se han resuelto en las intenciones de una aptitud a pesar de que no se aplican a ninguna de ellos. - Varíe las palabras y las frases en torno al contenido significativo tanto como sea posible. Por ejemplo, "Me gustaría una pizza, por favor ","Quiero pedir una pizza"," Una pizza, por favor"
- Algunas prácticas que se deben evitar:
- No asocie una sola palabra o frase a una intención específica a menos que esa palabra o frase indique la intención. Las frases repetidas pueden crear un sesgo en la resolución de intenciones. Por ejemplo, si se inicia cada expresión OrderPizza con "Quiero…" y cada intención ShowMenu con "¿Puede ayudarme a…" puede aumentar la probabilidad de que el modelo resuelva todas las entrada de usuario que empiece por "Puede ayudarme a" con OrderPizza y "Quiero" con ShowMenu.
- Una alta ocurrencia de expresiones de una palabra en las intenciones. Las expresiones de una palabra son una excepción. Utilícelas con moderación, si acaso.
- Expresiones abiertas que pueden aplicarse fácilmente a otros dominios o a temas fuera de dominio.
- El corpus no necesita repetir la misma expresión con diferente caso o con diferentes formas de palabra que tengan el mismo lema. Por ejemplo, dado que Trainer Tm puede distinguir entre gestionar, gestiona y gestiones, no solo puede diferencia entre "¿Qué gestiones realiza Sam?" y "¿Qué va a gestionar Sam?", sino que también entiende que estas palabras están relacionadas entre sí.
Nota
Puede que se sienta tentado a agregar ortografías incorrectas de palabras. Pero antes de hacerlo, utilice esas ortografías incorrectas en el comprobador de expresiones para ver si el modelo las reconoce. Puede que te sorprenda lo bien que los maneja. Además, al no agregar errores ortográficos, corres menos riesgo de sesgar tu modelo de maneras inesperadas.
- Cree casos de pruebas para garantizar la integridad de la resolución de una intención.
- Ejecute el informe Visión general de la calidad de las aptitudes para mantener un juego de entrenamiento equilibrado. Ejecute el informe de anomalías para comprobar si hay expresiones mal clasificadas o inusuales.
- Al desplegar la aptitud, puede mejorar los datos de entrenamiento de forma continua mediante:
- Revisión de los resúmenes de logs de conversaciones, resúmenes de todas las conversaciones que se han producido durante el período especificado. Para activar el registro, active Activar Insights en Configuración.
- La ejecución de informes de calidad de aptitudes y la asignación (o reasignación) de mensajes de usuario reales a las intenciones con el reentrador de Insights. Si estos informes indican que
unresolvedIntent
tiene muchas expresiones erróneas dentro de las intenciones del dominio:- Mueva las expresiones dentro del ámbito de
unresolvedIntent
a las intenciones de dominio. - Mueva las declaraciones fuera de ámbito de las intenciones de dominio a
unresolvedIntent
.
- Mueva las expresiones dentro del ámbito de
Directrices para Trainer Ht
- coloquiales
- errores tipográficos comunes
- abreviaturas estándar que pueda introducir el usuario (por ejemplo, "dto." por "descuento")
- nombres no estándar, como los nombres de productos
- variantes ortográficas ("reembolso" y "rembolso", por ejemplo)
-
Cambie la estructura de vocabulario y oración en estas frases iniciales por una o dos permutaciones mediante el uso de:
-
jerga (lana, pasta, guita)
- abreviaturas estándar que un usuario pueda introducir ("dto." por descuento, por ejemplo)
- nombres no estándar, como los nombres de productos
-
expresiones comunes (¿Estoy sin blanca? para una intención denominada AccountBalance)
-
palabras alternativas (Enviar pasta a la cuenta de ahorro, Enviar fondos a la cuenta de ahorro, Enviar dinero a la cuenta de ahorro, Transferir dinero a la cuenta de ahorro.)
-
distintas categorías de objetos (Quiero pedir una pizza, Quiero pedir comida).
-
ortografía alternativa (transferencia, trasferencia)
-
errores ortográficos comunes ("ola" por hola)
-
orden de palabras poco común (A cuenta corriente, 20 € enviar)
-
- Utilice distintos conceptos para expresar la misma intención, como Tengo hambre y Hazme una pizza
- No asocie una sola palabra o frase a una intención específica a menos que esa palabra o frase indique la intención. Las frases repetidas pueden crear un sesgo en la resolución de intenciones. Por ejemplo, iniciar cada expresión OrderPizza con "Quiero…" y cada intención de ShowMenu con "¿Puede ayudarme a…" puede aumentar la probabilidad de que el modelo resuelva todas las entradas de usuario que empiecen por "Quiero" con OrderPizza y "Puede ayudarme a" con ShowMenu.
-
Evite fragmentos de frases y palabras sueltas. En su lugar, utilice oraciones completas (que pueden tener hasta 255 caracteres) que incluyan la acción y la entidad. Si necesita utilizar ejemplos de palabras clave sueltas, elíjalas con cuidado.
- Cree casos de prueba para garantizar la integridad de la prueba de la resolución de la intención. Dado que la adición de nuevos ejemplos de intención puede provocar regresiones, puede que termine agregando varias frases de prueba para estabilizar el comportamiento de la resolución de intenciones.
Límites para la forma y el tamaño de los datos de entrenamiento
En cuanto a la unidad y los datos de entrenamiento, estos son los límites del número de intenciones y expresiones.
Intentos:
- Número mínimo de intenciones por aptitud: 2
- Número máximo de intenciones por aptitud: 2.500
Expresiones:
- Número máximo de expresiones por aptitud: 25 000
- Número mínimo de expresiones por intención: 2
- Longitud de la palabra: Entre 3 y 30 palabras. Según las directrices de Trainer Tm, hay excepciones en las que las expresiones de una o dos palabras pueden ser adecuadas si se utilizan con frecuencia.
Estos son límites técnicos, no recomendaciones. Consulte Directrices para Trainer Tm para obtener recomendaciones prácticas para dar forma a sus habilidades y proporcionar datos de entrenamiento sólidos.
Exportación de datos de intenciones
Para registrar conversaciones, asegúrese de activar Activar Insights en Configuración > General antes de probar las intenciones.
Para exportar datos para una aptitud:- Haga clic en
para abrir el menú lateral y seleccione Desarrollo > Aptitudes.
- En el mosaico de la aptitud, haga clic en
y seleccione Exportar conversaciones.
- Seleccione Log de conversación de intención, defina el período de registro y haga clic en Exportar.
- Revise la entrada del usuario abriendo los archivos CSV en un programa de hoja de cálculo.