Semantic Kernel: Microsoft's open source SDK for LLM applications

Semantic Kernel, released by Microsoft on 17 March 2023, provides an SDK for .NET, Python and Java with Kernel, Plugin and Planner concepts. Native integration with Azure OpenAI and M365 Copilot.

Open SourceAI Open SourceSemantic KernelMicrosoftSDKAgenticLLMAI

Origin and positioning

Semantic Kernel was published by Microsoft on 17 March 2023 as an open source SDK for integrating language models into enterprise applications. The project adopts the MIT licence and was initially released for .NET and Python, with a subsequent Java version. The choice to cover three main enterprise languages reflects the project’s target: Microsoft-centric developers who want to introduce LLM capabilities into existing applications.

Compared to Python-centric frameworks like LangChain or LlamaIndex, Semantic Kernel prioritises an idiomatic experience for each language and tight integration with the Microsoft stack.

Kernel, plugins and functions

The fundamental concept is the Kernel, a central container that orchestrates AI services, plugins and memory. A Kernel is configured with one or more connectors to LLM providers — typically Azure OpenAI or OpenAI — and with a set of available plugins.

A Plugin groups invocable functions. Semantic functions are defined through a parameterised prompt template, with metadata describing inputs and outputs. Native functions are functions in the hosting language (C#, Python, Java) exposed to the Kernel through attributes or annotations. The Kernel unifies the two modes: from the caller’s perspective, invoking a semantic function or a native function is a symmetric operation.

Planner

Planners are components that receive an objective in natural language and produce an execution plan combining the available functions. The SequentialPlanner generates an ordered sequence of calls in advance, while the StepwisePlanner plans and executes one step at a time, updating the reasoning based on intermediate outputs. Subsequent framework evolution has introduced more general agent patterns that extend and sometimes replace the original planners.

Microsoft ecosystem

Semantic Kernel integrates natively with the Microsoft enterprise stack: Azure OpenAI for inference, Azure AI Search as a vector store, the OpenAPI specification as a standard mechanism to turn existing APIs into plugins, connectors for Microsoft 365 services. Integration with M365 Copilot positions it as the reference SDK to extend Copilot capabilities with proprietary skills.

Adoption

The framework is adopted primarily in enterprise contexts where there is already an investment in the Microsoft platform and where the primary language is C# or Java. In these scenarios, the availability of an official SDK with support guarantees reduces uncertainty in adopting LLM components in production applications.

Link: learn.microsoft.com/semantic-kernel

Need support? Under attack? Service Status
Need support? Under attack? Service Status