Intents

Un intent permet de catégoriser l'intention exprimée par un utilisateur final durant un tour de conversation.

Un intent contient les données suivantes :

Terme Définition
Nom à afficher Nom affiché dans la console pour l'intent.
Étiquettes Libellés permettant de classer les intents par catégorie. Par exemple : head intent.
Phrases d'entraînement Les expressions d'entraînement sont des exemples de phrases que les utilisateurs finaux sont susceptibles de saisir ou de prononcer, appelées entrées de l'utilisateur final. Lorsque l'entrée de l'utilisateur final ressemble à l'une de ces phrases, Dialogflow CX établit la mise en correspondance avec l'intent. Il n'est pas nécessaire de définir tous les exemples possibles, car les fonctionnalités de machine learning intégrées de Dialogflow CX se chargent d'étendre votre liste aux expressions similaires.
Paramètres Vous définissez vos expressions d'entraînement pour utiliser des paramètres afin d'extraire des valeurs de parties spécifiques de l'entrée de l'utilisateur final.
Modèles DTMF Consultez DTMF pour les intégrations téléphoniques.

Correspondance d'intent

Lorsqu'un utilisateur final saisit une entrée (texte, voix ou touches de téléphone), Dialogflow CX compare l'entrée aux phrases d'entraînement de l'intent pour trouver la meilleure correspondance. Ce processus s'appelle la correspondance des intents. La mise en correspondance d'intent ne peut se produire que pour les intents associés à une route d'intent (un gestionnaire d'état avec une exigence d'intent) dans le champ d'application.

La saisie par pression de touche est mise en correspondance selon les modèles DTMF. Toutefois, lors de la recherche d'une intention correspondant au texte, Dialogflow CX évalue les correspondances potentielles avec un niveau de confiance de détection d'intentions, également appelé score de confiance. Ces valeurs vont de 0.0 (complètement incertain) à 1.0 (totalement certain).

Une fois les intentions évaluées, deux résultats sont possibles :

  • Si l'intent ayant le score le plus élevé a un score de confiance supérieur ou égal au paramètre Seuil de classification, il est renvoyé en tant que correspondance.
  • Si aucun intent n'atteint le seuil, un événement no-match est appelé.

Phrases d'entraînement

Les expressions d'entraînement sont des exemples de phrases que les utilisateurs finaux sont susceptibles de saisir ou de prononcer, appelées entrées de l'utilisateur final. Pour chaque intent, vous créez de nombreuses expressions d'entraînement. Lorsque l'utilisateur final prononce une expression ressemblant à l'une des phrases d'entraînement, Dialogflow CX établit la mise en correspondance avec l'intent.

Par exemple, l'expression d'entraînement "Je veux une pizza" entraîne votre agent à reconnaître les entrées de l'utilisateur final qui sont similaires à cette expression, comme "Prendre une pizza" ou "Commander une pizza".

Il n'est pas nécessaire de définir tous les exemples possibles, car les fonctionnalités de machine learning intégrées de Dialogflow CX se chargent d'étendre votre liste aux expressions similaires. Vous devez créer au moins 10 à 20 phrases d'entraînement (selon la complexité de l'intent) afin que votre agent puisse reconnaître différentes entrées de l'utilisateur final. Par exemple, si vous souhaitez que votre intent reconnaisse l'entrée d'un utilisateur final concernant sa couleur préférée, vous pouvez définir les phrases d'entraînement suivantes :

  • "J'aime le rouge"
  • "Ma couleur préférée est le jaune"
  • "noir"
  • "Le bleu est ma couleur préférée"
  • …

Générer et traduire automatiquement des expressions d'entraînement

Vous pouvez utiliser la génération par IA pour générer automatiquement des phrases d'entraînement au lieu de les saisir manuellement. Pour utiliser cette fonctionnalité :

  1. Accédez à l'onglet Manage (Gérer), puis cliquez sur Intents. Sélectionnez un intent existant ou cliquez sur + Créer pour en créer un.
  2. Veillez à saisir l'objectif de l'intent dans le champ Description, par exemple "Cet intent est déclenché lorsqu'un utilisateur demande l'état de sa commande". Le générateur IA utilise ce champ pour générer des phrases d'entraînement plus précises.
  3. Cliquez sur le bouton d'option __ nouvelles expressions générées par l'IA. La valeur par défaut est 3. La génération de plus de 15 phrases d'entraînement à la fois peut entraîner des erreurs.
  4. Cliquez sur + Ajouter. L'IA génère le nombre d'expressions d'entraînement que vous avez spécifié et les ajoute au tableau. Assurez-vous de vérifier l'exactitude de toutes les expressions d'entraînement générées.

