Comment Microsoft 365 Copilot détermine le plug-in à utiliser
Microsoft 365 Copilot est votre assistant personnel pour le travail. Il aide à effectuer diverses tâches générales, telles que l’écriture, la synthèse, la recherche, etc. Copilot a des compétences différentes qui correspondent à ces différents types de tâches. Par exemple, Copilot peut résumer les éléments d’action d’une réunion, suggérer des modifications à un fichier ou rechercher des ressources et des experts sur un sujet donné dans votre organization. Chaque compétence a ses propres paramètres et sorties qui sont adaptés à la tâche spécifique.
Comme tout copilote, Microsoft 365 Copilot est entraîné avec des données à un moment donné. Pour récupérer et traiter de nouvelles informations en temps réel, en particulier des données spécifiques à vos organization et workflows, Copilot a besoin de plug-ins. Les plug-ins étendent les compétences et l’utilité de Microsoft 365 Copilot pour les utilisateurs finaux, ce qui lui permet de choisir la compétence appropriée dans son répertoire.
Mais comment Copilot sait-il quelle compétence utiliser lorsque vous demandez de l’aide ? Comment interprète-t-il votre demande et la met-elle en correspondance avec la meilleure compétence disponible ? C’est le travail de l’orchestrateur Microsoft 365 Copilot.
Cet article explique la logique derrière le processus de sélection des compétences de Copilot et comment vous pouvez vous assurer que Copilot utilise votre plug-in à chaque occasion pour profiter à vos utilisateurs.
Importante
- Les plug-ins d’API sont actuellement uniquement pris en charge en tant qu’actions au sein d’agents déclaratifs. Ils ne sont pas activés dans Microsoft 365 Copilot. Pour obtenir un exemple montrant comment ajouter un plug-in d’API à un agent déclaratif, consultez Ajouter un plug-in.
- La fonctionnalité est activée par défaut dans tous les locataires sous licence Microsoft 365 Copilot. Les administrateurs peuvent désactiver cette fonctionnalité sur une base d’utilisateur et de groupe et contrôler la façon dont les plug-ins individuels sont approuvés pour l’utilisation et quels plug-ins sont activés. Pour plus d’informations, consultez Gérer les agents Copilot dans les applications intégrées.
L’orchestrateur Copilot
Entre l’entrée en langage naturel de l’utilisateur final et la sortie en langage naturel de Copilot, l’orchestrateur Microsoft Copilot travaille en arrière-plan pour sélectionner et exécuter la ou les compétences appropriées à partir des plug-ins appropriés pour la tâche donnée de l’utilisateur final.
La couche d’orchestration représente l’interface entre les modèles LLM (Large Language Models) de base et les nombreuses façons dont vous pouvez étendre, enrichir et personnaliser Copilot en fonction de la façon dont vos clients travaillent.
Le graphique suivant illustre la façon dont l’orchestrateur Microsoft 365 Copilot sélectionne le plug-in approprié, avec la compétence appropriée, au bon moment, même s’il existe plusieurs options à choisir.
Entrée en langage naturel : l’utilisateur envoie une requête à Copilot, telle que « Quels sont les tickets qui m’ont été attribués en ce moment ? »
Vérifications préliminaires : Copilot effectue plusieurs vérifications sur la requête, notamment des vérifications d’IA responsable et des mesures de sécurité pour s’assurer qu’elle ne présente aucun risque. Si la requête échoue à l’une de ces vérifications, Copilot met fin à l’interaction.
Raisonnement : l’orchestrateur Copilot formule un plan comprenant plusieurs actions qu’il effectue pour tenter de répondre à l’invite de l’utilisateur.
Sélection du contexte et de l’outil : l’orchestrateur récupère le contexte de conversation de l’utilisateur à partir du magasin de contexte et intègre les données de Microsoft Graph pour affiner le contexte. Il ajuste ensuite la requête initiale en fonction de ce contexte mis à jour et la transfère au LLM (modèle de langage volumineux) pour guider les étapes suivantes.
Le LLM peut continuer à générer une réponse à l’aide des fonctionnalités intégrées de Copilot, ou il peut déterminer que des données supplémentaires sont nécessaires.
Si des informations supplémentaires sont nécessaires, l’orchestrateur effectue une recherche pour les plug-ins (outils) avec la compétence appropriée pour la tâche à partir des plug-ins activés de l’utilisateur en fonction des descriptions des plug-ins et de leurs descriptions de fonctions.
Correspondance des fonctions et détermination des paramètres : l’orchestrateur formule une nouvelle invite incorporant la requête initiale de l’utilisateur, le contexte mis à jour et les plug-ins sélectionnés, et la présente au LLM. Le LLM évalue l’entrée et spécifie le plug-in et la fonction optimaux dans ce plug-in pour traiter la tâche. Il fournit ensuite à l’orchestrateur les détails de la fonction et les paramètres nécessaires pour collecter les informations nécessaires.
Exécution de l’outil : l’orchestrateur utilise la réponse du LLM pour construire une requête d’API et envoyer la requête à l’exécuteur d’outil, qui récupère en toute sécurité les informations demandées situées en dehors de l’infrastructure de Copilot. Il exécute la requête et renvoie les résultats à l’orchestrateur pour un traitement ultérieur.
Analyse des résultats et formulation de la réponse : l’orchestrateur intègre la réponse de l’API dans le contexte en cours et consulte le LLM dans une boucle de raisonnement continue jusqu’à ce que le LLM juge approprié pour générer une réponse finale.
Réponse : l’orchestrateur compile toutes les informations collectées pendant le processus de raisonnement et les soumet au LLM pour créer une réponse finale. Après s’être assuré que la réponse est conforme aux instructions d’IA responsable, elle renvoie la réponse à l’orchestrateur, qui la consigne dans le magasin de contexte et la remet à l’utilisateur via l’interface utilisateur Copilot.
Sortie en langage naturel : Enfin, l’orchestrateur fournit la réponse à l’utilisateur et met à jour l’état de la conversation. Copilot est prêt pour sa prochaine invite.
Si vous imaginez l’invite d’un utilisateur à Copilot comme un projet de construction, l’orchestrateur Copilot est l’entrepreneur général, qui coordonne et organise le travail des sous-traitants spécialisés, vos plug-ins. À l’instar d’un entrepreneur général, l’orchestrateur est chargé de s’assurer que le projet est « terminé » selon les spécifications implicites par l’entrée de l’utilisateur (en d’autres termes, que la réponse de Copilot répond à l’intention de l’utilisateur dans sa demande).
Toutefois, il incombe à chaque plug-in de fournir à Copilot une description précise de ses compétences et d’exécuter efficacement ses compétences. Cela insuffle un sentiment de confiance à vos utilisateurs et garantit que Copilot appelle votre plug-in chaque fois que ses compétences sont nécessaires. La section suivante fournit plus d’informations sur la façon d’optimiser votre plug-in et vos documents OpenAPI que l’orchestrateur peut rechercher et utiliser.
Optimisation du plug-in
Microsoft 365 Copilot pouvez choisir de manière unique la compétence appropriée parmi les nombreuses dans son répertoire. Mais comment pouvez-vous vous assurer que Copilot choisira votre plug-in pour fournir la compétence appropriée ?
La réponse réside dans la façon dont vous décrivez votre plug-in, ses compétences et les paramètres d’exécution des compétences. Il est essentiel de spécifier des descriptions concises et précises dans votre manifeste de plug-in pour s’assurer que l’orchestrateur Copilot sait quand et comment appeler votre plug-in.
La façon dont vous décrivez votre plug-in à l’orchestrateur dépend du type de plug-in que vous générez, comme le résume le tableau suivant.
Type de plug-in | Décrit par | En savoir plus |
---|---|---|
Plug-ins d’API | Description OpenAPI | Comment rendre un document OpenAPI efficace dans l’extension de Copilot |
Copilot Studio actions | Noms et descriptions dans Copilot Studio carte de conversation | Orchestrer des rubriques et des actions copilotes avec l’IA générative |
Plug-ins d’extension de message | Manifeste d'application | Instructions pour les plug-ins d’extension de message |
Mécanismes de correspondance
Lorsqu’un utilisateur envoie une requête à Copilot, l’orchestrateur recherche son catalogue complet de compétences (fonctions) à partir des plug-ins installés pour identifier jusqu’à cinq compétences, qui correspondent le mieux à la requête. L’orchestrateur tente d’abord de faire correspondre des mots exacts (correspondance lexicale) et étend son étendue de recherche en fonction des besoins pour inclure des correspondances sur des significations descriptives (correspondance sémantique), allant des noms de fonctions spécifiques aux descriptions de plug-in générales, jusqu’à ce que les cinq emplacements candidats de fonction soient remplis. Plus précisément, voici la hiérarchie des mécanismes de correspondance pour la sélection des fonctions de plug-in Copilot :
- Correspondance lexicale sur le nom de la fonction.
- Correspondance sémantique sur la description de la fonction. Cette étape est actuellement en préversion privée.
- Correspondance lexicale sur le nom du plug-in (ajoute toutes les fonctions de plug-in à la liste des candidats).
- Correspondance sémantique sur le nom du plug-in (ajoute toutes les fonctions de plug-in à la liste des candidats).
L’orchestrateur fonctionne dans la liste ci-dessus jusqu’à ce que les cinq emplacements candidats de fonction soient remplis.
Étape suivante
Découvrez les meilleures pratiques pour optimiser la détectabilité et l’utilité des plug-ins.