Partage via


Retourner une liste de résultats

Il est courant de demander à un agent de rechercher des données dans un système externe et de renvoyer une liste de résultats. Pour ce faire, un agent peut appeler un flux Power Automate pour :

  1. S’authentifier et se connecter à une solution externe.
  2. Exécuter une requête basée sur l’entrée utilisateur.
  3. Mettre en forme les résultats.
  4. Renvoyer les résultats à l’agent.

Cet exemple utilise le connecteur Dataverse dans Power Automate pour rechercher des comptes. Le connecteur renvoie une liste de résultats qui inclut le nom du compte, la ville et le numéro de compte à votre agent.

Prérequis

Configurer une table Account Dataverse

La table Compte est une table standard disponible par défaut dans les environnements Power Platform. Cependant, elle ne contient pas de données de compte. Avant que votre agent puisse rechercher des comptes, vous devez remplir la table Compte.

Si vous avez déjà une table Account avec des données, ignorez cette étape et passez à Créer un sujet. Cependant, n’oubliez pas d’utiliser des termes de recherche pertinents pour vos données lorsque vous testez votre agent dans les étapes ultérieures.

  1. Accédez au portail Power Apps.

  2. Dans le volet de navigation, sélectionnez Tables.

  3. Sélectionnez la table Account puis, dans la page des propriétés de la table, sélectionnez Modifier.

  4. Ajoutez les lignes suivantes à la table :

    Adresse 1 : ville Nom du compte Numéro de compte
    Toulouse Contoso Inc AC0125
    San Francisco Résidences Contoso AC0255
    Olympia Livraison de repas Contoso AC0035

Créer un sujet

  1. Dans Copilot Studio, accédez à la page Rubriques de votre agent.

  2. Créez une rubrique intitulée Recherche de compte.

  3. Ajoutez les phrases déclencheurs suivantes :

    • Je recherche un client
    • Je recherche un compte
    • recherche de compte
    • recherche de client
  4. Ajoutez un nœud Message et entrez le message « Il semble que vous recherchez un compte. Je peux vérifier cela pour vous.

  5. Ajoutez un nœud Question et entrez le message « Quel est le nom du client que vous recherchez ? »

  6. Pour Identifier, sélectionnez Organisation.

    Réponse complète de l’utilisateur fonctionnerait également. Toutefois, en sélectionnant l’entité Organisation, vous tirez parti des capacités de compréhension du langage de l’agent pour extraire le nom de l’organisation de la réponse.

  7. Pour Enregistrer la réponse de l’utilisateur sous, renommez la variable en « organisation ».

    Capture d’écran de la rubrique « Recherche de compte » avec un nœud Message et un nœud Question.

Créer un flux

  1. Sélectionnez l’icône Ajouter un nœud sous n’importe quel nœud, puis sélectionnez Ajouter une action.

  2. Dans l’onglet Actions de base, sélectionnez Nouveau flux Power Automate .

  3. Dans Power Automate, sélectionnez le nom du flux et remplacez-le par Rechercher un compte.

  4. Sélectionnez le déclencheur de flux Exécuter un flux depuis Copilot et ajoutez un paramètre d’entrée Texte nommé Organisation :

    Capture d’écran du déclencheur de flux avec l’entrée de texte « Organisation ».

  5. Sélectionnez l’icône Ajouter sous le déclencheur de flux Exécuter un flux depuis Copilot.

  6. Dans Ajouter une action, recherchez « Microsoft Dataverse » et sélectionnez l’action Rechercher des lignes.

    Cette action utilise la correspondance approximative pour trouver des comptes pertinents dans votre table Dataverse Account.

  7. Dans la zone Terme de recherche, entrez une barre oblique (/), sélectionnez Insérer du contenu dynamique, puis sélectionnez votre paramètre d’entrée Organisation.

  8. Pour Paramètres avancés, sélectionnez Afficher tout et définissez les valeurs suivantes :

    • Élément de filtre de table : account
    • Trier par élément - 1 : search.score desc
    • Trier par élément - 2 : name asc

    Capture d’écran des propriétés de l’action « Rechercher des lignes » avec les options avancées.