Pour savoir comment utiliser cette fonctionnalité afin de générer et de traduire automatiquement des données pour des langues autres que la langue par défaut, consultez la documentation sur les agents multilingues.

Annoter les phrases d'entraînement

Vous contrôlez la façon dont les données de l'utilisateur final sont extraites en annotant des parties de vos phrases d'entraînement et en configurant les paramètres associés.

Par exemple, prenons une expression d'entraînement telle que "Quelles sont les prévisions météo pour demain à Tokyo ?" Vous devez annoter "demain" avec un paramètre date et "Tokyo" avec un paramètre location. Lorsque vous annotez des mots dans une phrase d'entraînement, Dialogflow CX reconnaît que ce ne sont que des exemples de valeurs réelles fournies par les utilisateurs finaux au moment de l'exécution.

Pour une entrée d'utilisateur final telle que "Quelles sont les prévisions pour vendredi à Sydney ?", Dialogflow CX extrait le paramètre date de "vendredi" et le paramètre location de "Sydney".

Vous devez annoter toutes les parties des phrases d'entraînement qui doivent être extraites en tant que paramètres. Sinon, Dialogflow n'extraira pas les valeurs.

Lorsque vous créez un agent avec la console, la plupart des annotations sont automatiquement créées lorsque vous ajoutez des phrases d'entraînement contenant des parties à mettre en correspondance avec un type d'entité existant. Ces parties sont mises en surbrillance dans la console, et vous pouvez modifier les annotations et les paramètres si nécessaire.

Pour annoter manuellement une phrase d'entraînement à l'aide de la console, procédez comme suit :

  1. Sélectionnez le texte de la phrase d'entraînement que vous souhaitez annoter.
  2. Sélectionnez le type d'entité souhaité dans la liste.
  3. Un paramètre est créé pour vous dans le tableau de paramètres suivant.

Lorsque vous créez un agent avec l'API, vous devez annoter manuellement les parties des phrases d'entraînement. Consultez le type TrainingPhrase utilisé par le type Intent.

Sélectionnez un protocole et une version pour la référence de l'intent :

Protocole V3 V3beta1
REST Ressource d'intent Ressource d'intent
RPC Interface Intent Interface Intent
C++ IntentsClient Non disponible
C# IntentsClient Non disponible
Go IntentsClient Non disponible
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Non disponible Non disponible
Python IntentsClient IntentsClient
Ruby Non disponible Non disponible

Entités implicites créées par des phrases d'entraînement

La plupart des entités personnalisées sont définies explicitement en créant des types d'entités et en ajoutant des entrées d'entités. Toutefois, les entités personnalisées peuvent également contenir des valeurs implicites. Cela se produit lorsque vous annotez le texte d'une phrase d'entraînement, où le texte annoté n'est pas une valeur définie par le type d'entité sélectionné. Le texte annoté devient une valeur de référence d'entité pour l'entrée d'entité ajoutée implicitement. Si le type d'entité est une entité de mappage, le texte devient également un synonyme de l'entrée d'entité.

Intent d'accueil par défaut

Lorsque vous créez un agent, un intent de bienvenue par défaut est créé pour vous. Pour certaines langues, l'intent comporte des expressions d'entraînement telles que "Bonjour" ou "Salut", qui sont censées correspondre à la saisie initiale de l'utilisateur final. Vous pouvez modifier cet intent si nécessaire.

Lorsque vous utilisez l'API, vous pouvez référencer cet intent avec l'ID d'intent suivant :

00000000-0000-0000-0000-000000000000

Si votre agent lance la conversation, vous pouvez déclencher cet intent à l'aide de l'API. Utilisez la valeur projects/<PROJECT_ID>/locations/<LOCATION_ID>/agents/<AGENT_ID>/intents/00000000-0000-0000-0000-000000000000 dans le champ QueryInput.intent.intent lorsque vous appelez la méthode detectIntent ou streamingDetectIntent.

Intent négatif par défaut

Lorsque vous créez un agent, un intent négatif par défaut est créé pour vous. Vous pouvez ajouter des phrases d'entraînement à cet intent qui agissent comme des exemples négatifs. Dans certains cas, l'entrée de l'utilisateur final peut ressembler légèrement aux phrases d'entraînement des intents normaux, mais vous ne souhaitez pas que ces entrées correspondent à des intents normaux.

