Le noyau sémantique, aussi connu sous le nom de Semantic Kernel, a été spécialement créé pour permettre aux concepteurs de logiciels d’intégrer facilement les services d’intelligence artificielle dans leurs applications déjà existantes. Pour cela, le noyau sémantique fournit une série de connecteurs qui simplifient l’ajout de modèles et de mémoires, offrant ainsi une sorte de « cerveau » simulé à l’application.
Il est disponible pour les langages C# et Python. Il est open source. Le moteur est encore jeune mais déjà très intéressant à utiliser. Il n’a pas encore les fonctionnalités d’un Langchain (pour Python) mais il va évoluer très rapidement.
Notre outil shellbots, en plus de Langchain, utilise cette librairie pour utiliser des données personnelles, des documents ou du code informatique avec les ia du marché pour générer du code, des services, des applications en lien avec le contexte du client. Exemple : Un client veut bâtir un moteur de recherche en langage naturel sur les données d’un ERP comme Dynamics 365 Business Central. Pour cela, nous ferons un miroir des données de l’ERP dans une base de données vectorielles pour ensuite la traiter avec Microsoft Kernel Semantic. On pourrait demander au moteur : « Donne moi le TOP 5 des vendeurs cette semaine avec leur chiffre d’affaire » en lien avec les données contenues dans l’application. Ou aussi obtenir une information dans l’ERP puis demander automatiquement une question à OpenAI ou Bing sur cet élément par exemple.
Par ailleurs, l’ajout de fonctionnalités à vos applications est rendu facile grâce aux plugins d’IA du noyau sémantique, qui vous donnent la capacité d’interagir avec le monde réel. Ces plugins sont constitués de déclencheurs et de fonctions natives qui peuvent répondre à certaines actions. En quelque sorte, ces plugins agissent comme le « corps » de votre application d’intelligence artificielle. On peut ainsi intégrer dans une application, la possibilité de poser des questions sur un fichier complet pdf par exemple ou sur une base de données vectorielle. Avec OpenAI et ChatGPT par exemple, il n’est pas possible d’intégrer des données personnelles mais grâce au noyau sémantique, on peut combiner les 2 pour créer des applications puissantes.
Grâce à l’extensibilité offerte par le noyau sémantique avec ses connecteurs et plugins, vous pouvez l’utiliser pour orchestrer des plugins conçus pour ChatGPT, Bing et Microsoft 365 Copilot sur des modèles provenant d’OpenAI, Azure ou même Hugging Face.
En tant que développeur, vous avez la possibilité d’utiliser ces composants soit individuellement, soit en les combinant. Par exemple, si vous avez seulement besoin d’une abstraction des services OpenAI et Azure OpenAI, vous pouvez utiliser le SDK pour exécuter simplement des prompts pré-configurés dans vos plugins. Cependant, la véritable puissance du noyau sémantique réside dans la combinaison de ces composants.
Mais pourquoi avez-vous besoin d’un SDK d’orchestration d’IA ? Vous pourriez choisir d’utiliser les APIs des services d’IA les plus populaires et d’alimenter directement vos applications et services existants avec les résultats. Cela vous obligerait cependant à apprendre les APIs de chaque service et à les intégrer à votre application. De plus, utiliser directement les APIs ne vous permettrait pas de profiter facilement des dernières avancées en matière de recherche en IA, qui nécessitent des solutions basées sur ces services.
En utilisant plusieurs modèles d’IA, plugins et mémoire tous ensemble au sein du noyau sémantique, vous pouvez créer des pipelines complexes qui permettent à l’IA d’automatiser des tâches complexes pour les utilisateurs.
Imaginons par exemple que vous utilisiez le noyau sémantique pour créer un pipeline qui aide un utilisateur à envoyer un email à son équipe de marketing. En utilisant la mémoire, vous pourriez récupérer des informations sur le projet, puis utiliser le planificateur pour générer automatiquement les étapes restantes en utilisant les plugins disponibles (par exemple, utiliser les données de Microsoft Graph pour comprendre la demande de l’utilisateur, générer une réponse avec GPT-4, et envoyer l’email). Pour finir, vous pouvez renvoyer un message de succès à votre utilisateur dans votre application grâce à un plugin personnalisé.
Pour résumer, le noyau sémantique est un outil précieux qui facilite l’intégration de l’IA dans vos applications existantes. Avec ses connecteurs et plugins, il vous permet d’orchestrer des plugins d’IA à partir de divers fournisseurs. Vous pouvez choisir d’utiliser ces composants individuellement ou ensemble, en fonction de vos besoins. Le noyau sémantique est là pour simplifier le processus de création d’applications d’IA et pour aider les développeurs d’applications d’entreprise à intégrer l’IA dans leurs applications existantes.
Source : Microsoft. Voir le lien de la documentation