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 faire cela, Microsoft Copilot Studio peut appeler un flux Power Automate pour :
- S’authentifier et se connecter à une source externe
- Exécuter une requête basée sur les entrées de l’utilisateur
- Mettre en forme les résultats
- Renvoyez les résultats au agent
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
- Comprendre comment créer un flux à partir du canevas de création Copilot Studio
- Utiliser des variables d’entrée et de sortie pour transmettre des informations
- Configurer la recherche Dataverse pour votre environnement
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 agent puisse rechercher des comptes, vous devrez 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, vous devrez utiliser des termes de recherche différents lorsque vous testerez votre agent dans les étapes ultérieures.
Accédez au portail Power Apps.
Dans le volet latéral, sous Dataverse, sélectionnez Tables.
Sélectionnez la table Account puis, dans la page des propriétés de la table, sélectionnez Modifier.
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
Accédez à la page Sujets pour votre agent.
Créez un un sujet intitulé Recherche de compte.
Ajoutez les phrases de déclenchement suivantes :
- Je cherche un client
- Je cherche un compte
- recherche de compte
- recherche de client
Ajoutez un nœud Message et entrez le message On dirait que vous cherchez un compte. Je peux faire ça pour vous..
Ajoutez un nœud Question et entrez le message Quel est le nom du client que vous recherchez ?.
Pour Identifier, sélectionnez Organisation.
Réponse complète de l’utilisateur fonctionnera également. Cependant, la sélection de l’entité Organisation exploite les capacités de compréhension du langage de agent pour extraire le nom de l’organisation de réponse.
Pour Enregistrer la réponse sous, renommez la variable en organisation.
Créer un flux
Dans le canevas de création, sélectionnez Ajouter un nœud (+). Sélectionnez Appeler une action, puis sélectionnez Créer un flux.
Dans le portail Power Automate, nommez le flux Rechercher un compte.
Ajoutez une entrée Texte nommée Organisation.
Sélectionnez Insérer une nouvelle étape (+) et sélectionnez Ajouter une action.
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.
Pour Critère de recherche, sélectionnez la variable Organisation.
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
- Élément de filtre de table :
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.
Sélectionnez Insérer une nouvelle étape (+) et sélectionnez Ajouter une action.
Sélectionnez le connecteur Data Operation, puis sélectionnez l’action Analyser JSON.
Dans la zone Contenu, sous Rechercher des lignes, sélectionnez la variable Liste de lignes.
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" ] } }
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.
Pour Nom, entrez ListOfAccounts. Pour Type, sélectionnez String.
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.
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.
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.
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']}
Ajoutez un saut de ligne après l’extrait pour que chaque résultat apparaisse sur sa propre ligne.
Dans l’action Renvoyer des valeurs à Microsoft Copilot Studio, ajoutez une sortie Texte. Pour Nom, entrez FoundAccounts. Pour Valeur, sélectionnez ListOfAccounts.
Cliquez sur Enregistrer.
Appeler le flux à partir de Microsoft Copilot Studio
Dans le canevas de création de Microsoft Copilot Studio, sélectionnez Ajouter un nœud (+), puis sélectionnez Appeler une action.
Sélectionnez le flux que vous avez créé précédemment, Rechercher un compte.
Pour L’organisation tire sa valeur de, sélectionnez la variable organisation.
Ajoutez un nœud Message et entrez le message Voici ce que j’ai trouvé.
Ajoutez un second nœud Message. Sélectionnez Insérer une variable, puis sélectionnez FoundAccounts.
Sélectionnez Enregistrer.
Testez votre agent dans le volet Tester agent .