Par exemple, un agent de réservation de chambres peut avoir une phrase d'entraînement comme "Je souhaite réserver une chambre". Si l'utilisateur veut témoigner d'une expérience négative concernant une chambre, il pourrait dire "Je souhaite émettre des réserves sur cette chambre". Pour vous assurer que la saisie de l'utilisateur final ne correspond pas à votre intent, vous pouvez ajouter cette expression en tant qu'exemple négatif.

En outre, vous devez ajouter des expressions possibles qui ne sont pas comprises dans le champ d'application de l'agent afin qu'elles ne correspondent à aucun intent. Toutefois, évitez d'ajouter un très grand nombre de ces expressions. Par exemple, si vous définissez 10 000 expressions d'intent négatives par défaut, cela aura un impact négatif sur la mise en correspondance des intents normaux.

Vous devez examiner régulièrement ces expressions, car certaines d'entre elles peuvent avoir été initialement hors du champ d'application de l'agent, mais ont été ajoutées par la suite aux intents.

L'intention négative par défaut a un impact sur toutes les correspondances d'intentions. Les expressions que vous y ajoutez peuvent améliorer la correspondance pour un intent, mais la dégrader pour un autre. Par exemple, vous pouvez ajouter "appel international" à l'intent négatif par défaut pour éviter de correspondre à un intent de voyage international. Toutefois, cela empêchera également cette expression de correspondre à une intention d'appel international.

Lorsque vous utilisez l'API, vous pouvez référencer cet intent avec l'ID d'intent suivant :

00000000-0000-0000-0000-000000000001

Annuler des intents

Au cours d'une conversation, l'utilisateur final peut souhaiter annuler le sujet de conversation actuel. Par exemple, la page active peut demander une date pour un nouveau rendez-vous, mais l'utilisateur final a décidé de ne pas créer de rendez-vous. L'utilisateur final peut dire quelque chose comme"annuler " ou "je ne veux pas de nouveau rendez-vous". Pour gérer cette situation, vous pouvez créer un ou plusieurs intents d'annulation pour votre agent. Vous pouvez nommer ces intents d'annulation comme vous le souhaitez, mais il est d'usage d'inclure "cancel" dans le nom. Vous devez associer ces intents d'annulation à des routes d'intent qui sont dans le champ d'application à des points pertinents de la conversation. Ces routes d'intent doivent passer à une page appropriée pour gérer l'annulation.

Les phrases d'entraînement pour les intents d'annulation doivent gérer les tentatives d'annulation génériques et spécifiques au sujet. Exemple :

  • Annuler
  • Arrêter
  • J'ai changé d'avis
  • Fermer
  • Revenir à l'ancienne console
  • Retour
  • Je ne veux pas de nouveau rendez-vous
  • Annuler un nouveau rendez-vous
  • Supprimer un nouveau rendez-vous

Créer un intent

Pour créer un intent, procédez comme suit :

Console

  1. Ouvrez la console Dialogflow CX.
  2. Sélectionnez votre projet.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Manage (Gérer).
  5. Cliquez sur Intents.
  6. Cliquez sur +Create (Créer).
  7. Saisissez les données d'intent.
  8. Cliquez sur Save (Enregistrer).

API

Consultez la méthode create pour le type Intent.

Sélectionnez un protocole et une version pour la référence de l'intent :

Protocole V3 V3beta1
REST Ressource d'intent Ressource d'intent
RPC Interface Intent Interface Intent
C++ IntentsClient Non disponible
C# IntentsClient Non disponible
Go IntentsClient Non disponible
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Non disponible Non disponible
Python IntentsClient IntentsClient
Ruby Non disponible Non disponible

Supprimer un intent

Pour supprimer un intent, procédez comme suit :

Console

  1. Ouvrez la console Dialogflow CX.
  2. Sélectionnez votre projet.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Manage (Gérer).
  5. Cliquez sur Intents.
  6. Maintenez le pointeur de la souris sur l'intent que vous souhaitez supprimer.
  7. Cliquez sur le bouton de suppression .

API

Consultez la méthode delete pour le type Intent.

Sélectionnez un protocole et une version pour la référence de l'intent :

Protocole V3 V3beta1
REST Ressource d'intent Ressource d'intent
RPC Interface Intent Interface Intent
C++ IntentsClient Non disponible
C# IntentsClient Non disponible
Go IntentsClient Non disponible
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Non disponible Non disponible
Python IntentsClient IntentsClient
Ruby Non disponible Non disponible

Accéder aux données de l'intent

Pour accéder aux données d'intents, procédez comme suit :

Console

  1. Ouvrez la console Dialogflow CX.
  2. Sélectionnez votre projet.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Manage (Gérer).
  5. Cliquez sur Intents.
  6. Cliquez sur l'intent auquel vous souhaitez accéder.
  7. Affichez ou mettez à jour les données de l'intent
  8. Cliquez sur Save (Enregistrer) pour enregistrer les modifications.

