Depuis quelque temps, Microsoft pousse 2 nouveaux concepts de personnalisation de Copilot, qui paraissent similaires quand on les découvre : les Instructions personnalisées et la Mémoire Copilot. Les deux visent à rendre Copilot plus personnel et plus adapté au contexte affin d’apporter des réponses toujours plus pertinentes, et évitent certaines répétitions dans les prompts.
Juste avant cela, je pense qu’il est intéressant de refaire un point rapide sur le RAG qui est aussi employé dans beaucoup d’architectures IA.
Qu’est-ce que le RAG ?
Depuis 2024, je me suis plongé dans ce concept qu’on appelle RAG (Retrieval-Augmented Generation). Grosso modo, c’est comme donner une paire de jumelles à votre LLM : il va chercher des infos actualisées, dans votre propre base de connaissances, avant de générer une réponse.
En pratique, vous envoyez une question, le modèle commence par interroger une base documentaire (vectorielle ou non), puis compile les extraits les plus pertinents pour enrichir sa réponse.
Résultat : une réponse plus fiable, plus contextualisée, et à jour.
Pour mettre cela en place sur votre Copilot, plusieurs chemins sont possibles :
Mais quand on parle de personnalisation dans Copilot, il faut bien distinguer deux concepts qui n’ont pas la même finalité : les Instructions personnalisées et la Mémoire Copilot. On les confond facilement, mais ce sont deux choses bien distinctes.
Qu’est-ce que les instructions personnalisées ?
Quelle que soit l’IA utilisée, ce schéma rappelle les grands principes pour un prompt réussi :
Avec Copilot, les attentes liées à la forme des réponses sont généralement constantes : c’est l’utilisateur qui définit à l’avance la manière dont Copilot doit se comporter.
Grâce aux instructions personnalisées, on peut donc gagner du temps en adaptant le ton et la forme des réponses de Copilot, de manière générale et permanente.
Par exemple :
Réponds toujours de manière concise et en français
Donne-moi systématiquement des exemples techniques liés à Azure
Réponds toujours comme Maître Yoda, dans Star Wars
Comment marchent les instructions personnalisées ?
Voici une comparaison simple, montrant l’impact des instructions personnalisées, quand celui-ci est configuré pour toujours répondre comme Maître Yoda dans Star Wars :
Sans configuration d’instructions personnalisées :
Avec configuration d’instructions personnalisées :
Les instructions personnalisées changent radicalement la façon dont Copilot formule ses réponses. La même question peut donc donner deux réponses très différentes – l’une orientée divertissement, l’autre orientée expertise professionnelle.
Qu’est-ce que la mémoire Copilot ?
Jusqu’ici, Copilot répondait aux questions, mais oubliait cette interaction dans le temps dès que l’on fermait la fenêtre ou que l’on passait à une nouvelle conversation.
Avec la mémoire en plus, Copilot peut maintenant retenir des informations clés sur vous et votre travail et les réutiliser automatiquement dans vos prochaines interactions.
Mais depuis quelque temps, Microsoft a ajouté une nouvelle brique que Microsoft a ajoutée à son écosystème Copilot. En clair, c’est la capacité de Copilot à se souvenir d’éléments importants sur nous ou notre travail, et à les réutiliser automatiquement dans nos futures interactions.
Avec la mémoire, c’est comme un carnet personnel que Copilot garde toujours sous le coude. Grâce à lui, Copilot sait déjà que l’on préfère les listes à puces et que l’on travailles sur ce projet Suisse. En combinant les deux, Copilot devient à la fois plus précis et plus personnel.
Comment marche la mémoire Copilot ?
Voici une comparaison simple, montrant l’impact de la fonction Copilot Memory, quand celui-ci est configuré pour toujours répondre comme Maître Yoda dans Star Wars :
Sans configuration de mémoire Copilot
Avec une configuration de mémoire Copilot :
Comment puis-je configurer la mémoire et les instructions personnalisées dans Copilot?
L’utilisateur a le contrôle total : tu peux consulter, modifier ou supprimer ce que Copilot retient, et activer ou désactiver ces options à tout moment, tout cela depuis la page d’accueil de Copilot
L’accès aux instructions et à la mémoire Copilot est possible depuis les menus suivants :
Les deux menus sont bien distingués :
Copilot utilisera ces informations dans toutes tes prochaines conversations. Il est même possible de désactiver temporairement la prise en compte des instructions personnalisées :
Du côté de la mémoire Copilot, vous retrouvez ici les deux sections d’information :
Le profil professionnel est une source officielle d’informations issues de votre tenant Microsoft. Ce n’est pas un profil crée dans Copilot, mais plutôt un contexte auquel il a accès via Microsoft Graph, lié à votre identité professionnelle (par exemple via Entra ID).
La mémoire Copilot est construite au fil des échanges pour enrichir le contexte et personnaliser les réponses :
Un bouton pour couper la mémoire à tout moment : Copilot redevient alors sans mémoire persistante :
Chaque entrée dans la mémoire Copilot doit se faire depuis la fenêtre de prompt :
Une liste de la mémoire Copilot est aussi disponible via un prompt :
La mémoire Copilot peut être ajustée : il est possible de l’éditer, de la supprimer ou même de demander à Copilot d’ignorer ce point à l’avenir :
Et voici le résultat d’un prompt après le changement de mémoire :
En plus des instructions globales de Copilot, il est aussi possible de configurer des instructions de rédaction spécifiques dans Outlook.
Lors de chaque demande à Copilot, ce dernier aidera à rédiger un mail (réponse, brouillon, résumé) en respectant ces consignes pour rester cohérent.
En résumé, ces différents paramétrages d’instructions suivent l’approche suivante :
Aspect
Instructions personnalisées (Copilot)
Instructions de rédaction (Outlook)
Portée
Globales – s’appliquent à toutes les apps où Copilot est présent (Word, Excel, Teams, Edge…).
Spécifiques à Outlook et uniquement pour la rédaction d’e-mails.
Contenu
Qui vous êtes (rôle, secteur, contexte) et comment Copilot doit répondre (style, niveau de détail).
Ton de rédaction (formel/informel), longueur (bref/détaillé), style de communication pour les mails.
Objectif
Personnaliser le comportement général de Copilot dans toutes vos conversations.
Harmoniser le style des e-mails générés ou suggérés par Copilot.
Configuration
Via les paramètres Copilot (⚙️) > Instructions personnalisées.
Via Outlook > Copilot > ⚙️ > Instructions de rédaction.
Exemple d’impact
Copilot ajoute des exemples Azure dans ses réponses techniques.
Copilot propose un mail concis et poli, adapté à une réponse client.
Conclusion
En conclusion, donner de la mémoire et des règles claires à Copilot, c’est comme passer d’un stagiaire à un collaborateur expérimenté : il comprend ton style, ton métier et peut t’aider plus vite et plus efficacement.
Les instructions personnalisées permettent de fixer le ton et la forme des réponses, une bonne fois pour toutes, tandis que la mémoire Copilot apprend et s’adapte au fil du temps, en intégrant ton contexte métier et tes préférences.
Pour tirer le meilleur parti de cette personnalisation, je vous conseille de :
Configurer des instructions personnalisées dès maintenant, avec un style adapté à votre usage (technique, concis, fun…).
Activer la mémoire Copilot et de l’ajuster au fil de l’eau pour qu’elle reflète au mieux le contexte.
Excel a longtemps souffert d’un retard dans l’avancement du développement de Copilot au sein de la suite d’outils Microsoft 365 Copilot, surtout si on le compare à Word et PowerPoint. Pourquoi cela ? Car les tableaux Excel ne sont pas des phrases ou des textes comme aime avoir les LLMs. Ce qui a rendu l’intégration de Copilot plus complexe que celle dans Word (texte linéaire) ou PowerPoint (contenu visuel structuré).
Qui est en charge du développement de Copilot dans Excel, Word, PowerPoint, … ?
Microsoft a mis en place une équipe centrale dédiée à Copilot, appelée Microsoft 365 Copilot Product Group, qui pilote la vision, les modèles d’IA, et les interfaces transversales.
Cette équipe travaille en étroite collaboration avec les équipes produit de chaque application Office, qui adaptent Copilot à leurs spécificités fonctionnelles. sein de Microsoft 365 Apps. Par exemple, l’équipe Excel se concentre sur l’interprétation des tableaux et des formules, tandis que l’équipe PowerPoint travaille sur la génération de slides et de visuels.
L’intégration de Microsoft 365 Copilot dans Excel est donc dépendante de la division Excel au
Pourquoi ce retard de Copilot sur Excel ?
Les modèles de langage (LLMs) comme GPT sont conçus pour comprendre et générer du texte linéaire. Word et PowerPoint s’appuient sur des blocs de texte ou des structures visuelles faciles à interpréter. En revanche, Excel manipule :
Des tableaux
Des formules
Des relations entre cellules
Des modèles financiers ou statistiques
Cette complexité a rendu l’intégration de Copilot plus délicate, nécessitant des avancées spécifiques en compréhension tabulaire et en raisonnement mathématique.
Ce n’est que récemment que Microsoft a commencé à combler ce retard, en introduisant des fonctionnalités plus avancées dans Excel, comme les assistants contextuels via un clic droit, ou tout récemment la fameuse fonction COPILOT() que nous verrons plus loin dans cet article.
Que peut-on faire déjà avec Microsoft 365 Copilot dans Excel ?
Depuis plusieurs mois déjà, Copilot permet d’interroger les données en langage naturel, de générer des formules, de créer des graphiques, et même de détecter des tendances ou des anomalies.
De nombreuses vidéos détaillant différents exemples fleurissent déjà et depuis un peu plus d’un an sur Internet :
Ou encore :
Petit Copilot vs Grand Copilot ?
Dans Excel, comme dans la majorité des outils Microsoft 365, Copilot se manifeste sous plusieurs formes complémentaires qui répondent à des usages distincts :
Le premier, situé dans le bandeau en haut de l’interface, agit comme un assistant global. Il permet de poser des questions en langage naturel sur l’ensemble du fichier, d’analyser des tendances, de générer des formules ou des graphiques, et d’interagir avec les données de manière transversale.
C’est l’outil idéal pour une vue d’ensemble ou pour automatiser des tâches complexes.
Le second Copilot, accessible via le clic droit sur une cellule ou une sélection, est plus contextuel. Il propose des actions ciblées comme expliquer une formule, reformater une plage de données, ou suggérer des opérations spécifiques sur les valeurs sélectionnées.
Ce Copilot “local” est pensé pour accélérer les manipulations ponctuelles, là où le Copilot “global” facilite la prise de recul et l’analyse stratégique.
Passons maintenant à quelques exemples de prompts simples sur une feuille Excel contenant des données fictives.
Que peut-on prompter avec le Copilot d’Excel ?
A peu près ce que l’on veut ! Mais rien ne dit que Copilot va satisfaire toutes vos demandes…
Analyse de données
Quels sont les produits les plus vendus ce trimestre ?
Y a-t-il des anomalies dans les ventes mensuelles ?
Fais-moi un résumé des performances par région
Création de visualisations
Crée un graphique comparant les ventes de janvier à mars
Montre l’évolution des coûts fixes sur les 12 derniers mois
Génère un tableau croisé dynamique des ventes par catégorie
Formules et calculs
Écris une formule pour calculer la marge bénéficiaire
Explique cette formule : =SI(ET(A2>100;B2<50);\OK\;\NOK)
Calcule la moyenne des ventes par trimestre
Voici d’ailleurs quelques exemples de petits prompts réalisés sur une feuille Excel fictive afin de vous donner quelques idées.
Changez le format des nombres de la colonne F en format monétaire (€)
Ajoutez une colonne « Date de Fin » qui calcule automatiquement la date de fin en fonction de la colonne B sur laquelle on ajoute 15 mois
Supprimez la colonne K du tableau
Créez une nouvelle colonne appelée « Marge Directe » et calcule-lui une marge de 5% sur la colonne G.
Appliquez une mise en forme conditionnelle à la colonne « Marge Directe » pour afficher en rouge les valeurs entre 0 et 20 et en orange les valeurs entre 21 et 49
Triez la colonne de marge en ordre décroissant
Ajoutez une colonne avec une fonction RECHERCHEV pour récupérer la région depuis l’onglet Beta
Filtrez la colonne « Statut Vente » pour afficher uniquement les Echoué et En attente
Appliquez une mise en forme conditionnelle pour mettre en gras les clients dont le nom contient le chiffre 1
Cachez toutes les lignes dont le code postal est un nombre impair
Cela n’a pas marché 😥.
Générez un graphique pertinent sur les tendances via l’outil Analyse de données
Créez un tableau croisé dynamique avec en colonne « Ville » et en ligne les « Produit » en filtrant sur les lignes dont la vente est sur le mois d’octobre pour afficher le total des ventes
Cela n’a pas marché malgré plusieurs essais 😥.
Intéressons-nous maintenant aux dernières avancées proposées par Microsoft, dont la toute nouvelle fonction COPILOT().
Qu’est-ce que la fonction COPILOT() ?
La fonction COPILOT() fonctionne comme une formule Excel classique. Elle permet d’envoyer un prompt en langage naturel à Copilot, tout en lui fournissant des données contextuelles depuis la feuille Excel. Elle retourne en résultat une réponse générée par l’IA, sans passer par des macros ou scripts externe.
Voici la syntaxe à adopter :
=COPILOT(prompt, [contexte1], [contexte2], ...)
Voici un exemple de cette syntaxe :
=COPILOT("Classifie ces commentaires par sentiment",A2:A20)
Deux remarques intéressantes :
Il est actuellement possible de la combiner avec d’autres fonctions Excel (IF, SWITCH, LAMBDA, etc.)
Actualisation automatique : Le résultat se met à jour si les données référencées changent, comme une formule classique d’Excel.
Comment avoir la commande COPILOT() ?
Certaines limitations sont actuellement en place sur la fonction COPILOT(), encore en préversion :
Elle est disponible uniquement pour les clients commerciaux avec une licence Microsoft 365 Copilot
Elle ne fonctionne donc pas avec les abonnements Personnel ou Famille
Elle est limitée à 100 appels toutes les 10 minutes
Elle ne peut pas accéder à des données externes (web, autres fichiers)
Comment peut-on activer la fonction COPILOT() ?
A l’heure où ces lignes sont écrites, j’ai pu tester la fonction COPILOT() sur l’application Desktop d’Excel, simplement en changeant le canal de mise à jour de mes applications Microsoft 365.
Pour connaître le canal de mise à jour actuellement en place sur votre poste, ouvrez Excel, puis cliquez sur le menu suivant :
L’information du canal de mise à jour de vos applications Microsoft 365 doit s’afficher ici :
Pour basculer sur le canal de mise à jour Beta, ouvrez le Terminal Windows en mode administrateur :
Exécutez la commande suivante afin de forcer Office à passer sur le canal de mise à jour Beta, aussi appelé Insider Fast. C’est le canal le plus avancé, destiné aux tests des fonctionnalités expérimentales avant leur déploiement public :
J’ai pris l’exemple classique d’une liste de codes postaux pour laquelle je souhaite retrouver le nom de la ville. J’utilise donc le prompt suivant :
=COPILOT("retrouve la ville en se basant sur le code postal français", A2)
Le système marche bien, mais montre rapidement une limite :
Je décide donc de tester la commande COPILOT() afin d’harmoniser mes valeurs :
=COPILOT("si valeur fait seulement 4 chiffres de long, rajoute un zéro devant, sinon laisse la valeur ", A2)
Cela semble très prometteur :
Enfin, je combine le tout pour retrouver le nom des villes quelle que soit la longueur du code postal :
=COPILOT("retrouve la ville en se basant sur le code postal francais", COPILOT("si valeur fait seulement 4 chiffres de long, rajoute un zéro devant, sinon laisse la valeur ",A2))
Malheureusement, plusieurs limites de la fonction COPILOT(), toujours en préversion, finissent par être atteintes :
Copilot effectue plusieurs erreurs sur le traitement de la donnée
Copilot a exécuté trop de requêtes, et me demande d’attendre pour continuer :
Mais, dans d’autres cas de création de contenu, les choses se passent un peu mieux :
Toujours envie de voir d’autres tests ?
J’ai trouvé cette excellente vidéo, réalisée par Elliott Pierret et disponible sur sa chaîne, qui nous montre justement, au moyen de petits exemples, comment bien comprendre le mécanisme de COPILOT(), mais aussi de pouvoir combiner toujours plus de prompts !
Conclusion
Avec la fonction =COPILOT(), Excel franchit enfin une étape décisive dans l’intégration de l’IA au cœur des feuilles de calcul. Là où auparavant Copilot n’était qu’un assistant “au-dessus” d’Excel, il devient désormais une fonction native, au même titre que RECHERCHEV ou SOMME.
Si vous travaillez déjà avec Microsoft 365 Copilot et que vous êtes prêts à basculer sur le canal Beta, je vous encourage à tester =COPILOT() dès maintenant. Vous verrez par vous-même comment il change la manière d’analyser et d’exploiter vos données.
Et comme toujours, n’hésitez pas à partager vos propres retours, astuces et scénarios d’usage dans les commentaires !
Le cloud est devenu le quotidien pour un grand nombre d’entreprises, mais les sites on-premise gardent encore une belle part des infrastructures et du stockage de données. Les principales IA ont compris cela, et elles proposent différents moyens de connecter ces données stockées on-premise à elles, afin ces informations soient elles-aussi indexées dans les mêmes outils pour une meilleure expérience utilisateur.
Le connecteur Partage de fichiers Microsoft Graph permet aux utilisateurs de votre organization de rechercher des partages de fichiers Windows locaux.
Pour notre démonstration, Microsoft a mis à disposition 3 documentations relatives à la mise en place de l’agent on-premise pour un serveur de fichiers local :
Rappel : Seul le contenu texte sera indexé et les fichiers supérieurs à 100 Mo seront ignorés.
Existe-t-il une configuration recommandée pour installer l’agent on-premise ?
Microsoft recommande d’installer l’agent on-premise sur une machine ou un poste ayant les caractéristiques suivantes :
Windows 10, Windows Server 2016 R2 et versions ultérieures
8 cœurs, 3 GHz
16 Go de RAM, 2 Go d’espace disque
Accès réseau à la source de données et à Internet via 443
Afin de bien comprendre le fonctionnement de l’agent on-premise sur un serveur partage de fichiers local vers Copilot pour Microsoft 365, je vous propose de réaliser ce petit exercice :
Avant d’installation le connecteur sur le serveur on-premise, faisons un premier de test de prompt à Copilot pour évaluer les réponses obtenues.
Etape I – Premier test Copilot sans connecteur :
Pour cela, ouvrez votre navigateur internet sur la page web de Copilot en mode Work :
Saisissez le prompt suivant :
cherche un document parlant de associez fslogix avec azure ad
Copilot vous informe qu’il trouve bien des documents sur SharePoint ou Teams, mais aucun document stocké depuis un serveur de fichiers local.
Afin de pouvoir tester ce connecteur, il m’est nécessaire de créer une machine virtuelle.
Etape II – Préparation du serveur de fichiers local :
Afin de faciliter la démonstration, j’ai donc créé la machine virtuelle suivante sur Azure :
Cette machine virtuelle fonctionne sous Windows Server et est jointe à un domaine Active Directory. De plus, elle se trouve sur le même réseau que le Cloud PC Windows 365 contenant les outils 365 et la licence Copilot pour Microsoft 365.
Important : La liaison réseau directe sera nécessaire pour ouvrir le document indexé et proposé dans les résultats de Copilot.
J’ai également déployé le service Azure Bastion pour m’y connecter plus facilement en RDP :
Commençons par la préparation de notre tenant à gérer les authentification de notre connecteur à Microsoft 365 à l’API Microsoft Graph.
Etape III – Création d’une Inscription d’application Entra :
Rendez-vous sur la page du portail Azure disponible juste ici, puis ouvrez le service Microsoft Entra ID :
Dans le menu Inscriptions d’applications, cliquez-ici pour créer une nouvelle Inscription :
Nommez votre application, puis cliquez sur Inscrire :
Cliquez sur le menu Certificats et secrets, puis ajoutez un nouveau secret client comme ceci :
Donnez-lui une description, puis cliquez sur Ajouter :
Copiez la valeur de votre secret. Ce dernier sera utilisé par votre connecteur on-premise afin qu’il s’authentifie automatiquement :
Dans le menu des Permissions API, cliquez-ici pour ajouter des permissions supplémentaires :
Choisissez l’API Microsoft Graph :
Cliquez sur Permissions d’application :
Recherchez et cochez les 3 permissions suivantes en utilisant la barre de recherche, puis cliquez sur Ajouter les permissions :
ExternalConnection
ExternalConnection.ReadWrite.OwnedBy
ExternalItem
ExternalItem.ReadWrite.OwnedBy
Directory
Directory.Read.All
Enfin, cliquez sur le bouton suivant afin d’appliquer ces permissions au niveau du tenant :
Confirmez votre choix en cliquant sur Oui :
Copiez également l’ID de votre application pour la configuration de l’agent on-premise :
La configuration du côté du tenant est en partie terminée. Nous allons maintenant nous intéresser l’installation de l’Agent on-premise.
Etape IV – Installation de l’agent on-premise :
Avant de de configurer l’agent on-premise installé sur votre serveur de fichiers local, il est nécessaire de dispose d’un rôle RBAC spécifique sur Entra ID :
Sur votre serveur de fichiers, ouvrez une session à distance avec un compte administrateur via le service Azure Bastion :
Sur votre serveur de fichiers, préparez une arborescence partagée sur le réseau et contenant des fichiers de données à indexer :
Avant d’installer l’agent on-premise, il est nécessaire de disposer au minimum de .NET Core Desktop Runtime en version 7.0.
Continuez en téléchargeant l’agent on-premise depuis cette page :
Cliquez-ici pour commencer le téléchargement, puis lancez l’installation :
Cliquez sur Suivant :
Acceptez les conditions, puis cliquez sur Suivant :
Cliquez sur Installer :
Validez en cliquant sur Oui sur les différents messages d’avertissement Windows :
L’installation est finie, cliquez sur Terminer :
Le configurateur de l’agent on-premise s’ouvre automatiquement, cliquez-ici pour associez ce dernier à votre tenant Microsoft :
Nommez cet agent on-premise, reprenez les informations récupérées de l’inscription d’application créée précédemment, puis cliquez sur Enregistrer :
Attendez quelques minutes la finalisation de la configuration de l’agent on-premise :
Une fois la configuration terminée, cliquez sur Fermer :
La configuration sur le serveur de fichiers local est maintenant terminée, nous allons mettre en place la liaison avec 365 depuis la console d’administration 365 dédiée : Recherche et intelligence.
Etape V – Configuration de la source de données 365 :
Sélectionnez le Partage de fichiers, puis cliquez sur Suivant :
Nommez votre connexion ainsi que les informations visibles pour l’utilisateur Copilot, puis cliquez ici :
Reprenez les informations liées au partage de fichier en y incluant l’agent on-premise ainsi que les identifiants Windows de votre domaine, testez la bonne connexion, puis cliquez-ici :
Regardez les choix possibles, puis cliquez-ici :
Regardez les choix possibles, puis cliquez-ici :
Regardez les choix possibles, puis cliquez-ici :
Déterminez les droits d’exploitation des fichiers stockées sur votre partage local, puis cliquez-ici :
Regardez les choix possibles, puis cliquez-ici :
Regardez les choix possibles, puis cliquez-ici :
Définissez le fuseau horaire adéquat et la fréquence de synchronisation, puis cliquez-ici :
Enfin cliquez sur Publier :
Cliquez sur Fermez :
Attendez quelques minutes afin que le connecteur soit entièrement publié, que la première synchronisation soit finie et que des premiers documents soient indexés :
Votre configuration est enfin terminée. Passez à la suite pour constater d’éventuels changements.
Etape VI – Second test Copilot avec connecteur :
Sur votre utilisateur ayant la licence Copilot pour Microsoft 365, retournez sur la page de Copilot en mode Work en ayant toujours aucun plugin d’actif :
Saisissez à nouveau le prompt suivant :
cherche un document parlant de associez fslogix avec azure ad
Constatez l’apparition d’un résultat avec une ou plusieurs références de provenant de notre connecteur en relation avec l’agent installé sur le serveur de fichiers local :
De mon côté, je n’ai pas été en mesure de cliquer directement sur la source et d’obtenir automatiquement le fichiers attendu directement depuis la console Copilot.
Pourtant, en copiant l’URL de la source Copilot, le fichier est bien accessible et est téléchargeable :
Je cherche toujours pourquoi…
Edit au 28/01/25 :
Le clic depuis la source affichée par Copilot marche maintenant !
Choisissez par exemple d’ouvrir votre fichier via Office :
Confirmez votre choix :
Word s’ouvre bien :
Etape VII – Test depuis Microsoft Search :
Malgré cela, j’ai souhaité refaire le même test depuis la barre de recherche Microsoft Search située sur la page d’Office :
Saisissez les mots clefs suivants :
associez fslogix avec azure ad
Le même résultat apparaît alors, cliquez sur le nom du fichier proposé par Microsoft Search :
Acceptez le risque en cliquant sur Oui :
Constatez la bonne ouverture du fichier depuis la source locale en lecture seule :
Conclusion
La mise en place de l’agent on-premise dédié au partage de fichiers pour Copilot pour Microsoft 365 est assez facile à mettre en place et fonctionne plutôt bien.
Grâce à Microsoft Graph, Microsoft propose à tous un très grand nombre de possibilités pour créer les liaisons vers Copilot selon vos exigences et vos besoins :
J’ai reçu un mail il y a quelques jours de la part de Microsoft (oui oui, seulement un 🤣) m’invitant tester par moi-même un premier connecteur Copilot pour Microsoft 365, en suivant simplement un pas à pas technique. N’ayant pas d’expérience en .NET, je me suis dit … pourquoi pas ! Je vous propose de le réaliser ensemble pour que vous puissiez vous-même reproduire cet exercice sur votre tenant Copilot.
Dans cet article, nous reprendrons brièvement quelques concepts et nous testerons nous-même de créer un connecteur Microsoft Graph personnalisé afin d’enrichir les résultats Copilot dans Microsoft 365.
Voici encore un rappel des articles écrits autour des solutions Copilot de Microsoft :
Les connecteurs Microsoft Graph vous permettent d’ingérer vos données métier non structurées dans Microsoft Graph, afin que Copilot pour Microsoft 365 puissent raisonner sur l’intégralité du contenu de votre entreprise. Le contenu ingéré via les connecteurs Graph est ajouté à Microsoft Graph ; cela déverrouille la compréhension sémantique des invites de vos utilisateurs dans Copilot pour Microsoft 365.
Quel est l’impact d’un connecteur dans Copilot pour 365 ?
L’impact de connecteur dans les résultats Copilot peut changer la donne dans les résultats de recherche documentaire car il va fouiner en dehors de Microsoft 365.
Voici un exemple montrant des résultats avec des références externes à Microsoft 365, améliorant donc l’expérience de recherche de l’utilisateur Copilot :
Voici également une courte vidéo montrant un peu plus à ce sujet :
Peut-on gérer les droits d’accès aux données remontées via un connecteur ?
Oui, ce qui est stocké en dehors de Microsoft 365 reste accessible selon une configuration ACL de votre choix. Les documents pourraient alors être visibles par :
Tous les membres de votre organisation
Un ou des groupes 365
Un ou des utilisateurs 365
Important : Les autorisations d’accès au contenu externe sont directement stockées dans le système externe.
Existe-t-il des connecteurs déjà disponibles sur étagères ?
Oui, Microsoft propose déjà un site web référençant des connecteurs de plusieurs grands éditeurs :
Quelles sont les sources de données possibles via un Connecteur ?
Microsoft a déjà créé plusieurs connecteurs dont voici certains exemples de source de données :
La réponse est encore oui. Dans l’objectif de vous aider à tester Copilot avec un connecteur Microsoft Graph personnalisé, Microsoft a mis à disposition la documentation suivante.
Grâce à celle-ci, vous pouvez facilement tester intégration du contenu externe à Copilot for Microsoft 365 à l’aide de connecteurs Microsoft Graph construits avec .NET.
Dans cet exercice Microsoft, les tâches que nous allons réaliser seront donc les suivantes :
Une fois l’installeur téléchargé, exécutez celui-ci
Acceptez les conditions d’utilisation, puis cliquez sur Suivant :
Définissez le répertoire d’installation, puis cliquez sur Suivant :
Cliquez sur Suivant :
Cliquez sur Suivant :
Cliquez sur Installer :
Attendez 1 minute que l’installation de Visual Studio Code se termine :
Cliquez sur Terminer :
Une fois dans Visual Studio Code, allez dans le menu Extensions, puis installez l’extension simplement nommée C# :
Retournez sur votre navigateur internet afin de télécharger la version 8.0.1 du SDK .NET :
Une fois l’installation téléchargée, exécutez celle-ci :
Cliquez sur Installer :
Confirmez l’action de sécurité Windows en cliquant sur Oui :
Attendez 1 minute que l’installation de .NET se termine :
Cliquez sur Fermer :
Redémarrer votre poste Windows afin de prendre en compte la nouvelle version .NET :
Notre poste est maintenant prêt pour la création d’un connecteur Microsoft Graph personnalisé.
Nous allons commencer par la préparation de notre tenant à gérer les authentification de notre connecteur à Microsoft 365 à l’API de Microsoft Graph.
Etape III – Création d’une Inscription d’applicationEntra :
Rendez-vous sur la page du portail Azure disponible juste ici, puis ouvrez le service Microsoft Entra ID :
Dans le menu Inscriptions d’applications, cliquez-ici pour créer une nouvelle Inscription :
Nommez votre application, puis cliquez sur Inscrire :
Attendez quelques secondes la notification suivante :
Cliquez sur le menu Certificats et secrets, puis ajoutez un nouveau secret client comme ceci :
Nommez-le, puis cliquez sur Ajouter :
Copiez la valeur de votre secret. Ce dernier sera utilisé par votre connecteur Microsoft Graph afin qu’il s’authentifie automatiquement :
Dans le menu des Permissions API, cliquez-ici pour ajouter des permissions supplémentaires :
Choisissez l’API Microsoft Graph :
Cliquez sur Permissions d’application :
Recherchez et cochez les 2 permissions suivantes en utilisant la barre de recherche, puis cliquez sur Ajouter les permissions :
ExternalConnection
ExternalConnection.ReadWrite.OwnedBy
ExternalItem
ExternalItem.ReadWrite.OwnedBy
Enfin, cliquez sur le bouton suivant afin d’appliquer ces permissions au niveau du tenant :
Confirmez votre choix en cliquant sur Oui :
Leur statut s’en retrouve alors changé comme ceci :
La configuration du côté du tenant est en partie terminée. Nous allons maintenant nous intéresser l’écriture du code en .NET de notre connecteur Microsoft Graph.
Etape IV – Création du connecteur Microsoft Graph personnalisé :
Dans l’explorateur Windows, créez un dossier pour y stocker le codes et les données de votre futur connecteur Microsoft Graph :
Retournez dans Visual Studio Code, puis cliquez ici pour vous positionnez sur ce nouveau répertoire :
Cliquez sur Oui :
Dans la console située en bas de votre écran, vérifiez le bon positionnement de votre dossier, puis lancez la commande suivante pour créer une nouvelle console dédiée à votre application .NET :
dotnet new console
Notez l’apparition de fichiers suivants dans l’explorateur Windows :
Ajoutez la bibliothèque suivante pour s’authentifier auprès des services Microsoft 365 :
dotnet add package Azure.Identity
Ajoutez la bibliothèque cliente suivante pour communiquer à l’API Microsoft Graph :
dotnet add package Microsoft.Graph
Ajoutez la bibliothèque suivante pour gérer les secrets :
Afin de stocker les secrets de notre application, lancez la commande suivante :
dotnet user-secrets init
Conservez les 3 informations de votre Inscription d’application pour vous authentifier automatiquement auprès de Microsoft 365 :
ID de l’application
Valeur du secret
ID du tenant
Saisissez les commandes suivantes pour les stocker de manière sécurisée en remplaçant les 3 valeurs en gras par celles récupérées juste avant :
dotnet user-secrets set "EntraId:ClientId" "[application id]"
dotnet user-secrets set "EntraId:ClientSecret" "[secret value]"
dotnet user-secrets set "EntraId:TenantId" "[tenant id]"
Continuons la configuration par la connexion entre le connecteur personnalisé et l’API Microsoft API.
Etape V – Configuration de la connexion avec l’API Microsoft Graph :
Le premier fichier va être utile à gérer les informations de la connexion entre le connecteur personnalisé et l’API Microsoft Graph.
Dans Visual Studio Code, créez un premier fichier texte en cliquant juste ici :
Choisissez le type de fichier texte :
Collez le code suivant dans votre fichier, puis sauvegardez-le via la commande clavier Ctrl Shift+S avec le nom GraphService.cs :
using Azure.Identity;
using Microsoft.Graph;
using Microsoft.Extensions.Configuration;
class GraphService
{
static GraphServiceClient? _client;
public static GraphServiceClient Client
{
get
{
if (_client is null)
{
var builder = new ConfigurationBuilder(). AddUserSecrets<GraphService>();
var config = builder.Build();
var clientId = config["EntraId:ClientId"];
var clientSecret = config["EntraId:ClientSecret"];
var tenantId = config["EntraId:TenantId"];
var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
_client = new GraphServiceClient(credential);
}
return _client;
}
}
}
Le second fichier contient la connexion externe elle-même avec Microsoft 365 et les schémas de données envoyées à Microsoft 365.
Créer à nouveau un fichier texte, collez le code suivant dans votre fichier, puis sauvegardez-le via la commande clavier Ctrl Shift+S avec le nom ConnectionConfiguration.cs :
using Microsoft.Graph.Models.ExternalConnectors;
static class ConnectionConfiguration
{
public static ExternalConnection ExternalConnection
{
get
{
return new ExternalConnection
{
Id = "msgraphdocs",
Name = "Microsoft Graph documentation",
Description = "Documentation for Microsoft Graph API which explains what Microsoft Graph is and how to use it."
};
}
}
public static Schema Schema
{
get
{
return new Schema
{
BaseType = "microsoft.graph.externalItem",
Properties = new()
{
new Property
{
Name = "title",
Type = PropertyType.String,
IsQueryable = true,
IsSearchable = true,
IsRetrievable = true,
Labels = new() { Label.Title }
},
new Property
{
Name = "description",
Type = PropertyType.String,
IsQueryable = true,
IsSearchable = true,
IsRetrievable = true
},
new Property
{
Name = "iconUrl",
Type = PropertyType.String,
IsRetrievable = true,
Labels = new() { Label.IconUrl }
},
new Property
{
Name = "url",
Type = PropertyType.String,
IsRetrievable = true,
Labels = new() { Label.Url }
}
}
};
}
}
}
Créer un troisième fichier texte contant les demandes d’établissement de connexion entre le connecteur personnalisé et l’API de Microsoft Graph.
Collez le code suivant dans votre fichier, puis sauvegardez-le via la commande clavier Ctrl Shift+S avec le nom ConnectionService.cs :
Enfin, ouvrez le fichier Program.cs créé automatiquement dans votre dossier afin de signaler à notre l’application .NET de créer la connexion et son schéma.
Pour ce faire, remplacez le code de départ par celui-ci, puis sauvegardez-le via la commande clavier Ctrl Shift+S :
using System.CommandLine;
var provisionConnectionCommand = new Command("provision-connection", "Provisions external connection");
provisionConnectionCommand.SetHandler(ConnectionService. ProvisionConnection);
var rootCommand = new RootCommand();
rootCommand.AddCommand(provisionConnectionCommand);
Environment.Exit(await rootCommand.InvokeAsync(args));
Un premier test de création de connexion vers Microsoft 365 via l’API Microsoft Graph depuis notre connecteur personnalisé est déjà possible.
Etape VI – Test de connection:
Pour cela, utilisez la commande .NET suivante pour construire votre projet :
dotnet build
Démarrez l’application en exécutant la commande suivante, puis attendez :
Continuez d’attendre la construction complète de la connexion :
Retournez sur cette même page afin de constater le changement du status de la connexion :
Nous venons de créer une connexion externe afin d’indexer nos futurs documents à venir dans Microsoft 365.
La prochaine étape consiste justement à importer de la donnée afin d’alimenter les index de Microsoft 365.
Etape VII – Configuration de l’import de contenu externe :
Un connecteur Microsoft Graph se connecte à un système externe, exporte son contenu et l’importe dans Microsoft 365. Au cours de ce processus, un connecteur graphique transforme le contenu exporté en éléments externes mettant en correspondance le contenu avec le schéma configuré sur la connexion externe.
Le contenu définit l’essentiel de l’élément qui est indexé pour la recherche en texte intégral. Pour un document ou une page wiki, il s’agit du corps du document. Pour un produit, il peut s’agir de sa description. Les connecteurs graphiques vous permettent d’importer du contenu au format texte ou HTML. Si vous importez du contenu binaire, comme des vidéos ou des images, vous devez obtenir leur représentation textuelle avant de les importer dans Microsoft 365.
Afin de simuler facilement du contenu, Microsoft met à disposition sur GitHub des fichiers de contenu pour notre connecteur Microsoft Graph personnalisé.
Téléchargez ce contenu via ce lien GitHub, puis débloquez la protection sur l’archive ZIP :
Décompressez le contenu de l’archive dans l’arborescence de votre projet comme ceci :
Depuis l’explorateur Windows, vérifiez que le contenu de votre projet se présente sous cette forme :
Vérifiez la présence de cette nouvelle arborescence dans Visual Studio Code :
Dans Visual Studio Code, ouvrez le seul fichier .csproj présent dans votre projet :
Ajoutez le code suivant dans le fichier .csproj avant la balise </Project> pour copier le contenu, puis sauvegardez-le via la commande clavier Ctrl Shift+S :
Afin d’importer les fichiers de contenu au format Markdown vers Microsoft 365, nous devons extraire les métadonnées et convertir les contenus au format texte :
Pour y arriver, nous avons besoin d’autres bibliothèques :
dotnet add package Markdig
dotnet add package YamlDotNet
Créez un quatrième fichier texte consacré à la gestion du contenu à importer. Celui-ci va réaliser les actions suivantes :
Configuration du traitement du format markdown
Extraction des contenus markdown et YAML
Transformation du contenu en éléments externes
Chargement des éléments externes dans Microsoft 365
Collez le code suivant dans votre fichier, puis sauvegardez-le via la commande clavier Ctrl Shift+S avec le nom ContentService.cs :
using YamlDotNet.Serialization;
using Microsoft.Graph.Models.ExternalConnectors;
using Markdig;
public interface IMarkdown
{
string? Markdown { get; set; }
}
class DocsArticle : IMarkdown
{
[YamlMember(Alias = "title")]
public string? Title { get; set; }
[YamlMember(Alias = "description")]
public string? Description { get; set; }
public string? Markdown { get; set; }
public string? Content { get; set; }
public string? RelativePath { get; set; }
}
static class ContentService
{
static IEnumerable<DocsArticle> Extract()
{
var docs = new List<DocsArticle>();
var contentFolder = "content";
var contentFolderPath = Path.Combine(Directory.GetCurrentDirectory(), contentFolder);
var files = Directory.GetFiles(contentFolder, "*.md", SearchOption. AllDirectories);
foreach (var file in files)
{
try
{
var contents = File.ReadAllText(file);
var doc = contents.GetContents<DocsArticle>();
doc.Content = Markdown.ToHtml(doc.Markdown ?? "");
doc.RelativePath = Path.GetRelativePath(contentFolderPath, file);
docs.Add(doc);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
return docs;
}
static IEnumerable<ExternalItem> Transform(IEnumerable<DocsArticle> content)
{
var baseUrl = new Uri("https://learn.microsoft.com/graph/");
return content.Select(a =>
{
var docId = GetDocId(a.RelativePath ?? "");
return new ExternalItem
{
Id = docId,
Properties = new()
{
AdditionalData = new Dictionary<string, object> {
{ "title", a.Title ?? "" },
{ "description", a.Description ?? "" },
{ "url", new Uri(baseUrl, a.RelativePath!.Replace(".md", "")).ToString() }
}
},
Content = new()
{
Value = a.Content ?? "",
Type = ExternalItemContentType.Html
},
Acl = new()
{
new()
{
Type = AclType.Everyone,
Value = "everyone",
AccessType = AccessType.Grant
}
}
};
});
}
static async Task Load(IEnumerable<ExternalItem> items)
{
foreach (var item in items)
{
Console.Write(string.Format("Loading item {0}...", item.Id));
try
{
await GraphService.Client.External
.Connections[Uri.EscapeDataString(ConnectionConfiguration. ExternalConnection.Id!)]
.Items[item.Id]
.PutAsync(item);
Console.WriteLine("DONE");
}
catch (Exception ex)
{
Console.WriteLine("ERROR");
Console.WriteLine(ex.Message);
}
}
}
public static async Task LoadContent()
{
var content = Extract();
var transformed = Transform(content);
await Load(transformed);
}
static string GetDocId(string relativePath)
{
var id = relativePath.Replace(Path.DirectorySeparatorChar.ToString(), "__").Replace(".md", "");
return id;
}
}
Créez un cinquième fichier texte consacré à l’extraction de contenu fichiers de contenu.
Collez le code suivant dans votre fichier, puis sauvegardez-le via la commande clavier Ctrl Shift+S avec le nom MarkdownExtensions.cs :
// from: https://khalidabuhakmeh.com/parse-markdown-front-matter-with-csharp
using Markdig;
using Markdig.Extensions.Yaml;
using Markdig.Syntax;
using YamlDotNet.Serialization;
public static class MarkdownExtensions
{
private static readonly IDeserializer YamlDeserializer =
new DeserializerBuilder()
.IgnoreUnmatchedProperties()
.Build();
private static readonly MarkdownPipeline Pipeline
= new MarkdownPipelineBuilder()
.UseYamlFrontMatter()
.Build();
public static T GetContents<T>(this string markdown) where T : IMarkdown, new()
{
var document = Markdown.Parse(markdown, Pipeline);
var block = document
.Descendants<YamlFrontMatterBlock>()
.FirstOrDefault();
if (block == null)
return new T { Markdown = markdown };
var yaml =
block
// this is not a mistake
// we have to call .Lines 2x
.Lines // StringLineGroup[]
.Lines // StringLine[]
.OrderByDescending(x => x.Line)
.Select(x => $"{x}\n")
.ToList()
.Select(x => x.Replace("---", string.Empty))
.Where(x => !string.IsNullOrWhiteSpace(x))
.Aggregate((s, agg) => agg + s);
var t = YamlDeserializer.Deserialize<T>(yaml);
t.Markdown = markdown.Substring(block.Span.End + 1);
return t;
}
}
Enfin, rouvrez à nouveau le fichier Program.cs modifié précédemment pour y ajouter la commande de chargement du contenu, puis sauvegardez-le via la commande clavier Ctrl Shift+S :
var loadContentCommand = new Command("load-content", "Loads content into the external connection");
loadContentCommand.SetHandler(ContentService.LoadContent);
rootCommand.AddCommand(loadContentCommand);
Etape VIII – Test d’importation :
Pour cela, utilisez la commande .NET suivante pour reconstruire à nouveau votre projet :
dotnet build
Commencez à charger le contenu vers Microsoft 365 en exécutant la commande suivante :
Notre environnement 365 contient maintenant l’accès à ces nouveaux documents. Il nous faut maintenant activer cette source dans 365 pour que Copilot puisse les ressortir en résultat.
Etape IX – Activation de la connexion externe dans Copilot :
Toujours sur cette même page d’administration 365, rendez-vous sur l’onglet Personnalisations, puis cliquez-ici pour activer votre connecteur dans les résultats :
Cochez les cases suivantes pour activer votre connecteur dans les résultats Copilot :
Etape X – Second test Copilot avec connecteur :
Sur votre utilisateur ayant la licence Copilot pour Microsoft 365, retournez sur la page de Copilot en mode Work en ayant toujours aucun plugin d’actif :
Saisissez à nouveau le prompt suivant :
please find a doc how to install a Microsoft Graph SDK
Constatez l’apparition d’un résultat avec une ou plusieurs références de type Externe :
Refaite la même opération en promptant sur le même sujet, puis cliquez sur la source externe :
Constatez l’ouverture d’un nouvel onglet pointant vers la documentation Microsoft Learn car le document dispose d’une URL pointant vers celle-ci :
Conclusion
Par les extensions, Microsoft nous montre que l’IA n’en est qu’à ses débuts dans les différents systèmes de données. Les entreprises ont tout y gagner à connecter une IA sur un ensemble de plusieurs systèmes d’informations.
Savoir que je peux interroger mes stocks de marchandises, et les modifier au besoin dans mes autres systèmes au moyen d’une IA connectée me fait espérer beaucoup d’innovations pour les années à venir :
Copilot pour Microsoft 365 fait maintenant partie de votre quotidien depuis plusieurs semaines ? Vous êtes donc un utilisateur régulier de Copilot dans plusieurs applications 365 ? En ressentez-vous déjà les premiers impacts sur votre productivité ?
Copilot pourrait-il en faire plus ?
Il est possible que vous soyez prêts à élargir le périmètre de votre Copilot ! Pour cela, prenez le temps de savoir comment Copilot pourrait exploiter d’autres données, et surtout comment il s’y prendrait.
Voici déjà quelques articles écrits sur ce blog autour des solutions Copilot de Microsoft :
Comme le rappelle Microsoft, Copilot est en soit l’IA générative actuellement la plus adaptée aux applications et données présentes dans Microsoft 365 :
En soi, Copilot pour Microsoft 365 est un outil de productivité puissant pour maintenir les utilisateurs dans le flux de leur travail dans les applications Microsoft 365. Il fournit aux utilisateurs des compétences générales telles que la compréhension, la synthèse, la prédiction, le rappel, la traduction et la génération de contenu.
Il s’appuie sur une base de référence de vos connaissances organisationnelles en indexant du contenu dans Microsoft Graph, tel que les e-mails, les conversations et les documents auxquels les utilisateurs ont l’autorisation d’accéder.
Copilot pour Microsoft 365 a été annoncé il y a longtemps, mais les choses évoluant très rapidement, prenez-le temps de regarder cette vidéo en français pour comprendre un peu mieux Copilot pour Microsoft 365 :
Je pense que ce schéma a déjà dû passer sous vos yeux à plusieurs reprises, mais il est facile à comprendre car il montre les avantages natifs d’un Copilot déjà connecté aux données de votre tenant.
De ce fait, et sans rien faire d’autres qu’acheter des licences Copilot pour Microsoft 365, le schéma technique de votre IA Copilot ressemble déjà à ça :
Alors, pourquoi en faire plus ?
Car l’IT d’une entreprise a de nombreuses vies et ne se limite pas aux outils 365 et aux données stockées dans SharePoint, OneDrive et autres.
Bien souvent, d’autres outils proviennent d’éditeurs tiers ou sont créés en internes pour des besoins métiers. La donnée peut donc se trouver en dehors de l’environnement 365 et possiblement sous des formats spécifiques.
Techniquement, Copilot pour Microsoft 365 ne peut donc pas s’inspirer de cette donnée inconnue ou même la proposer si un utilisateur lui en fait la demande via un prompt.
Mais une fois en place, votre Copilot pour Microsoft 365 dispose de plusieurs possibilités pour étendre son périmètre pour coller toujours plus aux besoins :
Pour vous faire une meilleure idée, voici un exemple assez parlant donné par Microsoft :
Suivi des problèmes pour l’équipe d’ingénierie : Supposons que votre équipe d’ingénierie s’appuie sur un logiciel de gestion de projet. Vous pouvez créer un outil personnalisé qui permet aux utilisateurs de surveiller les tickets ouverts. Un utilisateur peut demander des informations sur tous les problèmes qui lui sont attribués, et Copilot pour Microsoft 365 peut récupérer et présenter ces données en toute transparence à partir de votre plugin.
Imaginez alors d’autres données relatives aux ressources humaines, à la comptabilité, aux outils de productions industrielles ou encore à la finance ? Tout cela à la portée d’un simple prompt à Copilot ?
Oui mais, comment s’y prend-on ?
Rien n’est automatique, mais Microsoft vous propose déjà 2 approches pour y parvenir :
Plugin : Ideal pour les données structurées. Développez des plugins qui utilisent le schéma OpenAI pour ajouter des fonctionnalités personnalisées aux expériences Microsoft Copilot, en connectant les données de votre propre application à Microsoft Copilot. Les plugins permettent à une expérience Copilot d’interagir avec vos propres API, améliorant ainsi l’expérience pour effectuer un plus grand nombre d’actions. (Source : Microsoft)
Connecteur : Ideal pour les données non structurées. Le connecteur vous permet d’ingérer vos données métier non structurées dans Microsoft Graph, afin que Copilot pour Microsoft 365 puissent raisonner sur l’intégralité du contenu de votre entreprise. Le contenu ingéré via les connecteurs Graph est ajouté à Microsoft Graph ; cela déverrouille la compréhension sémantique des invites de vos utilisateurs dans Copilot pour Microsoft 365. (Source : Microsoft)
Mais alors, lequel choisir ?
Pour vous aider au mieux à comprendre, cette vidéo de Microsoft vous montre justement les impacts en situation réelle :
Pour vous aider à faire votre choix, Microsoft a également mis à disposition cet arbre de décision :
Attention, la structure de la donnée pourrait avoir elle aussi un impact sur votre choix :
Connecteurs
Plugins
Structure
Données non structurées ou aplatis
Données structurées
Volume de données
Jusqu’à 5 millions d’éléments par connexion
Convient pour les données à volume élevé (plus de 5 M)
Pertinence basée sur les activités de l’utilisateur. Détection sémantique du contenu sans activation d’un plugin. Activités (telles que l’affichage, la modification et le partage) avec aide sur le classement et la pertinence des résultats de recherche. Les données restent dans les limites de conformité
Détectabilité dans le Windows Store. Activation de l’expérience de marque. Meilleure expérience utilisateur avec les cartes adaptatives
Fonctionnalités de l’expérience développeur
Connexion rapide, schéma d’inscription et éléments d’index
Kit de ressources Teams pour Visual Studio & VS Code. Chargement de version test pour le développement & test
Fonctionnez également avec
IQ de contexte, Viva Topics, Recherche d’entreprise dans M365.com, SharePoint et Bing @ work. Recommandations de contenu dans les applications M365
Conversation Teams, Outlook
Existe-t-il des limitations techniques ?
En effet, les 2 options présentent des limitations techniques qui peuvent influer sur votre choix :
Connecteurs
Plugins
Limites
30 connecteurs maximum dans le locataire.
Volume de données et activité relativement faibles.
Visibilité de l’application pour les utilisateurs.
Maximum d’un million de plugins activés par utilisateur. Les plugins doivent être activés manuellement. Les données peuvent quitter la limite de conformité. Orchestrator ne peut raisonner qu’avec 10 plugins par invite. Les performances dépendent des développeurs & l’hébergement.
Limitations de l’expérience des développeurs
Aucun outil pour Visual Studio & VS Code. Aucun chargement indépendant. Vous devez rester synchronisé avec la liste de contrôle d’accès (ACL) manuellement si vous êtes dans des groupes externes en dehors du groupe Id Entra (Azure AD)
Courbe d’apprentissage abrupte. Plus de temps pour développer. Vous devez gérer les invites à paramètres multiples.
Important : il n’est pour l’instant pas possible d’acheter et de provisionner des licences acheter Copilot for Microsoft 365 sur un tenant créé à partir du Microsoft 365 Developer Program.
Et Copilot Studio dans tout ça ?
Pas de secret, Microsoft Copilot Studio s’appuie déjà sur du connu et reconnu ! 😎🙏
Un grand merci à Elliott Pierret pour cette vidéo très explicative sur comment jouer avec Copilot Studio pour créer son propre Copilot ou enrichir un Copilot existant grâce aux outils suivants :
Copilot Builder
Plugin Builder
Prompt Builder
Conclusion
Quelle que soit votre stratégie Copilot, l’objectif de cette IA générative est avant tout de simplifier la vie à vos utilisateurs. Beaucoup de tâches sans grande valeur ajoutée peuvent et ont également intérêt à être traitées par l’intelligence artificielle.
Je vous invite à regarder cette interview très intéressante de Jean-François Bérenguer faite par Seyfallah Tagrerout sur le potentiel de Copilot et les services IT possibles avec une valeur ajoutée pour les entreprises dans leur transition vers l’IA :
Accompagnement au prompt
Mise en place du gouvernance de la donnée (protection)
Personnalisation de Copilot (Connecteurs, plugins)
Attendez-vous très prochainement à voir plusieurs articles sur des essais pratiques de Copilot 😎
Microsoft vient de faire une grande annonce il y a seulement quelques heures : Copilot pour Microsoft 365 est maintenant accessible au grand public et à toutes les organisations. Quelles sont les contraintes ? Comment cela se passe au niveau du tenant ? Nous essaierons de répondre à plusieurs questions et testerons la mise en place d’une licence Copilot pour Microsoft 365.
Copilot pour Microsoft 365 n’est-il pas déjà accessible depuis le dernier Ignite en 2023 ?
C’est en partie vrai. L’une des grandes annonces du dernier Ignite portait sur la GA de Copilot pour Microsoft 365, uniquement pour les grandes entreprises. La commande minimale de Copilot pour Microsoft 365 était alors 300 sièges et nécessitait également des licences 365 Enterprise E3 ou E5.
A 30$ par utilisateur, la facture de Copilot pour Microsoft 365 pouvait paraitre assez salée.
Annoncé mi-décembre pour début janvier, Copilot pour Microsoft 365 était alors aussi accessible aux écoles disposants de licences Microsoft 365 A3 ou A5. Avec toujours la même règle : 30 dollars par utilisateur et par mois, et avec un minimum de 300 places par tenant.
Qu’est-ce que Microsoft a changé sur le modèle de licence ces dernières heures ?
N’acheter qu’une seule licence Copilot pour Microsoft 365 et non plus 300
Ne pas disposer obligatoirement de licences Microsoft 365 E3 ou E5
D’acheter des licences Copilot pour Microsoft 365 via le CSP
Mais il reste encore quelques exigences pour que les utilisateurs puissent profiter de Copilot pour Microsoft 365 :
Si < 299 utilisateurs (Business) : Disposer de licences Microsoft 365 Business Standard ou Premium pour les utilisateurs ayant Copilot pour Microsoft 365
Si >= 300 utilisateurs (Enterprise) : Disposer de licences Microsoft 365 Enterprise E3 ou E5 pour les utilisateurs ayant Copilot pour Microsoft 365
Le prix reste de 30$ par utilisateur et par mois
L’engagement minimum est d’une année pour les licences Copilot pour Microsoft 365
Qu’est-ce que Copilot pour Microsoft 365 ?
Afin de vous faire une meilleure idée, voici une très courte vidéo expliquant l’audacieux mélange entre une IA, les données provenant de 365 (ou d’ailleurs) et les outils que composent la suite 365 :
Un article parlant des multiples Copilots a d’ailleurs écrit sur ce blog juste ici. Enfin voici quelques liens utiles à propos de Microsoft Copilot for Microsoft 365 :
La mise en place de Copilot pour Microsoft 365 est assez facile, mais la préparation demande un peu plus de temps. En effet, Copilot pour Microsoft 365 est mesure de « piocher » dans les données de votre entreprise. Ces dernières doivent donc être accessibles, protégées et structurées.
La préparation du tenant va donc principalement porter sur les points suivants :
Préparez vos données et vérifiez que tous les contrôles de sécurité, de confidentialité et de conformité sont en place. Copilot hérite de vos autorisations et de vos politiques existantes, et le fait de s’assurer que celles-ci sont en place contribue à un déploiement transparent. Effectuez des vérifications d’accès … utilisez des étiquettes de sensibilité pour protéger les données importantes et validez les politiques de prévention des pertes de données, de conservation et de conformité.
Vérifiez l’état de préparation, mesurez l’adoption et l’impact grâce au tableau de bord Microsoft Copilot (préversion) dans Viva Insights ou PowerBi qui aide les organisations à maximiser la valeur de Copilot pour Microsoft 365.
Afin d’aller plus loin dans la démonstration, j’ai la possibilité d’acheter une licence Copilot pour Microsoft 365 sur un tenant de test afin de visualiser sa mise en place.
J’ai souhaité uniquement suivre les conditions requises dictées par Microsoft, accessibles depuis cette page.
Les tâches que nous allons réaliser seront donc les suivantes :
Dans mon environnement, je disposerai des licences suivantes sur mon utilisateur de test :
1x Microsoft 365 E5
1x Windows 365 Enterprise
1x Copilot pour Microsoft 365
J’ai donc choisi de tester Copilot pour Microsoft 365 sur un poste Windows 365 afin de disposer d’un poste de test entièrement consacré à ce dernier.
Etape I – Gestion des licences :
L’étape d’achat de Copilot n’est décrite ici. J’ai acheté une licence Copilot pour Microsoft 365 via le distributeur CSP TD SYNNEX. Pour rappel, cette licence est disponible en NCE et existe seulement en engagement annuel.
Quelques minutes après l’achat, la licence Copilot pour Microsoft 365 est bien visible sur mon tenant depuis cette page :
Avant d’assigner la licence Copilot pour Microsoft 365 à mon utilisateur de test, voici les licences déjà en place sur son compte 365 :
Continuons avec la mise en place du poste utilisateur de test via Windows 365.
Etape II – Machine de test Windows 365 :
Afin de créer un environnement dédié à Copilot pour Microsoft 365, j’ai provisionné un poste via Windows 365. Le provisionnement se fait via cette page de la console Intune.
Plusieurs articles ont déjà été écrits sur Windows 365 :
Dans mon cas, j’ai choisi la Mise à jour cloud. Connectez-vous à la console Microsoft 365 Apps admin center via cette page, puis activez la fonction Cloud comme ceci :
Attendez quelques minutes afin de voir apparaitre les menus suivants :
Sélectionnez les appareils à déplacer et le canal de mise à jour ciblé :
Rappel Microsoft : Jusqu’à 24 heures peuvent être nécessaires pour que le changement de canal soit effectué par l’appareil, en supposant que les appareils sont en ligne et peuvent se connecter au service.
Nous retournerons sur cette page dans 24 heures pour y constater d’éventuels changements.
Avant :
Après :
Etape V – Exigence d’identifiant Microsoft Entra :
Les utilisateurs doivent avoir des comptes d’ID Microsoft Entra (anciennement Azure Active Directory). Vous pouvez ajouter ou synchroniser des utilisateurs à l’aide de l’Assistant Intégration dans le Centre d’administration Microsoft 365.
Dans mon cas, mon utilisateur est déjà un utilisateur Cloud, et non synchronisé via Entra ID Connect :
Etape VI – Exigence Microsoft OneDrive :
Certaines fonctionnalités de Microsoft Copilot pour Microsoft 365, telles que la restauration de fichiers et la gestion OneDrive, nécessitent que les utilisateurs disposent d’un compte OneDrive. Vous pouvez utiliser le guide de configuration de OneDrive dans la Centre d’administration Microsoft 365 pour activer OneDrive pour vos utilisateurs.
Recherchez le guide concerné via la barre de recherche, puis cliquez dessus pour le démarrer :
Lisez les informations disponibles sur la protection OneDrive, puis cliquez sur Suivant :
Définissez la politique de partage externe à l’entreprise, puis cliquez sur Suivant :
Définissez l’OS cible, puis cliquez sur Suivant :
Choisissez si besoin une méthode de transfert des données, puis cliquez sur Suivant :
Modifiez si besoin les paramètres avancés, puis cliquez sur Suivant :
Préparez la communication à vos utilisateurs, puis cliquer sur Suivant :
Finalisez le guide concerné en cliquant ici :
Constatez le changement de statut du guide précédemment validé :
Par la suite, il sera important que le compte OneDrive des utilisateurs de Copilot pour Microsoft 365 soit déployé. Pour cela, aucune autre solution que de leur laisser ouvrir une première fois leur compte OneDrive :
Etape VII – Exigence Microsoft Outlook :
Microsoft Copilot pour Microsoft 365 fonctionne avec le nouvel Outlook (pour Windows et Mac), actuellement en préversion. Les utilisateurs peuvent basculer vers le nouvel Outlook en sélectionnant Essayer le nouvel Outlook dans leur client Outlook existant.
Vous pouvez utiliser le guide d’installation de Microsoft Teams dans le Centre d’administration Microsoft 365 pour configurer les paramètres populaires de Teams, notamment l’accès externe, l’accès invité, les autorisations de création d’équipe, etc. Copilot dans Teams est disponible sur Windows, Mac, web, Android et iOS.
Recherchez le guide concerné via la barre de recherche, puis cliquez dessus pour le démarrer :
Lisez les informations disponibles sur la configuration Teams, puis cliquez sur Suivant :
Lisez les informations disponibles sur la préparation de Teams, puis cliquez sur Suivant :
Modifiez si besoin la gouvernance et les polices Teams puis cliquez sur Suivant :
Ne pas oubliez d’activer la transcription Teams via cette page afin que Copilot puisse fonctionner en réunion :
Définissez les options Teams, comme par exemple l’accès invité, puis cliquez sur Suivant :
Personnalisez les créations d’équipes Teams, puis cliquez sur Suivant :
Créez si besoin des équipes Teams, puis cliquez sur Suivant :
Définissez les méthodes d’installation des clients Teams, puis cliquez sur Suivant :
Ajoutez si besoin des polices de protection d’application gérées sous Intune, puis cliquez sur Suivant :
Parcourez si besoin les méthodes de résolution de problèmes, puis cliquez sur Suivant :
Préparez la communication à vos utilisateurs, puis cliquer sur Suivant :
Lisez les documentations sur les fonctions annexes de Teams, puis cliquez sur Suivant :
Finalisez le guide concerné en cliquant ici :
Constatez le changement de statut du guide précédemment validé :
Note : Un test dans Teams nous montrera l’activation possible de Copilot via l’exploitation de la Transcription :
Etape IX – Exigence Microsoft Loop :
Pour utiliser Microsoft Copilot pour Microsoft 365 avec Microsoft Loop, la boucle doit être activée sur votre tenant. Microsoft détaille la procédure dans cet article.
Rendez-vous sur Microsoft 365 Apps admin center via la page suivante, puis cliquez sur Créer :
Définissez un nom à votre nouvelle police de configuration, puis cliquez sur Suivant :
Appliquez cette police à tous les utilisateurs du tenant, puis cliquez sur Suivant :
Configurez les 3 polices Loop suivantes, puis cliquez sur Suivant :
Vérifiez la configuration, puis cliquez sur Créer :
Attendez la fin de la création de la police de configuration :
Note : Un test dans Loop nous montrera la bonne activation du service pour notre utilisateur de test :
Etape X – Exigence Microsoft Whiteboard:
Pour utiliser Microsoft Copilot pour Microsoft 365 avec Microsoft Whiteboard, vous devez activer le tableau blanc pour votre tenant. Pour en savoir plus sur le Tableau blanc Microsoft, consultez Gérer l’accès à Microsoft Whiteboard pour votre organization.
Attendez que la nouvelle version soit entièrement téléchargée :
Confirmez la bascule en cliquant ici :
Cliquez sur Continuer :
Cliquez sur Passer :
Utilisez la fonction Copilot pour lui demander de générer un mail :
Observez le résultat, puis cliquez-ici pour l’affiner davantage :
Choisissez le ton et la longueur du mail que vous attendez de la part de Copilot, puis recliquez sur Générer :
Constatez les changements par rapport à la version précédente, puis cliquez sur Conserver :
Après une déconnexion reconnexion de l’utilisateur sur une application Microsoft 365 et un redémarrage de session Windows, le bouton Copilot a fait son apparition dans les différentes applications :
La génération de contenus via Copilot peut alors commencer :
Conclusion
La mise en place du service de Copilot pour Microsoft 365 est assez rapide en soit. Mais une grande importante doit être accordée à deux grands sujets :