Décrire la compréhension du langage courant

Effectué

Il faut prendre en compte trois concepts fondamentaux pour travailler avec la compréhension du langage courant : les énoncés, les entités et les intentions.

Énoncés

Un énoncé est un exemple de ce qu’un utilisateur pourrait dire et que votre application doit interpréter. Par exemple, lors de l’utilisation d’un système domotique, un utilisateur peut utiliser les énoncés suivants :

« Démarre le ventilateur. »

« Allume la lampe. »

Entités

Une entité est un élément auquel se réfère un énoncé. Par exemple, ventilateur et lampe dans les énoncés suivants :

« Démarrer le ventilateur. »

« Allumer la lumière. »

Vous pouvez considérer les entités ventilateur et lampe comme des instances spécifiques d’une entité appareil générale.

Intentions

Une intention représente le but ou l’objectif exprimé dans l’énoncé d’un utilisateur. Par exemple, dans les deux énoncés précédents, l’intention est d’activer un appareil. Donc, dans votre application de compréhension du langage courant, vous pouvez définir une intention TurnOn liée à ces énoncés.

Une application de compréhension du langage courant définit un modèle composé d’intentions et d’entités. Les énoncés sont utilisés pour entraîner le modèle à identifier l’intention la plus probable et les entités auxquelles elle doit être appliquée en fonction d’une entrée donnée. L’application de domotique que nous avons considérée peut inclure plusieurs intentions, comme dans les exemples suivants :

Intentionnel Énoncés associés Entités
Greeting "Hello"
« Salut »
« Coucou »
« Bonsoir »
TurnOn « Démarre le ventilateur » ventilateur (appareil)
« Allume la lampe » lampe (appareil)
« Allume la lampe » lampe (appareil)
TurnOff « Arrête le ventilateur » ventilateur (appareil)
« Éteint la lampe » lampe (appareil)
« Éteindre la lampe » lampe (appareil)
BulletinMétéo « Quel temps fait-il aujourd’hui? » aujourd’hui (date/heure)
« Donne-moi les prévisions météo »
« Quelles sont les prévisions pour Paris ? » Paris (lieu)
« Quelle sera la météo demain à Seattle ? » Seattle (lieu), demain (date/heure)
None « Quel est le sens de la vie ? »
« Est-ce que c’est allumé ? »

Dans le tableau, de nombreux énoncés sont utilisés pour chacune des intentions. L’intention doit être une manière concise de regrouper les tâches d’énoncés. L’intention None est particulièrement intéressante. Vous devez envisager l’utilisation permanente de l’intention None pour aider à gérer les énoncés qui ne mappent aucun des énoncés que vous avez entrés. L’intention None est considérée comme une solution de repli et est généralement utilisée pour fournir une réponse générique aux utilisateurs quand leurs demandes ne correspondent à aucune autre intention.

Une fois les entités et les intentions définies avec des exemples d’énoncés dans votre application de compréhension du langage courant, vous pouvez former un modèle de langage pour prédire les intentions et les entités à partir des entrées utilisateur, même si ces dernières ne correspondent pas exactement aux exemples d’énoncés. Vous pouvez ensuite utiliser le modèle à partir d’une application cliente pour récupérer des prédictions et répondre de façon appropriée.