API

Consultez les méthodes get et patch/update pour le type Intent.

Sélectionnez un protocole et une version pour la référence de l'intent :

Protocole V3 V3beta1
REST Ressource d'intent Ressource d'intent
RPC Interface Intent Interface Intent
C++ IntentsClient Non disponible
C# IntentsClient Non disponible
Go IntentsClient Non disponible
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Non disponible Non disponible
Python IntentsClient IntentsClient
Ruby Non disponible Non disponible

Suggestions d'intentions

Dialogflow analyse automatiquement les occurrences sans correspondance pendant les conversations et peut suggérer de nouveaux intents ou recommander des expressions d'entraînement supplémentaires pour les intents existants. En acceptant ces suggestions, vous pouvez éviter de futures occurrences de non-correspondance.

Lorsque vous utilisez des suggestions, vous pouvez ajuster la taille du cluster. Des valeurs de taille de cluster plus petites suggèrent plus d'intents avec moins de phrases d'entraînement par intent. Des valeurs de taille de cluster plus élevées suggèrent moins d'intents avec plus de phrases d'entraînement par intent.

Pour accepter les suggestions d'intentions :

Console

  1. Ouvrez la console Dialogflow CX.
  2. Sélectionnez votre projet.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Manage (Gérer).
  5. Cliquez sur Intents.
  6. Cliquez sur l'onglet Suggestions.
  7. Ajustez la taille du cluster si nécessaire.
  8. Sélectionnez une suggestion.
  9. Sélectionnez les expressions d'entraînement de votre choix.
  10. Pour l'intent cible, ajoutez les phrases d'entraînement à un intent existant ou nouveau.
  11. Cliquez sur Enregistrer ou Créer pour enregistrer les modifications. Lorsque vous acceptez des suggestions d'intentions, l'intention reste dans la liste des suggestions.

Diviser les intents

Vous pouvez diviser un intent en deux intents à l'aide de la console. L'interface vous permet de sélectionner des expressions d'entraînement à partir d'un intent source et de les déplacer vers un nouvel intent :

Console

  1. Ouvrez la console Dialogflow CX.
  2. Sélectionnez votre projet.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Manage (Gérer).
  5. Cliquez sur Intents.
  6. Sélectionnez l'intent que vous souhaitez diviser.
  7. Cliquez sur Diviser.
  8. Sélectionnez des intents dans l'intent source.
  9. Cliquez sur Déplacer vers la droite.
  10. Fournissez d'autres détails pour l'intent cible.
  11. Cliquez sur Diviser.

Comparer et fusionner des intents

Vous pouvez comparer ou fusionner deux intents en un seul à l'aide de la console :

Console

  1. Ouvrez la console Dialogflow CX.
  2. Sélectionnez votre projet.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Manage (Gérer).
  5. Cliquez sur Intents.
  6. Sélectionnez les deux intents que vous souhaitez comparer ou fusionner.
  7. Cliquez sur Comparer.
  8. Les phrases d'entraînement sont affichées côte à côte pour comparaison.
  9. Pour fusionner les deux intents, cliquez sur Fusionner.

Exporter et importer des intents

Vous pouvez exporter et importer des intents pour les partager entre agents.

L'une des options de format d'exportation est le format CSV, qui comporte les colonnes suivantes :

  • Nom à afficher de l'intent
  • Langue
  • Expression

Chaque entrée contient soit le nom à afficher, la langue et la première phrase d'entraînement, soit simplement une phrase d'entraînement pour l'intent précédemment déclaré. Dialogflow encode les annotations dans les phrases d'entraînement exportées afin qu'elles soient restaurées lors de l'importation. Le format de cet encodage est le suivant :

(annotated part)[entity, parameter]

Exemple :

Intent Display Name,Language,Phrase
Shirt Selection,en,I want a (green)[@sys.color, color] shirt
,,I would like a (yellow)[@sys.color, color] shirt
Store Hours,en,When are you open?
,,What are your hours?

Lors de l'importation d'intents, des conflits de fusion peuvent se produire lorsque le nom à afficher d'un intent de votre agent existant correspond à celui d'un intent importé. Vous pouvez contrôler le comportement de fusion lorsque les noms à afficher des intents correspondent en sélectionnant l'une des options suivantes :

  • Remplacer les intents existants : un intent importé écrase tout intent portant le même nom dans votre agent existant. L'écrasement des intents existants lors de l'importation écrasera également les entités existantes.
  • Renommer et importer en tant que nouveaux intents : l'intent importé est renommé en ajoutant "_1" au nom à afficher.
  • Fusionner avec les intents existants : les phrases d'entraînement d'un intent importé sont ajoutées à l'intent existant. Si les mêmes expressions d'entraînement existent, elles ne seront pas dupliquées.
  • Conserver les intents d'origine : l'intent existant reste inchangé et l'intent en conflit est ignoré. Les intents sans conflit sont importés.