Mise en forme des résultats

L’action Rechercher des lignes renvoie la variable Liste de lignes, qui contient des données JSON. Avant de pouvoir utiliser les données, vous devez les analyser à l’aide de l’action Analyser JSON.

  1. Sélectionnez l’icône Ajouter sous l’action Rechercher des lignes.

  2. Dans Ajouter une action, recherchez « Opérations de données » et sélectionnez l’action Analyser JSON.

  3. Dans la zone Contenu, entrez une barre oblique (/), sélectionnez Insérer du contenu dynamique, puis sélectionnez Liste de lignes.

  4. Copiez le schéma JSON suivant et collez-le dans la zone Schéma :

    {
        "type": "array",
        "items": {
            "type": "object",
            "properties": {
                "@@search.score": {
                    "type": "number"
                },
                "name": {
                    "type": "string"
                },
                "address1_city": {
                    "type": "string"
                },
                "accountnumber": {
                    "type": "string"
                }
            },
            "required": [
                "name"
            ]
        }
    }
    

    Capture d’écran du schéma JSON dans les propriétés de l’action Analyser JSON.

  5. Sélectionnez l’icône Ajouter sous l’action Analyser JSON.

  6. Dans Ajouter une action, recherchez « Variable » et sélectionnez l’action Initialiser la variable.

  7. Dans la zone Nom, entrez « ListOfAccounts ».

  8. Pour Type, sélectionnez String.

    Capture d’écran des propriétés de l’action « Initialiser la variable ».

  9. Sélectionnez l’icône Ajouter sous l’action Initialiser la variable.

  10. Dans Ajouter une action, recherchez « Contrôle » et sélectionnez l’action Appliquer à chacun.

  11. Dans la zone Sélectionner une sortie à partir des étapes précédentes, entrez une barre oblique (/), sélectionnez Insérer du contenu dynamique, puis sélectionnez la variable Corps sous Analyser JSON.

  12. Sélectionnez l’icône Ajouterdans l’action Appliquer à chacun.

  13. Dans Ajouter une action, recherchez « Variable » et sélectionnez l’action Ajouter à la variable de chaîne.

  14. Pour Nom, sélectionnez ListOfAccounts.

  15. Copiez le texte suivant et collez-le dans la zone Valeur :

    - @{items('Apply_to_each')['accountnumber']}: @{items('Apply_to_each')['name']} - @{items('Apply_to_each')['address1_city']}
    
  16. Ajoutez un saut de ligne après l’extrait pour que chaque résultat apparaisse sur sa propre ligne.

    Capture d’écran des propriétés de l’action « Ajouter à la variable de chaîne ».

  17. Dans l’action Répondre à Copilot, ajoutez une sortie Texte.

  18. Pour Nom, entrez « FoundAccounts ».

  19. Pour la valeur, entrez une barre oblique (/) dans la zone, sélectionnez Insérer du contenu dynamique, puis sélectionnez la variable ListOfAccounts.

    Capture d’écran des propriétés de l’action « Répondre à Copilot ».

  20. Enregistrez et publiez votre flux.

Appeler le flux à partir de Copilot Studio

  1. Dans Copilot Studio, sélectionnez l’icône Ajouter un nœud sous le nœud Question, sélectionnez Ajouter une action, puis sélectionnez le flux que vous avez créé précédemment, Rechercher un compte.

  2. Définissez le paramètre d’entrée du flux sur la variable de sortie du nœud Question : Organisation (chaîne) obtient sa valeur de la variable organisation.

  3. Ajoutez un nœud Message et entrez le message « Voici ce que j’ai trouvé ».

  4. Ajoutez un second nœud Message. Sélectionnez l’icône Insérer une variable, puis sélectionnez FoundAccounts.

    Capture d’écran du flux de conversation qui répond avec une liste de comptes trouvés.

  5. Sélectionnez Enregistrer.

  6. Testez votre agent.

    Capture d’écran d’un exemple de conversation dans le panneau de test.