Évaluations des playbooks

Ce guide explique comment utiliser la fonctionnalité d'évaluations intégrée dans la console Dialogflow CX pour vérifier le fonctionnement de votre agent et éviter toute régression après les mises à jour. Dialogflow CX fournit des métriques prêtes à l'emploi pour vous aider à évaluer les performances de votre agent.

Toutes les métriques, à l'exception de la latence, nécessitent au moins un scénario de test, une "réponse de référence" à laquelle Dialogflow CX compare les performances de l'agent pour les calculer. Chaque scénario de test peut être mesuré dans le contexte d'un environnement, ce qui vous permet de spécifier différentes versions de playbooks, de flux et d'outils à utiliser dans l'évaluation des performances de l'agent.

(Facultatif) Créer un environnement

La création d'un environnement est facultative. Si vous n'en créez pas, la valeur par défaut est Brouillon.

  1. Pour créer un environnement, cliquez sur Environnements dans le menu de gauche, puis sélectionnez + Créer.
  2. Choisissez les versions des playbooks, des flux et des outils que vous souhaitez utiliser pour mesurer les performances de l'agent.
  3. Cliquez sur Enregistrer pour enregistrer l'environnement.

Créer un scénario de test

Vous pouvez créer un scénario de test à partir d'une conversation existante dans votre historique des conversations, créer une conversation à enregistrer en tant que scénario de test ou importer des scénarios de test dans Dialogflow CX.

Créer un scénario de test dans la console

  1. Accédez à Historique des conversations dans le menu de gauche.
  2. Pour créer une conversation, activez votre agent (par exemple, en appelant son numéro de téléphone) afin de créer une conversation dans l'historique des conversations. Lorsque vous avez une conversation que vous souhaitez utiliser comme scénario de test, sélectionnez-la.
  3. Affichez la conversation et vérifiez les réponses de l'agent, les outils appelés et le son de chaque réponse. Lorsque vous êtes satisfait, cliquez sur Créer un scénario de test en haut à droite de la fenêtre.
  4. Indiquez un nom à afficher pour le scénario de test et spécifiez vos attentes concernant les événements qui doivent se produire au niveau de la conversation. Cela peut inclure des outils, des playbooks et des flux que vous vous attendez à voir appelés dans la conversation. Cliquez sur + Ajouter une attente pour ajouter d'autres attentes. Pour que les attentes soient évaluées dans l'ordre séquentiel indiqué (de haut en bas), activez l'option Validation séquentielle.
  5. Cliquez sur Enregistrer pour enregistrer votre scénario de test.

Importer des scénarios de test

  1. Les scénarios de test doivent être au format CSV suivant.
  2. Pour importer des scénarios de test dans le système, cliquez sur Importer en haut du menu des scénarios de test.
  3. Dans le menu qui s'affiche, sélectionnez le fichier stocké localement ou saisissez le chemin d'accès à son bucket Cloud Storage.
  4. Vos scénarios de test devraient maintenant s'afficher dans le menu des scénarios de test.

Exécuter un scénario de test

  1. Cliquez sur Scénarios de test dans le menu de gauche, puis sélectionnez le ou les scénarios de test auxquels vous souhaitez comparer votre agent. Il peut s'agir d'un seul ou de plusieurs scénarios de test.
  2. Cliquez sur Exécuter les scénarios de test sélectionnés.