Pour exporter des intents :

Console

  1. Ouvrez la console Dialogflow CX.
  2. Sélectionnez votre projet.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Manage (Gérer).
  5. Cliquez sur Intents.
  6. Sélectionnez chaque intent que vous souhaitez exporter.
  7. Cliquez sur Exporter les intents sélectionnés.
  8. Sélectionnez le format et la destination de votre choix.
  9. Cliquez sur Envoyer.

Pour importer des intents :

Console

  1. Ouvrez la console Dialogflow CX.
  2. Sélectionnez votre projet.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Manage (Gérer).
  5. Cliquez sur Intents.
  6. Cliquez sur Importer.
  7. Sélectionnez la source.
  8. En cas de conflit, une boîte de dialogue s'affiche pour vous permettre de sélectionner le comportement de fusion.
  9. Cliquez sur Envoyer.

Exporter et importer des expressions d'entraînement

Vous pouvez exporter et importer des phrases d'entraînement pour un intent existant.

Le format de fichier à importer est un fichier CSV sans en-tête de colonne, sur une seule colonne. Exemple :

"I want a pony"
"I need a pony"
"I must have a pony"

Lorsque vous importez des expressions d'entraînement, vous pouvez choisir l'un des modes d'importation suivants :

  • Importer en tant que nouvelles phrases d'entraînement : les phrases des fichiers sont ajoutées à la liste des phrases existantes.
  • Remplacer les phrases d'entraînement existantes : les phrases d'entraînement existantes sont supprimées et les phrases d'entraînement des fichiers sont ajoutées.

Par défaut, les expressions d'entraînement importées sont automatiquement annotées. Vous pouvez désactiver ce comportement en sélectionnant Ignorer l'annotation automatique.

Pour exporter les expressions d'entraînement d'un intent :

Console

  1. Ouvrez la console Dialogflow CX.
  2. Sélectionnez votre projet.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Manage (Gérer).
  5. Cliquez sur Intents.
  6. Sélectionnez un intent.
  7. Accédez à la section Training phrases (Phrases d'entraînement).
  8. Sélectionnez les expressions d'entraînement que vous souhaitez exporter.
  9. Cliquez sur Exporter.

Pour importer des phrases d'entraînement pour un intent :

Console

  1. Ouvrez la console Dialogflow CX.
  2. Sélectionnez votre projet.
  3. Sélectionnez votre agent.
  4. Sélectionnez l'onglet Manage (Gérer).
  5. Cliquez sur Intents.
  6. Sélectionnez un intent.
  7. Accédez à la section Training phrases (Phrases d'entraînement).
  8. Si nécessaire, sélectionnez Ignorer l'annotation automatique.
  9. Cliquez sur le bouton d'importation au-dessus de la liste des expressions d'entraînement.
  10. Sélectionnez un fichier et un mode d'importation.
  11. Cliquez sur Envoyer.

Lors de la conception d'agents, il est parfois utile de considérer les intents comme des intents principaux ou des intents supplémentaires.

Un intent principal identifie l'objectif principal de l'utilisateur final lorsqu'il interagit avec un agent. Un intent supplémentaire identifie les questions ultérieures d'un utilisateur final qui sont liées à l'intent principal. Ces questions ultérieures peuvent fournir un contexte supplémentaire sur les besoins de l'utilisateur final, ou il peut s'agir de questions de suivi qui aident l'utilisateur final à clarifier ou à mieux comprendre quelque chose.

Un intent principal est généralement l'un des premiers intents qui correspond dans une conversation, et les questions supplémentaires de l'utilisateur final correspondent à des intents supplémentaires. Exemple :

Dialogue Explication
Utilisateur final : Activer un nouveau téléphone
Agent : Bien sûr, je peux vous aider. Quels sont les quatre derniers chiffres du numéro de téléphone que vous souhaitez activer ?
L'intent principal est mis en correspondance.
Utilisateur final : 1234
Agent : Êtes-vous prêt à activer votre téléphone maintenant ?
Un paramètre est défini.
Utilisateur final : Est-ce que tous mes messages seront transférés sur mon nouveau téléphone ?
Agent : ...
L'intent supplémentaire est mis en correspondance.