Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Semantic Kernel - Intro et exemple de use-case

Semantic Kernel - Intro et exemple de use-case

Nicolas ROBERT

August 23, 2023
Tweet

More Decks by Nicolas ROBERT

Other Decks in Technology

Transcript

  1. Semantic Kernel Introduction et mise en pratique 23/08/2023 Allons plus

    loin que le « Microsoft AI Skills Challenge »
  2. 2 Planning 13h – 14h : Sulan LIU et Paul

    PETON Utilisation de Prompt Flow pour développer graphiquement des applications intégrant un LLM 14h – 15h : Nicolas ROBERT Introduction à Semantic Kernel : comment tirer parti d'(Azure) OpenAI et aller plus loin dans vos use-cases en le combinant avec d'autres outils 15h – 16h : Alibek JAKUPOV LLaMA 2 : un aperçu du modèle et une démonstration
  3. 3 Qui suis-je ? 8 Après une formation d'ingénieur généraliste,

    j'ai travaillé sur des applications mobiles pendant six ans avant de basculer sur Azure en 2017. J'apporte désormais mon expertise en matière de conception, d'architecture, de développement et de déploiement à mes clients, en me concentrant sur les solutions à base d’IA. Profil couteau suisse, je suis également formateur certifié Microsoft (MCT) et ai été reconnu comme Microsoft Most Valuable Professional (MVP) dans la catégorie "IA" depuis 2019 en raison de ma participation active dans la communauté. Nicolas ROBERT Technical Officer Smart Business & ‘AI’ Microsoft MVP
  4. Sommaire 4 Introduction à Semantic Kernel Quelques exemples d’utilisation Analyse

    du fonctionnement Démo / Mise en pratique 1 2 3 4 Conclusion et liens utiles 5
  5. 6 Définition « Semantic Kernel permet de combiner des fonctions

    en langage naturel, des fonctions natives de code traditionnel et une mémoire basée sur des embeddings, débloquant ainsi de nouvelles potentialités et ajoutant de la valeur aux applications avec l’IA. » SK prend en charge : - la création de modèles de prompts (« prompt engineering ») - l'enchaînement de fonctions (« function chaining ») - la mémoire vectorisée - les capacités de planification intelligente
  6. 8 Principales fonctionnalités Supported languages for Semantic Kernel | Microsoft

    Learn AI Services • TextGeneration • TextEmbeddings • ChatCompletion • ImageGeneration AI Services endpoints • OpenAI • Azure OpenAI • Hugging Face Inference API • Hugging Face Local • Custom Tokenizers • GPT2 • GPT3 • tiktoken Core Plugins • TextMemorySkill • ConversationSummarySkill • FileIOSkill • HttpSkill • MathSkill • TextSkill • TimeSkill • WaitSkill Planners • Plan Object Model • BasicPlanner • ActionPlanner • SequentialPlanner • StepwisePlanner Connectors • Azure Cognitive Search • Chroma • DuckDB • Milvus • Pinecone • Postgres • Qdrant • Redis • Sqlite • Weaviate Plugins • MS Graph • Document and data loading plugins (i.e. pdf, csv, docx, pptx) • OpenAPI • Web search plugins (i.e. Bing, Google) • Text chunkers
  7. 13 Exemples avec les notebooks C# • Disponibles sur le

    repository officiel : https://github.com/microsoft/semantic- kernel/blob/main/dotnet/notebooks/README.md
  8. 15

  9. 16

  10. 19 Démo – Chat Copilot Sample Application • Etapes de

    mise en place réalisées en amont : ▪ Clonage du repository ▪ Installation des dépendances via ps1 (Chocolatey, dotnet-7.0-sdk, nodejs, and yarn) ▪ Configuration des paramètres • Service OpenAI : endpoint, clé + noms des déploiements pour Embedings, Completion et Planner • Informations d’authentification (optionnelles) ▪ Démarrage
  11. 25 Mise en place de l’authentification • Déclaration de 2

    applications Azure AD : Frontend + Backend ▪ Exposition d’une API par le backend ▪ Permission d’utilisation de l’API par l’app frontend
  12. 40 Conclusion • Semantic Kernel est un orchestrateur qui permet

    de combiner les capacités des services AI avec de la programmation traditionnelle ▪ Alternative intéressante à LangChain ▪ Utilisable par des développeurs .Net mais aussi Python (et Java) • Projet Open source, évoluant rapidement ▪ De nombreux exemples sont disponibles • En espérant vous avoir donné envie d’essayer un peu plus !
  13. 41 Liens utiles • Microsoft Learn documentation : ▪ Racine

    : Orchestrate your AI with Semantic Kernel | Microsoft Learn ▪ Samples apps : List of all sample apps | Microsoft Learn ▪ AI Plugins : Understanding AI plugins in Semantic Kernel and beyond | Microsoft Learn • Repository GitHub : ▪ Projet : https://aka.ms/skrepo ▪ Chat Copilot : microsoft/chat-copilot (github.com) ▪ Starters (Console, Azure Function, etc.) : microsoft/semantic-kernel-starters: Starter Projects for Semantic Kernel (github.com)