Scorage des correspondances NLU
Score des blocs NLU est un mécanisme utilisé pour sélectionner le bloc de réponse le plus pertinent en fonction de :
Correspondances de motifs entre l'entrée utilisateur et les définitions de bloc
Poids configurables attribués à chaque type d'entité
Valeurs de confiance fournies par le moteur NLU pour les entités détectées
Il permet une sélection de bloc plus intelligente et consciente du contexte dans les flux conversationnels.
Cas d'utilisation principaux
Correspondance standard
Une entrée utilisateur contient des entités qui correspondent directement aux motifs d'un bloc.
Exemple : Entrée : intent = enquiry & subject = claim
Bloc A : Motifs : intent : enquiry & subject : claim
Le bloc A sera sélectionné.Confiance élevée, correspondance partielle
Un bloc peut ne correspondre qu'à certains motifs mais avoir une forte confiance sur ces correspondances, ce qui en fait un meilleur candidat que d'autres avec des correspondances complètes mais des entités à faible confiance. Remarque : la confiance est multipliée par un poids prédéfini pour chaque type d'entité.
Exemple :
Entrée : intent = issue (confiance : 0,92) & subject = claim (confiance : 0,65)
Bloc A : Motif : intent : issue
Bloc B : Motif : subject : claim
➤ Le bloc A obtient un score élevé basé sur confiance × poids (en supposant que les deux poids valent 1).Plusieurs blocs avec des motifs similaires
Entrée : intent = issue & subject = insurance
Bloc A : intent = enquiry & subject = insurance
Bloc B : subject = insurance
➤ Le bloc B est sélectionné — le bloc A ne correspond pas sur l'intent.Exclusion en raison de motifs supplémentaires
Si un bloc contient des motifs qui requièrent des entités absentes de l'entrée utilisateur, le bloc est exclu du calcul de score. Aucune pénalité n'est appliquée — le bloc n'est simplement pas considéré comme un candidat valide.
Entrée : intent = issue & subject = insurance
Bloc A : intent = enquiry & subject = insurance & location = office
Bloc B : subject = insurance & time = morning
➤ Aucun des blocs n'est sélectionné en raison de motifs requis non appariés (`location`, `time`)Bris d'égalité avec facteurs de pénalité
Lorsque plusieurs blocs reçoivent des scores similaires, des facteurs de pénalité peuvent aider à départager — surtout dans les cas où les motifs sont moins spécifiques (par ex., en utilisant Any comme valeur).
Entrée : intent = enquiry & subject = insurance
Bloc A : intent = enquiry & subject = Any
Bloc B : intent = enquiry & subject = insurance
Bloc C : subject = insurance
Résumé du scoring :
- Le bloc A correspond aux deux motifs, mais subject = Any est considéré comme moins spécifique.
- Le bloc B a une correspondance redondante mais entièrement spécifique.
- Le bloc C ne correspond qu'à un seul motif.
➤ Le bloc A et le bloc B ont des scores bruts similaires.
➤ Un facteur de pénalité est appliqué au bloc A en raison de son utilisation de Any, réduisant son score final.
➤ Le bloc B est sélectionné.Comment fonctionne le scoring
Correspondance et confiance
Pour chaque entité dans le motif du bloc :
Si l'entité
correspondà une entité dans l'entrée utilisateur :le score est augmenté de :
confiance × poidsConfianceest une valeur comprise entre 0 et 1, retournée par le moteur NLU.Poids(la valeur par défaut est1) est un facteur d'importance configuré pour ce type d'entité spécifique.
Si la correspondance est un joker (c.-à-d. que le bloc accepte n'importe quelle valeur) :
Un facteur de pénalité est appliqué pour réduire légèrement sa contribution :
confiance × poids × facteurDePénalité. Cela encourage des correspondances plus spécifiques lorsqu'elles sont disponibles.
Résumé de la formule de scoring
Pour chaque entité correspondante :
score += confiance × poids × [facteur de pénalité optionnel si joker]Le score total du bloc est la somme de tous les motifs correspondants dans ce bloc.
Facteur de pénalité
Le facteur de pénalité est un multiplicateur global (généralement inférieur à 1, par ex., 0.8) appliqué lorsque le type de correspondance est moins spécifique — comme un joker ou des correspondances d'un type d'entité lâche. Il permet au système de :
Départager en faveur de blocs plus précis
Décourager la sélection de blocs trop génériques lorsque de meilleures correspondances sont disponibles
Mis à jour
Ce contenu vous a-t-il été utile ?