Entidades de expresión regular

Algunas entidades deben coincidir con patrones en lugar de con términos específicos. Por ejemplo, números de identificación nacional, documentos de identificación, matrículas, etc. Con las entidades de expresiones regulares, puedes proporcionar expresiones regulares para que coincidan.

Dónde encontrar estos datos

Cuando se crea un agente, lo más habitual es usar la consola de Dialogflow ES (consulta la documentación o abre la consola). Las instrucciones que se indican a continuación se centran en el uso de la consola. Para acceder a los datos de una entidad, sigue estos pasos:

  1. Ve a la consola de Dialogflow ES.
  2. Selecciona un agente.
  3. En el menú de la barra lateral de la izquierda, selecciona Entidades.

Si vas a crear un agente con la API en lugar de con la consola, consulta la referencia de EntityTypes. Los nombres de los campos de la API son similares a los nombres de los campos de la consola. Las instrucciones que se indican a continuación destacan las diferencias importantes entre la consola y la API.

Expresiones regulares compuestas

Cada entidad de expresión regular corresponde a un solo patrón, pero puedes proporcionar varias expresiones regulares si todas representan variaciones de un mismo patrón. Durante el entrenamiento del agente, todas las expresiones regulares de una sola entidad se combinan con el operador de alternancia (|) para formar una expresión regular compuesta.

Por ejemplo, si proporcionas las siguientes expresiones regulares para un número de teléfono:

  • ^[2-9]\d{2}-\d{3}-\d{4}$
  • ^(1?(-?\d{3})-?)?(\d{3})(-?\d{4})$

La expresión regular compuesta pasa a ser la siguiente:

  • ^[2-9]\d{2}-\d{3}-\d{4}$|^(1?(-?\d{3})-?)?(\d{3})(-?\d{4})$

El orden de las expresiones regulares es importante. Cada una de las expresiones regulares de la expresión regular compuesta se procesa en orden. La búsqueda se detiene cuando se encuentra una coincidencia válida. Por ejemplo, para la expresión "Seattle" de un usuario final:

  • Sea|Seattle coincide con "Sea"
  • Seattle|Sea coincide con "Seattle"

Gestión especial del reconocimiento de voz

para la adaptación del habla.

Si tu agente usa el reconocimiento de voz (también conocido como entrada de audio, transcripción de voz o STT), tus expresiones regulares necesitarán un tratamiento especial al buscar coincidencias con letras y números. Una petición de usuario final hablada se procesa primero mediante el reconocedor de voz antes de que se encuentren las entidades. Cuando una petición contiene una serie de letras o números, el reconocedor puede añadir espacios entre cada carácter. Además, el reconocedor puede interpretar dígitos en forma de palabras. Por ejemplo, la petición del usuario final "Mi ID es 123" puede reconocerse como cualquiera de las siguientes:

  • "Mi ID es 123"
  • "Mi ID es 1 2 3"
  • "Mi ID es uno dos tres"

Para incluir números de tres cifras, puedes usar las siguientes expresiones regulares:

\d{3}
\d \d \d
(zero|one|two|three|four|five|six|seven|eight|nine) (zero|one|two|three|four|five|six|seven|eight|nine) (zero|one|two|three|four|five|six|seven|eight|nine)

Crear una entidad de expresión regular

Para crear una entidad de expresión regular, sigue estos pasos:

  1. Abre una entidad que ya tengas o crea una.
  2. Consulta Entidad de expresión regular.
  3. Introduce una o varias expresiones regulares en la tabla de entradas.
  4. Haz clic en Guardar.

Captura de pantalla de una entidad de expresión regular

Si usa la API para crear o actualizar entidades, utilice KIND_REGEXP en el campo del tipo de entidad.

Limitaciones

Se aplican las siguientes limitaciones:

  • La coincidencia aproximada no se puede habilitar en las entidades de expresiones regulares. Estas funciones se excluyen mutuamente.
  • Cada agente puede tener un máximo de 50 entidades de expresiones regulares.
  • La expresión regular compuesta de una entidad tiene una longitud máxima de 2000 caracteres.