Entités d'expression régulière

Certaines entités doivent correspondre à des formats plutôt qu'à des termes spécifiques. Il s'agit par exemple de numéros nationaux d'identification, d'identifiants, de numéros de plaque d'immatriculation, etc. Les entités d'expression régulière vous permettent de fournir des expressions régulières pour la mise en correspondance.

Expressions régulières composées

Chaque entité d'expression régulière correspond à un seul format, mais vous pouvez fournir plusieurs expressions régulières si chacune d'elles représente une variante d'un même format. Lors de l'entraînement des agents, toutes les expressions régulières d'une même entité sont combinées à l'aide de l'opérateur d'alternance | de façon à former une expression régulière composée.

Par exemple, si vous fournissez les expressions régulières suivantes pour un numéro de téléphone :

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

L'expression régulière composée devient :

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

L'ordre des expressions régulières est important. Chacune des expressions régulières formant l'expression régulière composée va être traitée dans l'ordre selon lequel elles sont spécifiées. La recherche s'arrête dès qu'une correspondance valide est trouvée. Ainsi, pour l'expression d'utilisateur final "Seattle" :

  • la première correspondance valide de l'expression régulière composée Sea|Seattle est "Sea" ;
  • la première correspondance valide de l'expression régulière composée Seattle|Sea est "Seattle".

Traitement spécial associé à la reconnaissance vocale

Si votre agent utilise la reconnaissance vocale, également appelée "entrée audio" ou "speech-to-text" (STT), vos expressions régulières requièrent un traitement particulier pour la mise en correspondance des lettres et des chiffres. Un énoncé parlé de l'utilisateur final est traité par le système de reconnaissance vocale préalablement à la mise en correspondance des entités. Lorsqu'un énoncé contient une série de lettres ou de chiffres, l'outil de reconnaissance est susceptible d'insérer des espaces de part et d'autre de chaque caractère. En outre, l'outil de reconnaissance peut aussi interpréter les chiffres en les retranscrivant en toutes lettres. Par exemple, l'énoncé d'utilisateur final "Mon identifiant est 123" peut être reconnu de différentes façons, comme suit :

  • "Mon ID est 123"
  • "Mon ID est 1 2 3"
  • "Mon ID est un deux trois"

Pour accepter des nombres à trois chiffres, vous pouvez utiliser les expressions régulières suivantes :

\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)

Créer une entité d'expression régulière

Console

  1. Ouvrez la console Dialogflow CX.
  2. Choisissez votre projet GCP.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Gérer.
  5. Cliquez sur Entity Types (Types d'entités).
  6. Cliquez sur Create (Créer).
  7. Cochez la case Entités d'expression régulière.
  8. Renseignez les champs restants.
  9. Cliquez sur Enregistrer.

API

Définissez le champ EntityType.kind sur KIND_REGEXP.

Sélectionnez un protocole et une version pour la référence EntityType :

Protocole V3 V3beta1
REST Ressource EntityType Ressource EntityType
RPC Interface EntityType Interface EntityType
C++ EntityTypesClient Non disponible
C# EntityTypesClient Non disponible
Go EntityTypesClient Non disponible
Java EntityTypesClient EntityTypesClient
Node.js EntityTypesClient EntityTypesClient
PHP Non disponible Non disponible
Python EntityTypesClient EntityTypesClient
Ruby Non disponible Non disponible

Limites

Les limites suivantes s'appliquent :

  • Il est impossible d'activer la correspondance partielle pour les entités d'expression régulière. Ces deux fonctionnalités sont mutuellement exclusives.
  • Chaque agent peut comporter jusqu'à 50 entités d'expression régulière.
  • L'expression régulière composée d'une entité ne doit pas comporter plus de 2 000 caractères.