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
- Ouvrez la console Dialogflow CX.
- Choisissez votre projet GCP.
- Sélectionnez votre agent.
- Sélectionnez l'onglet Gérer.
- Cliquez sur Entity Types (Types d'entités).
- Cliquez sur Create (Créer).
- Cochez la case Entités d'expression régulière.
- Renseignez les champs restants.
- 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.