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.
Expresiones regulares compuestas
Cada entidad de expresión regular corresponde a un solo patrón, pero puede proporcionar varias expresiones regulares si todas representan variaciones de un solo 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
Consola
- Abre la consola de Dialogflow CX.
- Elige tu proyecto de GCP.
- Selecciona tu agente.
- Selecciona la pestaña Gestionar.
- Haga clic en Tipos de entidad.
- Haz clic en Crear.
- Consulta Entidades de expresión regular.
- Rellena los campos restantes.
- Haz clic en Guardar.
API
Asigna el valor KIND_REGEXP
al campo EntityType.kind
.
Selecciona un protocolo y una versión para la referencia EntityType:
Protocolo | V3 | V3beta1 |
---|---|---|
REST | Recurso EntityType | Recurso EntityType |
RPC | Interfaz EntityType | Interfaz EntityType |
C++ | EntityTypesClient | No disponible |
C# | EntityTypesClient | No disponible |
Go | EntityTypesClient | No disponible |
Java | EntityTypesClient | EntityTypesClient |
Node.js | EntityTypesClient | EntityTypesClient |
PHP | No disponible | No disponible |
Python | EntityTypesClient | EntityTypesClient |
Ruby | No disponible | No disponible |
Limitaciones
Se aplican las siguientes limitaciones:
- La coincidencia aproximada no se puede habilitar en 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.