En cette fin d’année, de petits Copilots nous entourent 🧑🎄 … tout comme la magie de Noël … ils sont partout ☃️ ! L’histoire de Microsoft Copilot avait démarré avec la préversion de GitHub Copilot annoncée en 2021. Mais l’année 2023 n’est pas en reste avec le lancement de Bing Chat en février, de DALL-E en mars, … et enfin la disponibilité de Microsoft 365 Copilot pour les entreprises à partir du 1er novembre dernier.
La question que tout le monde se pose : que pouvons avoir maintenant ?
Existe-t-il un ou plusieurs Copilot ?
Il existe pour plusieurs Copilot, mais le nombre n’est pas encore certains car l’information des projets Copilot chez Microsoft n’est pas partagée à 100%. Voici donc un tableau non exhaustif :
Et voici une autre présentation répartie cette fois par catégories d’emploi :
Le plus connu de tous est sans aucun doute Copilot pour Microsoft 365 :
Mais d’autres Copilot peuvent eux aussi apporter leurs bénéfices, comme dans certains domaines IT spécifiques :
Security Copilot est un produit de cybersécurité basé sur l’IA qui permet aux professionnels de la sécurité de réagir rapidement aux cybermenaces, de traiter les signaux à la vitesse de la machine et d’évaluer l’exposition aux risques en quelques minutes.
GitHub Copilot transforme l’expérience des développeurs. Soutenu par les leaders de l’IA, Copilot fournit une assistance contextualisée tout au long du cycle de vie du développement logiciel, de l’achèvement du code dans l’IDE aux explications de code dans GitHub et plus encore.
Microsoft Copilot for Azure, un compagnon IA qui vous aide à concevoir, exploiter, optimiser et dépanner votre infrastructure et vos services cloud. Copilot for Azure permet une compréhension et une gestion approfondies de tout ce qui se passe dans Azure, du nuage à la périphérie.
Le schéma ci-dessous circule beaucoup sur internet, et c’est normal car sa compréhension est très facile, et il explique assez fidèlement le fonctionnement de n’importe quel Copilot de Microsoft :
On retrouve ici les 3 grands piliers des Copilots de Microsoft :
Le Prompt : commande utilisateur pour à la fois pour demander, et recevoir les réponses de Copilot. L’utilisateur pose des questions à Copilot sur ce qu’il souhaite. La requête peut comporter 4 parties : l’objectif, le contexte, les attentes et la source.
l’API Microsoft Graph : Microsoft Graph comprend des informations sur les relations entre les utilisateurs, les activités et les données de votre organisation, telles que provenant des courriels, des chats, des documents et des réunions.
Le LLM pour Modèles de langage volumineux : Ces modèles de base utilisent l’IA générative (et plus précisément le Deep Learning) pour le traitement du langage naturel (NLP) et la génération de langage naturel (NLG).
Quel Copilot puis-je actuellement utiliser ?
Beaucoup de Copilot ont déjà été annoncés, mais peu sont entièrement ouverts à tous. Voici quelques exemples :
Microsoft 365 Copilot : actuellement disponible à l’achat (300 licences min)
Si vous n’êtes pas concerné par aucun des scénarios listés, il est malgré tout possible d’utiliser pour le moment Bing Chat et Bing Chat Entreprise.
Qu’est-ce que sont Bing Chat et Bing Chat Entreprise ?
Attention ! Depuis l’Ignite de 2023, Bing Chat et Bing Chat Enterprise ont été renommés et s’appelle simplement Copilot 🤣🤣.
La différence entre Bing Chat et Bing Chat Enterprise repose sur le fait de se connecter avec votre identifiant Entra ID :
Cela permet d’avoir l’assurance d’une protection commerciale des données, ce qui signifie que les données de chat ne sont pas sauvegardées, que Microsoft n’y a pas accès et que vos données ne sont pas utilisées pour former les modèles.
Accès à Copilot avec un compte Entra ID ayant une licence Microsoft 365 Copilot :
A noter également que j’ai essayé Copilot avec un compte Entra ID sur un tenant sans aucune licence Microsoft 365 :
Je me demande donc si Copilot (Anciennement Bing Chat Entreprise) n’est pas un produit présent uniquement dans certaines licences comme :
Microsoft 365 E3, E5
Business Premium et Business Standard
Microsoft 365 F3 (à partir de décembre).
Licence seule : $5 par mois
En regardant le détail d’une licence Microsoft E5, je le retrouve bien juste ici :
Enfin, Je me doute que beaucoup de personnes attendent avec impatience de pouvoir mettre la main sur une licence Copilot pour Microsoft 365. Mais 300 licences pour faire seulement du test, cela risque d’être très difficulté à justifier !
Une chose est pour l’instant certaine : le marché SMB n’est pas formellement inscrit dans la roadmap de Microsoft Copilot 365 😥.
Des ressources pour patienter ?
Pour compenser cette attente, voici différents liens utiles concernant Microsoft 365 Copilot 💪 :
Restez branché pour les prochains articles sur Copilot! La licence reçue sur mon compte va me permettre de tester Copilot sur différents outils afin de bien comprendre les impacts et les bénéfices au quotidien.
L’un comme pour l’autre, leur but est de vous plonger dans l’apprentissage de produits Microsoft mais aussi de nouvelles thématiques IT innovantes.
IBM, Google, Amazon, NVIDIA, DataRobot, H2O.ai, OpenAI, Clarifai … ou encore Microsoft sont sur l’IA depuis plusieurs années, alors … pourquoi pas vous/moi ?
J’ai justement décidé de profiter de cet été pour m’y intéresser afin de me faire ma propre expérience.
Quelques termes fréquemment employés « à toutes les sauces » :
Certains termes liés à l’IA sont souvent employés à tout va. Prenons en exemple ces 3 là pour mieux les comprendre :
Le Deep Learning, ou apprentissage profond, est un sous-ensemble du Machine Learning, ou apprentissage automatique, basé sur des réseaux neuronaux artificiels. Le processus d’apprentissage est qualifié de profond parce que la structure des réseaux neuronaux artificiels se compose de plusieurs couches d’entrée, de sortie et masquées.
Le Machine Learning est un sous-ensemble de l’intelligence artificielle utilisant des techniques (telles que le Deep Learning), qui permettent aux machines de tirer des enseignements de leur expérience pour améliorer la manière dont elles exécutent leurs tâches.
L’intelligence artificielle est une technique qui permet aux ordinateurs d’imiter l’intelligence humaine. Cette technique inclut donc le Machine Learning.
Sommes-nous vraiment face à une intelligence créative ou simplement générative ?
Bref vous l’aurez compris, l’IA est même capable de s’autojustifier elle-même 🤣.
Les IAs restent une formidable boite à outils qui peuvent nous faire gagner un temps précieux dans certaines tâches.
D’ailleurs, les secteurs où les IAs œuvrent déjà ne manquent pas : marketing, santé, administratif, transport, …
Blog : doit-on encore écrire des articles « à la main » ?
Avec l’arrivée des agents conversationnels comme ChatGPT, cela devient une question légitime.
Ecrire un article sur un sujet technique est un travail long, et cela avant même le début de son écriture.
Mais la rédaction d’articles repose sur de la créativité : le sujet, les arguments, les contre-arguments, les exemples et les démonstrations.
Comment une IA générative ( et non créative) pourrait écrire et documenter quelque chose qui n’existe pas encore ou est encore insuffisamment documenté dans sa base de données ?
Bref IAs, ou pas IAs, ce sujet reste passionnant 😉
Petite vidéo intéressante sur ChatGPT :
Par où commencer ?
Le contenu d’apprentissage sur les IA est déjà vaste et conséquent. Avant de partir sur Azure, il est important de commencer avec certaines bases sur l’IA.
J’ai beaucoup apprécié les vidéos faites par IBM, disponibles ici sur YouTube et dont en voici certaines :
Microsoft a mis également à disposition plusieurs parcours d’apprentissage liés à l’IA juste ici :
Enfin et même si le Machine Learning Challenge est maintenant terminé, il est encore possible de suivre son contenu sur Microsoft Learn par ce lien :
Peut-on tester l’IA avec Azure ?
C’est justement le but de ce premier article sur le sujet, tester ensemble un premier service d’IA disponible sur Azure. Comme bien souvent, je trouve très intéressant d’utiliser les exercices Azure liés aux certifications. Microsoft les met à disposition sur sa plate-forme GitHub.
Voici donc la liste des exercices créés par Microsoft et en relation avec la première certification dédiée à l’AI : AI-900 :
Aussi je vous propose dans cet article de réaliser un premier exercice appelé Explorer la détection d’objets :
Pour réaliser cet exercice proposé par Microsoft et basé sur une IA d’Azure, il vous faudra disposer de :
Un tenant Microsoft
Une souscription Azure valide
Etape I – Création de la ressource Azure Cognitive Services :
Nous allons utiliser ici un service central d’IA disponible sur Azure : Cognitive Services.
Mais pour la reconnaissance d’objets, nous aurions pu utiliser Custom Vision. En effet, beaucoup de services dédiés à un type d’IA sont également disponibles sous Azure.
Pour cela, rendez-vous dans le portail d’Azure et utilisez la barre de recherche :
Renseignez tous les champs suivants, puis lancez la validation Azure :
Une fois la validation Azure réussie, lancez la création des ressources puis attendez environ une minute :
Une fois le déploiement terminé, cliquez-ici pour voir votre Cognitive Services :
Le menu ci-dessous contient deux éléments importants : Clés et Point de terminaison de votre ressource Cognitive Services :
Gardez votre onglet Azure ouvert, rendez vous à la page suivante pour vous connectez au service Custom Vision, puis authentifiez avec votre compte Azure :
Acceptez les conditions d’utilisation de Custom Vision :
Cliquez-ici pour démarrer un nouveau projet Custom Vision :
Nommez projet en le configurant comme ceci, puis cliquez sur Créer :
Notre environnement IA est maintenant en place. Mais nous avons besoin de lui dire quoi faire (quoi identifier) pour que celui-ci soit à mesure de reproduire la tâche par la suite.
Etape II – Ajouts d’images étiquetées :
Pour que votre IA soit en mesure d’effectuer de la détection d’objet, elle a besoin d’être aidée lors de la phase d’identification.
En effet, l’identification IA repose avant tout sur un entrainement préalable.
Pour cela, il vous faut :
Télécharger des images contenant les classes que vous souhaitez que le modèle identifie.
Etiquetez des objets en délimitant les zones de chacun d’eux.
Une fois l’archive ZIP téléchargée, décompressez les fichiers JPG présents sur un dossier local :
Ajoutez les images d’entrainement en cliquant ici :
Validez l’envoi des 33 fichiers dans votre service Custom Vision en cliquant ici :
Attendez quelques minutes que le traitement d’envoi se termine :
Environ 2 minutes plus tard, fermez le traitement d’importation :
Cliquez sur la première image afin d’y rajoutez une ou plusieurs étiquettes Cycliste ou Piéton,selon les cas :
Sur chaque personne, choisissez le rectangle proposé par défaut ou dessinez-le avant de mettre l’étiquette appropriée (Cycliste / Piéton), puis cliquez ici pour passer sur l’image suivante :
Effectuez la même opération sur la totalité des photos téléversées (33) :
Une fois toutes les images étiquetées, retrouvez les deux classifications juste ici :
On a donné les informations de départ pour l’identification d’objets. Notre IA a maintenant besoin d’analyser les photos étiquetées pour comprendre les traits communs afin de créer la meilleure formulation possible.
Etape III – Entrainement de notre modèle d’IA :
Afin de familiariser notre IA aux photos étiquetées, Microsoft propose une fonction d’entrainement. A la différence de la phase de test qui suivra, cette étape permet de comprendre et formuler la détection et l’identification des objets.
Pour cela, cliquez sur Entrainer :
Sélectionnez l’option Formation rapide, puis cliquez sur Entrainer :
Attendez quelques minutes que le traitement se termine.
Pendant l’entrainement, il est possible de faire varier le curseur dédié au Seuil de probabilité. Comme son nom l’indique, le Seuil de probabilité correspond au minimum pour considérer la prédiction comme étant valide dans les calculs de Precision et de Recall :
A la fin du traitement, 3 indicateurs font leur apparition suite à l’entrainement :
Précision : Quelle est la proportion d’identifications positives réellement correctes ?
Recall : Quelle est la proportion de positifs réels qui a été identifiée correctement ?
mAP : Précision moyenne calculée comme la moyenne pondérée des précisions à chaque seuil
Notre modèle d’IA est maintenant entrainé. Un petit test s’impose avant sa publication afin d’être sûr que les systèmes fonctionnent bien.
Etape IV – Test rapide de notre modèle d’IA :
Avant de publier les API pour exploiter notre IA dans l’application, il est encore possible d’effectuer de test avec un ou plusieurs images entièrement nouvelles donc inconnues pour notre IA.
Pour cela, cliquez-ici :
Renseignez l’URL suivante, puis lancez le traitement d’analyse :
L’image de test s’affiche alors et encadre en rouge les cyclistes ou piétons identifiés dans votre image. Un score de probabilité est aussi calculé pour chaque objet identifié :
Fermez la fenêtre de test rapide. Il nous est maintenant possible de publier notre modèle de détection des cyclistes et des piétons.
La publication active et autorise l’utilisation de notre modèle via le couple URL / clef.
Etape V – Publication et test réel de notre modèle d’IA :
Cliquez sur Publier pour rendre accessible notre model d’IA via son URL :
Définissez la ressource Cognitive Services créée précédemment, puis cliquez sur Publier :
Quelques secondes plus tard, notre model d’IA est enfin publié, l’URL que nous allons utiliser se trouve juste ici :
Retournez sur le portail Azure, puis ouvrez Azure Cloud Shell :
Si cela n’était pas déjà le cas, Azure Cloud Shell a besoin d’un compte de stockage Azure.
Cliquez-ici pour configurer le compte de stockage Azure pour le Cloud Shell :
Renseignez les différents champs selon vos souhaits, puis cliquez sur Créer :
Environ une minute plus tard, le message suivant apparaît. Choisissez PowerShell :
Saisissez les deux commandes suivantes pour nettoyer l’Azure Cloud Shell, et télécharger depuis GitHub les scripts utilisés pour les exercices présents dans l’AI-900 :
Lancez la commande suivante pour ouvrir le script detect-objects.ps1 dans l’éditeur Code :
cd ai-900
code detect-objects.ps1
Le script suivant apparaît alors, nous allons devoir modifier deux variables :
Pour que le script utilise bien votre model publié, identifiez champs suivants situés en haut du script :
Retournez sur la page de Custom Vision afin de copier / coller vos deux valeurs :
Cela doit donner la chose suivante :
Ensuite, lancez les deux commandes claviers suivantes :
CTRL + S : pour sauvegarder le script detect-objects.ps1 modifié.
CTRL + Q : pour quitter l’éditeur Code.
L’éditeur Code doit se fermer, gardez la fenêtre d’Azure Cloud Shell encore ouverte :
Testons l’image suivante au travers de notre modèle d’IA :
Pour cela, lancez le script suivant depuis votre fenêtre Azure Cloud Shell :
./detect-objects.ps1 1
Constatez les résultats de probabilité calculé par votre modèle :
Effectuez à nouveau l’exercice avec cette seconde image :
Pour cela, lancez ce second script depuis votre fenêtre Azure Cloud Shell :
./detect-objects.ps1 2
Constatez à nouveau les résultats de probabilité calculé par votre modèle :
Bien évidemment, votre modèle d’IA est encore imprécis et nécessitera beaucoup plus d’images pour améliorer sa précision de classification et sa probabilité de détection.
Mais c’est déjà un bon début pour comprendre comment un service d’IA, disponible sur étagère, peut faire gagner un temps précieux dans la conception d’applications.
Conclusion
Je ne peux que vous encourage qu’à tester l’IA d’Azure au travers des autres exercices disponibles sur cette liste.
A mon sens, Azure Cognitives Services et Azure Machine Learning sont de formidables outils simples d’utilisation et vous donneront une meilleure compréhension des systèmes d’IA.
Enfin, n’oubliez pas de prendre le temps de regarder des vidéos, d’assister à des trainings et de lire des articles provenant de différentes sources pour vous faire une meilleure idée de toutes les IAs passées, présentes et futures 😎.