Open-Source-SDK für KI-Dienste und Microsoft Copilot Semantic Kernel ergänzt Anwendungen um Künstliche Intelligenz
Anbieter zum Thema
Mit Semantic Kernel stellt Microsoft ein Open-Source-SDK bereit, das die Entwicklung von Anwendungen mit KI-Funktionen vereinfachen soll. Im Fokus stehen dabei KI-Dienste wie Azure OpenAI.

Einfach ausgedrückt ermöglicht es Semantic Kernel, dass in Anwendungen KI-Prompts mit Code auf Basis von C# oder Python kombiniert oder erstellt werden können. Dadurch lassen sich in eigenen Anwendungen KI-Funktionen einbinden, ohne eigene Large Language Models (LLMs) trainieren zu müssen.
Mit Semantic Kernel lassen sich daher C# - Anwendungen, oder Programme, die mit Python entwickelt wurden, direkt mit KI-Funktionen ausstatten. Natürlich lassen sich Programme auch gleich von Anfang an mit Semantic Kernel für KI optimieren.
Semantic Kernel ist mit den verschiedenen Copilot-Diensten von Microsoft kombiniert mit denen KI-Funktionen auf Basis von Azure OpenAI/ChatGPT in Microsoft 365, Office und auch in Windows eingebunden werden können. Experten bezeichnen Semantic Kernel als Basis von Copilot.
Microsoft will erreichen, dass Entwickler in ihre Anwendungen die gleichen Copilot-Funktionen einbinden können, wie es Microsoft in seinen Clouddiensten bei Microsoft 365, in Microsoft Office, in seiner Suchmaschine Bing und zukünftig in Windows 11 macht.
Unter Umständen bekommt auch Windows Server vNext, der Nachfolger von Windows Server 2022 verschiedene KI-Funktionen. Schließlich wird Copilot in Windows 11 eingebunden und Windows Server vNext ist das erste Server-Betriebssystem von Microsoft, das auf dem Kernel von Windows 11 aufbaut.
Projekt MiYagi – Microsoft 365 Copilot kombiniert mit Semantic Kernel
Ein interessantes Projekt dazu ist das Open Source-Projekt MiYagi. Das Projekt enthält Anwendungsbeispiele für Frameworks und Orchestratoren wie Semantic Kernel, Guidance, Promptflow, LlamaIndex, LangChain, Vektorspeicher (Azure Cognitive Search, CosmosDB Postgres pgvector und Qdrant) und generative Bild-Dienstprogramme wie DreamFusion und ControlNet. Wer sich für Semantic Kernel und Copilot interessiert, sollte sich die Möglichkeiten anschauen, die MiYagi bietet.
Semantic Kernel macht herkömmliche Anwendungen zu KI-Anwendungen
Schlussendlich lassen sich mit Semantic Kernel herkömmliche Anwendungen mit KI-Funktionen ausstatten. Generell macht Microsoft mit Bing, Office, Microsoft 365 und Windows 11 nichts anderes. Die Standardanwendungen und Betriebssysteme erhalten eine Verbindung mit Azure OpenAI oder anderen Diensten und können dadurch umfassend KI-Funktionen nutzen.
KI-Plugins für Anwendungen können entweder direkt Prompts anbieten oder KI-Funktionen bieten. Diese warten auf bestimmte Auslöser im Programm, befragen die angebundene KI, und stellen die Ergebnisse in der Anwendung bereit. Semantic Kernel ist wegen seiner Erweiterbarkeit durch Konnektoren und Plugins flexibel nutzbar.
Das SDK ermöglicht die Orchestrierung von KI-Plugins von OpenAI und Microsoft auf praktisch jedem Modell. Zum Beispiel können Entwickler mit Semantic Kernel Plugins für ChatGPT, Bing und Microsoft 365 Copilot auf Modellen von OpenAI, Azure oder Hugging Face orchestrieren. Semantic Kernel ermöglicht die Verwendung mehrerer KI-Modelle, Plugins und Speicher. Dadurch können Entwickler ausgefeilte Pipelines erstellen. Diese ermöglichen die Automatisierung komplexer Aufgaben durch KI. Das entlastet wiederum die Benutzer der Anwendungen.
Einstieg in Semantic Kernel mit C# und Python
Der Code von Semantic Kernel steht Open Source auf GitHub zur Verfügung. Für einen schnellen Einstieg reicht es aus einen API-Key von OpenAI oder Azure OpenAI zu nutzen und mit Semantic Kernel in die eigene Anwendung einzubinden. Das ist mit C# und Python nicht kompliziert.
Die beiden SDKs sind kompatibel miteinander und folgen den gleichen Designprinzipien. Verschiedene Funktionen sind aktuell nur in der C# verfügbar. und werden portiert. In der Feature Matrix sind die Unterschiede und die Möglichkeiten genauer aufgelistet. Microsoft erwartet, dass es in Zukunft durchaus Funktionsunterschiede zwischen dem Einsatz von Semantic Kernel in Python und C# geben kann. Hier sollten sich Entwickler daher zuvor informieren, welche Funktionen sie brauchen und dann bei der Anbindung auf die jeweilige Programmiersprache setzen.
Für C#
- 1. Erstellen Sie eine neue Konsolenanwendung.
- 2. Fügen Sie Semantic Kernel hinzu mit: nuget Microsoft.SemanticKernel
- 3. Kopieren Sie den entsprechenden Code die Datei „Program.cs“ der Anwendung.
- 4. Ersetzen Sie die Konfigurationsplatzhalter für den API-Schlüssel und andere Parameter durch Ihren Schlüssel und Ihre Einstellungen.
- 5. Danach führen Sie den Code aus.
Für Python
Installieren Sie das pip-Paket: python -m pip install semantic-kernel
Erstellen Sie ein neues Skript, zum Beispiel „hello-world.py“.
Speichern Sie Ihren API-Schlüssel und Ihre Einstellungen in einer .env-Datei
Kopieren Sie den Code in das Skript „hello-world.py“.
Führen Sie das Python-Skript aus.
Um den Kernel als lokalen Webdienst auszuführen, sind die Azure Functions Core-Tools notwendig. Außerdem werden noch .NET-6- oder .NET-7-SDK benötigt.
Microsoft zeigt den Einstieg auch auf seiner Getting-Started-Seite für Semantic Kernel. Wer sich mit Semantic Kernel in Zukunft auseinandersetzen will, sollte sich auch den Blog des Microsoft Semantic-Kernel-Teams anschauen.
(ID:49622387)