Résultats des tests

  1. Accéder aux résultats : les derniers résultats d'exécution des tests s'affichent pour chaque scénario de test dans la vue Scénario de test une fois l'exécution terminée :
    1. Similarité sémantique : mesure le degré de similarité des conversations de l'agent par rapport à la "réponse de référence" (réponses dans le scénario de test). Les réponses de référence sont obligatoires pour recevoir cette métrique. Les valeurs peuvent être 0 (incohérent), 0,5 (assez cohérent) ou 1 (très cohérent).
    2. Précision de l'appel d'outil : valeur qui indique dans quelle mesure la conversation inclut les outils qui doivent être appelés pendant la conversation. Les valeurs sont comprises entre 0 et 1. Si aucun outil n'est utilisé dans la conversation, la précision s'affiche sous la forme -- (N/A).
    3. Latence : temps total nécessaire à l'agent pour traiter une requête d'utilisateur final et lui répondre (différence entre la fin de l'énoncé de l'utilisateur et le début de la réponse de l'agent). Les unités sont en secondes.
  2. Mettre à jour le scénario de test de référence : si la dernière exécution reflète les modifications attendues en raison d'une mise à jour de l'agent, vous pouvez cliquer sur "Enregistrer comme de référence" pour remplacer le scénario de test d'origine.
  3. Filtrer et trier les résultats : vous pouvez filtrer et trier les résultats de l'évaluation en fonction de l'une des métriques générées ou d'un environnement spécifique. Cela est utile pour suivre les modifications des performances après chaque mise à jour.

Mise en forme des scénarios de test pour l'importation par lot

Cette section explique comment mettre en forme un fichier CSV pour importer des scénarios de test par lot pour votre agent. Le système lit ce fichier pour créer un ensemble structuré de scénarios de test, chacun contenant un ou plusieurs tours de conversation.

Un seul scénario de test peut s'étendre sur plusieurs lignes du fichier CSV. La première ligne d'un scénario de test définit ses propriétés générales (comme son nom et sa langue). Chaque ligne suivante de ce scénario de test définit un seul tour de conversation (l'utilisateur dit quelque chose, l'agent est censé répondre).

Le fichier CSV doit comporter une ligne d'en-tête comme toute première ligne. Cet en-tête définit les données de chaque colonne.

En-têtes obligatoires

Les deux en-têtes obligatoires doivent être dans l'ordre indiqué. Les deux sont obligatoires pour la première ligne d'un nouveau scénario de test. Vous pouvez démarrer un nouveau scénario de test en fournissant de nouvelles valeurs DisplayName et LanguageCode.

  • DisplayName : nom de votre scénario de test. Ce champ n'est renseigné que pour la première ligne d'un nouveau scénario de test.
  • LanguageCode : code de langue du test (par exemple, en, en-US, es).

En-têtes facultatifs

Vous pouvez inclure l'un des en-têtes facultatifs suivants pour fournir plus de détails sur vos scénarios de test. Ils peuvent être dans n'importe quel ordre après les deux premières colonnes obligatoires.

Métadonnées du scénario de test

  • Tags : tags séparés par des espaces pour organiser les tests (par exemple, "intégration des paiements").
  • Notes : notes en texte libre ou description de l'objectif du scénario de test.
  • TestCaseConfigV2.StartResource: spécifiez le flux ou le playbook pour démarrer le test.

Entrée utilisateur

  • UserInput.Input.Text : texte que l'utilisateur "saisit" pour un tour donné.
  • UserInput.InjectedParameters: paramètres à injecter dans la conversation au début d'un tour, au format d'une chaîne JSON.

Sortie de l'agent

  • AgentOutput.QueryResult.ResponseMessages.Text: texte exact avec lequel vous affirmez que l'agent a répondu.
  • AgentOutput.QueryResult.Parameters: paramètres que vous affirmez avoir été extraits par l'agent, au format d'une chaîne JSON.

Résultats attendus

  • OrderedExpectations.ExpectedFlow: flux que vous vous attendez à voir actif après le tour.
  • OrderedExpectations.ExpectedIntent: intent que vous vous attendez à voir correspondre au tour.
  • OrderedExpectations.ExpectedAgentReply: texte avec lequel vous vous attendez à ce que l'agent réponde. Peut être une sous-chaîne de la réponse complète.
  • OrderedExpectations.ExpectedOutputParameter: paramètres que vous vous attendez à voir définis à la fin du tour, au format d'une chaîne JSON.

Métadonnées audio

  • AudioTurnMetadata : métadonnées pour les tests audio, au format d'une chaîne JSON.

Créer un scénario de test

Les scénarios de test sont organisés par lignes de données.

  1. Pour démarrer un nouveau scénario de test, remplissez sa ligne de métadonnées.
    • Règle : cette ligne doit comporter une valeur dans la colonne DisplayName.
    • Action : saisissez des valeurs pour DisplayName et LanguageCode. Vous pouvez également ajouter des tags, des notes ou un TestCaseConfigV2.StartResource dans cette ligne. Les colonnes de tour de conversation (comme UserInput.Input.Text) doivent être laissées vides dans cette ligne. Si vous utilisez des tags, séparez-les par un espace. Exemple : tag1 tag2 tag3. Si vous utilisez TestCaseConfigV2.StartResource, ajoutez le préfixe start_flow: ou start_playbook: au nom de la ressource. Exemple : start_flow:projects/p/locations/l/agents/a/flows/f.
  2. Ajoutez un tour de conversation au scénario de test que vous venez de démarrer en ajoutant une nouvelle ligne juste en dessous.
    • Règle : la colonne DisplayName doit être vide. Cela indique au parser qu'il s'agit d'un tour appartenant au scénario de test précédent.
    • Action : remplissez les colonnes qui décrivent l'action de l'utilisateur et la réponse attendue de l'agent pour ce tour, telles que UserInput.Input.Text et OrderedExpectations.ExpectedAgentReply. Pour les colonnes nécessitant du code JSON, vous devez fournir un objet JSON valide sous forme de chaîne. Exemple: {"param_name": "param_value", "number_param": 123}.