Share via


Retourner une liste de résultats

Important

Les capacités et les fonctionnalités de Power Virtual Agents font maintenant partie de Microsoft Copilot Studio, suite à des investissements significatifs dans l’IA générative et des intégrations améliorées dans Microsoft Copilot.

Certains articles et captures d’écran peuvent faire référence à Power Virtual Agents pendant que nous mettons à jour la documentation et le contenu de la formation.

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

  • s’authentifier et se connecter à une solution externe ;
  • exécuter une requête basée sur les entrées de l’utilisateur ;
  • mettre en forme les résultats ;
  • retourner des résultats au copilote

Dans cet exemple, vous utiliserez le connecteur Dataverse dans Power Automate pour rechercher des comptes. Ensuite, vous renverrez une liste de résultats comprenant le nom du compte, la ville et le numéro de compte à Microsoft Copilot Studio.

Conditions préalables

Configurer une table Account Dataverse

La table Account (Compte) est une table standard qui est automatiquement incluse dans les environnements Power Platform. Cependant, elle ne contient pas de données de compte. Avant que votre copilote puisse rechercher des comptes, vous devrez remplir le tableau Compte.

Si vous avez déjà une table Account avec des données, ignorez cette étape et passez à Créer un sujet. Cependant, vous devrez utiliser des termes de recherche différents lorsque vous testerez votre copilote lors des étapes ultérieures.

  1. Accédez au portail Power Apps.

  2. Dans le volet latéral, sous Dataverse, 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. Accédez à la page Sujets de votre copilote.

  2. Créez un un sujet intitulé Recherche de compte.

  3. Ajoutez les phrases de déclenchement suivantes :

    • Je cherche un client
    • Je cherche un compte
    • recherche de compte
    • recherche de client
  4. Ajoutez un nœud Message et entrez le message On dirait que vous cherchez un compte. Je peux faire ça 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 fonctionnera également. Cependant, la sélection de l’entité Organisation tire parti des capacités de compréhension du langage du copilote pour extraire le nom de l’organisation de la réponse.

    Capture d’écran d’un nouveau sujet avec un nœud de message et un nœud de question.

  7. Pour Enregistrer la réponse sous, renommez la variable en organisation.

Créer un flux

  1. Dans le canevas de création, sélectionnez Ajouter un nœud (+). Sélectionnez Appeler une action, puis sélectionnez Créer un flux.

  2. Dans le portail Power Automate, nommez le flux Rechercher un compte.

  3. Ajoutez une entrée Texte nommée Organisation.

    Capture d’écran du déclencheur de flux avec une entrée texte ajoutée.

  4. Sélectionnez Insérer une nouvelle étape (+) et sélectionnez Ajouter une action.

  5. Sélectionnez le connecteur Microsoft Dataverse, puis sélectionnez l’action Rechercher des lignes.

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

    Capture d’écran de l’action Rechercher des lignes du connecteur Dataverse.

  6. Pour Critère de recherche, sélectionnez la variable Organisation.

  7. Sélectionnez Afficher les options avancées et définissez les éléments suivants comme indiqué :

    • É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 actions Rechercher des lignes avec les options avancées configuré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 devrez les analyser avec l’action Analyser JSON.

  1. Sélectionnez Insérer une nouvelle étape (+) et sélectionnez Ajouter une action.

  2. Sélectionnez le connecteur Data Operation, puis sélectionnez l’action Analyser JSON.

  3. Dans la zone Contenu, sous Rechercher des lignes, sélectionnez la variable 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 entré dans le nœud Analyser JSON.

  5. Sélectionnez Insérer une nouvelle étape (+) et sélectionnez Ajouter une action. Sélectionnez le connecteur Variable, puis sélectionnez l’action Initialiser la variable.

  6. Pour Nom, entrez ListOfAccounts. Pour Type, sélectionnez String.

    Capture d’écran de l’action Initialiser la variable.

  7. Sélectionnez Insérer une nouvelle étape (+) et sélectionnez Ajouter une action. Sélectionnez le connecteur Control, puis sélectionnez l’action Appliquer à chacun.

  8. Sélectionnez la zone Sélectionner un résultat des étapes précédentes pour ouvrir le menu Contenu dynamique. Recherchez corps, puis sous Analyser JSON, sélectionnez la variable Corps.

  9. Sélectionnez Insérer une nouvelle étape (+) et sélectionnez Ajouter une action. Sélectionnez le connecteur Variable, puis sélectionnez l’action Ajouter à la fin d’une variable chaîne.

  10. Pour Nom, sélectionnez ListOfAccounts. 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']}
    
  11. Ajoutez un saut de ligne après l’extrait pour que chaque résultat apparaisse sur sa propre ligne.

    Capture d’écran de l’action Appliquer à chacun.

  12. Dans l’action Renvoyer des valeurs à Microsoft Copilot Studio, ajoutez une sortie Texte. Pour Nom, entrez FoundAccounts. Pour Valeur, sélectionnez ListOfAccounts.

    Capture d’écran de l’action Renvoyer des valeurs à Microsoft Copilot Studio.

  13. Cliquez sur Enregistrer.

Appeler le flux à partir de Microsoft Copilot Studio

  1. Dans le canevas de création de Microsoft Copilot Studio, sélectionnez Ajouter un nœud (+), puis sélectionnez Appeler une action.

  2. Sélectionnez le flux que vous avez créé précédemment, Rechercher un compte.

  3. Pour L’organisation tire sa valeur de, sélectionnez la variable organisation.

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

  5. Ajoutez un second nœud Message. Sélectionnez Insérer une variable, puis sélectionnez FoundAccounts.

    Capture d’écran d’une conversation avec un copilote qui a répondu avec une liste de comptes trouvés.

  6. Sélectionnez Enregistrer.

  7. Test votre copilote dans le volet Tester copilote.

    Capture d’écran de la conversation du copilote dans le volet Test copilote.