Definición de intenciones, expresiones y entidades

Completado

Las expresiones son las frases que un usuario puede escribir al interactuar con una aplicación que usa el modelo de lenguaje. Una intención representa una tarea o acción que el usuario quiere realizar, o más sencillamente el significado de una expresión. Un modelo se crea mediante la definición de intenciones y su asociación a una o varias expresiones.

Por ejemplo, considere la siguiente lista de intenciones y expresiones asociadas:

  • ConocerHora:
    • "¿Qué hora es?"
    • "¿Cuál es la hora?"
    • "Dime qué hora es"
  • ConocerTiempo:
    • "¿Cuál es la previsión meteorológica?"
    • "¿Necesito un paraguas?"
    • "¿Va a nevar?"
  • EncenderDispositivo
    • "Enciende la luz"
    • "Necesito luz"
    • "Enciende el ventilador"
  • Ninguno:
    • "Hello"
    • "Adiós"

En su modelo, debe definir las intenciones que desea que comprenda el modelo, por lo que debe dedicar algún tiempo a considerar el dominio que debe admitir el modelo y los tipos de acciones o la información que los usuarios pueden solicitar. Además de las intenciones que defina, cada modelo incluye la intención Ninguno, que debe usar para identificar explícitamente aquellas expresiones que un usuario podría emitir pero para las que no se requiere ninguna acción específica (por ejemplo, saludos como "hola") o que quedan fuera del ámbito del dominio para este modelo.

Después de identificar las intenciones que el modelo debe admitir, es importante capturar varias expresiones de ejemplo diferentes para cada intención. Recopile las expresiones que cree que escribirán los usuarios, incluidas aquellas expresiones que significan lo mismo pero que se construyen de maneras diferentes. Tenga presentes estas orientaciones:

  • Capture varios ejemplos diferentes o maneras distintas de decir lo mismo.
  • Cree expresiones de diversa longitud (cortas, medianas y largas).
  • Varíe la ubicación del sustantivo o del tema en la expresión. Colóquelo al principio, al final o en algún lugar intermedio.
  • Use distintas expresiones gramaticalmente correctas e incorrectas para ofrecer buenos ejemplos de datos de entrenamiento.
  • La precisión, la coherencia y la integridad de los datos etiquetados son factores clave para determinar el rendimiento del modelo.
    • Etiquetar con precisión: etiquete cada entidad en su tipo correcto siempre. Incluya solo lo que quiera extraer y evite datos innecesarios en sus etiquetas.
    • Etiquetar de forma coherente: la misma entidad debe tener la misma etiqueta en todas las expresiones.
    • Etiquetar por completo: etiquete todas las instancias de la entidad en todas las expresiones.

Las entidades se usan para agregar contexto específico a las intenciones. Por ejemplo, puede definir una intención EncenderDispositivo que se pueda aplicar a varios dispositivos y usar entidades para definir los distintos dispositivos.

Tenga en cuenta las siguientes expresiones, intenciones y entidades:

Expresión Intención Entidades
"¿Cuál es la hora?" ConocerHora
¿Cuál es la hora en Londres? ConocerHora Ubicación (Londres)
¿Cuál es la previsión meteorológica de París? GetWeather Ubicación (París)
¿Necesito un paraguas esta noche? GetWeather Tiempo (esta noche)
¿Cuál es la previsión para Seattle mañana? GetWeather Ubicación (Seattle), tiempo (mañana)
Enciende la luz. EncenderDispositivo Dispositivo (luz)
Enciende el ventilador. EncenderDispositivo Dispositivo (ventilador)

Puede dividir las entidades en algunos tipos de componentes diferentes:

  • Las entidades de aprendizaje son el tipo más flexible de entidad y el que se debe usar en la mayoría de los casos. Defina un componente aprendido con un nombre adecuado y, a continuación, asóciele palabras o frases en expresiones de entrenamiento. Al entrenar el modelo, este aprende a establecer relaciones entre los elementos adecuados de las expresiones y la entidad.
  • Las entidades de lista son útiles cuando se necesita una entidad con un conjunto específico de valores posibles, por ejemplo, los días de la semana. Puede incluir sinónimos en una definición de entidad de lista, por lo que podría definir una entidad DíaDeLaSemana que incluya los valores "Lunes", "Martes", "Miércoles", etc.; cada uno de ellos con sinónimos como "Lun", "Mar", "Mié", etc.
  • Las entidades precompiladas son útiles para tipos comunes, como números, fechas y nombres. Por ejemplo, cuando se agregan componentes creados previamente, detectará automáticamente valores como "6" u organizaciones como "Microsoft". Puede ver este artículo para obtener una lista de las entidades precompiladas admitidas.