Modules de reconnaissance dans les dialogues adaptatifs
S’APPLIQUE À : SDK v4
Les modules de reconnaissance de langue permettent à votre bot d’interpréter les entrées utilisateur. Les dialogues adaptatifs et les modules de reconnaissance de langue interprètent ensemble l’intention de l’utilisateur et réagissent de manière fluide à l’entrée utilisateur. Le présent article décrit les modules de reconnaissance intégrés dans le kit de développement logiciel (SDK) Bot Framework et certaines de leurs propriétés clés.
Pour en savoir plus sur l’utilisation du module de reconnaissance, reportez-vous à la compréhension du langage dans la documentation Bot Framework Composer.
Ensemble de modules de reconnaissance d’entraînement croisé
L’ensemble de modules de reconnaissance d’entraînement croisé compare les résultats de reconnaissance de plusieurs modules de reconnaissance pour déterminer un gagnant. Sur la base d’une collection de modules de reconnaissance donnée, le module de reconnaissance d’entraînement croisé :
- Effectue la promotion du résultat de reconnaissance de l’un des modules de reconnaissance si tous les autres diffèrent la reconnaissance à un module de reconnaissance unique. Pour différer la reconnaissance, un module de reconnaissance peut retourner l’intention
None
ou unDeferToRecognizer_recognizerId
explicite en tant qu’intention. - Déclencher un événement
OnChooseIntent
pour autoriser votre code à choisir le résultat de reconnaissance à utiliser. Les résultats de chaque module de reconnaissance sont retournés via la propriététurn.recognized.candidates
. Cela vous permet de choisir le résultat le plus approprié.
Module de reconnaissance par défaut
Remarque
Azure AI QnA Maker sera mis hors service le 31 mars 2025. À partir du 1er octobre 2022, vous ne pourrez plus créer de nouvelles ressources ou bases de connaissances QnA Maker. Une version plus récente de la fonctionnalité de questions et réponses est désormais disponible dans le cadre d’Azure AI Language.
La réponse aux questions personnalisées, une fonctionnalité d'Azure AI Language, est la version mise à jour du service QnA Maker. Pour plus d'informations sur la prise en charge des questions et réponses dans le kit de développement logiciel (SDK) Bot Framework, consultez Compréhension du langage naturel.
Remarque
Compréhension du langage (LUIS) sera mis hors service le 1er octobre 2025. À compter du 1er avril 2023, vous ne pourrez pas créer de nouvelles ressources LUIS. Une version plus récente de Compréhension du langage est désormais disponible dans le cadre d'Azure AI Language.
Compréhension du langage conversationnel (CLU), une fonctionnalité d'Azure AI Language, est la version mise à jour de LUIS. Pour plus d'informations sur la prise en charge de compréhension du langage dans le kit de développement logiciel (SDK) Bot Framework, consultez Compréhension du langage naturel.
Le module de reconnaissance par défaut a été créé pour remplacer les modules de reconnaissance suivants :
- Module de reconnaissance LUIS : pour extraire des intentions et des entités à partir de l’énoncé d’un utilisateur en fonction du service LUIS (compréhension du langage) défini.
- Module de reconnaissance QnA Maker : pour extraire les intentions de l’énoncé d’un utilisateur en fonction du service QnA Maker défini.
- Ensemble de modules de reconnaissance d’entraînement croisé : pour comparer les résultats de reconnaissance de plusieurs modules de reconnaissance pour déterminer un gagnant.
Module de reconnaissance LUIS
Language Understanding (LUIS) est un service API cloud qui applique une intelligence Machine Learning personnalisée au texte en langage naturel des conversations d’un utilisateur afin d’en prédire le sens général et d’en extraire des informations détaillées pertinentes. Le module de reconnaissance LUIS vous permet d’extraire des intentions et des entités d’un énoncé d’utilisateur en fonction de l’application LUIS définie, que vous entraînez à l’avance.
Conseil
Pour en savoir plus sur l’incorporation de la compréhension du langage dans votre bot à l’aide de LUIS, reportez-vous à :
- Ajouter LUIS pour la compréhension du langage
- LUIS.ai est un service basé sur le Machine Learning qui vous permet de créer des fonctionnalités de langage naturel dans votre bot.
- Présentation de LUIS
- Language Understanding
- Format de fichier .lu
- Expressions adaptatives
Module de reconnaissance multilingue
Lorsque vous créez un bot multilingue sophistiqué, vous avez généralement un module de reconnaissance pour chaque langue et local. Le module de reconnaissance multilingue vous permet de spécifier facilement le module de reconnaissance à utiliser en fonction de la propriété locale de l’activité entrante d’un utilisateur.
Pour en savoir plus, reportez-vous à l’article de support multilingue dans la documentation Composer.
Module de reconnaissance Orchestrator
Orchestrator est une solution de compréhension du langage optimisée pour les applications IA de conversations. Il remplace bot Framework Dispatcher. Le module de reconnaissance Orchestrator vous permet d’extraire une intention à partir de l’énoncé d’un utilisateur, qui peut être utilisé pour acheminer vers une compétence ou un module de reconnaissance approprié, tel que LUIS ou QnA Maker.
Conseil
Pour en savoir plus sur l’incorporation de la compréhension du langage dans votre bot à l’aide de Orchestrator, reportez-vous à :
Module de reconnaissance QnA Maker
QnAMaker.ai appartient à Azure AI Services et permet de créer des paires de questions-réponses enrichies à partir de contenu existant (documents, URL, fichiers PDF, etc.). Vous pouvez utiliser le module de reconnaissance QnA Maker pour l’intégration au service.
Remarque
Le module de reconnaissance QnA Maker émet un événement QnAMatch
que vous pouvez gérer à l’aide d’un déclencheur OnQnAMatch
.
La réponse QnA Maker entière est disponible dans la propriété answer
.
Ensemble de modules de reconnaissance
Parfois, vous pouvez être amené à exécuter plusieurs modules de reconnaissance à chaque tour de la conversation. L’ensemble de modules de reconnaissance effectue précisément cette opération. Tous les modules de reconnaissance sont exécutés à chaque tour de la conversation, et le résultat est l’union de tous les résultats de reconnaissance.
Module de reconnaissance d’expression régulière (regex)
Le module de reconnaissance RegEx utilise des expressions régulières pour extraire des données d’intention et d’entité d’un énoncé.
Le module de reconnaissance regex se compose principalement des éléments suivants :
Intents
. L’objetIntents
contient une liste d’objetsIntentPattern
et ces objetsIntentPattern
se composent d’une propriétéIntent
qui est le nom de l’intention, et d’une propriétéPattern
qui contient une expression régulière utilisée pour analyser l’énoncé afin de déterminer l’intention.Entities
. L’objetEntities
contient une liste d’objetsEntityRecognizer
. Le SDK Bot Framework définit plusieurs classesEntityRecognizer
pour vous aider à déterminer les entités contenues dans l’énoncé d’un utilisateur :AgeEntityRecognizer
ConfirmationEntityRecognizer
CurrencyEntityRecognizer
DateTimeEntityRecognizer
DimensionEntityRecognizer
EmailEntityRecognizer
EntityRecognizer
EntityRecognizerSet
GuidEntityRecognizer
HashtagEntityRecognizer
IpEntityRecognizer
MentionEntityRecognizer
NumberEntityRecognizer
NumberRangeEntityRecognizer
OrdinalEntityRecognizer
PercentageEntityRecognizer
PhoneNumberEntityRecognizer
RegExEntityRecognizer
TemperatureEntityRecognizer
TextEntity
TextEntityRecognizer
UrlEntityRecognizer
Conseil
- Le module de reconnaissance Regex émet une intention « None » quand l’énoncé d’entrée ne correspond à aucune intention définie. Vous pouvez créer un déclencheur
OnIntent
avecIntent = "None"
pour gérer ce scénario. - Le module de reconnaissance Regex est utile pour les tests et le prototypage rapide. Pour des bots plus sophistiqués, nous recommandons d’utiliser le module de reconnaissance de compréhension du langage (LUIS).
- La référence rapide du langage des expressions régulières pourra s’avérer utile.