explaingit

microsoft/semantic-kernel

Analysis updated 2026-05-18

27,844C#Audience · developerComplexity · 3/5LicenseSetup · moderate

TLDR

Microsoft SDK for building AI agents that connect your code to language models, with plugins for real-world tasks and multi-agent orchestration.

Mindmap

mindmap
  root((Semantic Kernel))
    What it does
      Connect code to LLMs
      Build AI agents
      Multi-agent workflows
    Key features
      Plugins for tools
      Vector database support
      Model-agnostic
    Tech stack
      Python
      .NET/C#
      Java
    Use cases
      Chatbots
      Automated assistants
      Enterprise workflows
    Audience
      Enterprise developers
      AI application builders
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build chatbots that answer questions by connecting to your company's data and APIs.

USE CASE 2

Create automated assistants that handle multi-step workflows by coordinating multiple specialized agents.

USE CASE 3

Add AI-powered search to applications using vector databases to find relevant documents by meaning.

USE CASE 4

Develop enterprise applications that swap between different AI providers without rewriting code.

What is it built with?

C#.NETPythonJavaOpenAIAzure OpenAI

How does it compare?

microsoft/semantic-kernelnickemanarin/screentogifdnspy/dnspy
Stars27,84426,89229,345
LanguageC#C#C#
Setup difficultymoderateeasymoderate
Complexity3/51/54/5
Audiencedevelopergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires an OpenAI or Azure OpenAI API key to run meaningful examples.

Use freely for any purpose including commercial, as long as you keep the copyright notice.

In plain English

Semantic Kernel is Microsoft's open-source software development kit for building applications powered by large language models, the kind of AI behind chat assistants. Its goal is to let developers add LLM features to their apps and, more recently, to build full "agents", programs that can take instructions, call tools, remember things, and work together with other agents to get a task done. The README opens with an important notice that Semantic Kernel has been succeeded by Microsoft Agent Framework, the enterprise-ready 1.0 release, and links to a migration guide, Semantic Kernel itself is still the project this repository hosts. The SDK is described as model-agnostic, meaning it does not lock you to one AI provider. It has built-in connectors for OpenAI, Azure OpenAI, Hugging Face, and NVIDIA, and can run models locally through Ollama, LMStudio, or ONNX. It also integrates with vector databases such as Azure AI Search, Elasticsearch, and Chroma for giving an agent long-term memory. Key features called out include an agent framework with tools, memory, and planning, multi-agent orchestration, a plugin system that can wrap native code, prompt templates, OpenAPI specifications, or Model Context Protocol (MCP) endpoints, multimodal support for text, vision, and audio, and a process framework for modeling business workflows. It ships for three runtimes: a Python package (semantic-kernel on PyPI, Python 3.10 and up), a .NET NuGet package (Microsoft.SemanticKernel.NET 10.0 and up), and a Java edition (JDK 17 and up). Windows, macOS, and Linux are all supported. The quickstart examples show how to create a ChatCompletionAgent in both Python and C#, then extend it with a plugin class whose methods are marked as kernel functions so the model can call them, with structured output via Pydantic models on the Python side. You would use Semantic Kernel when you want a single, enterprise-oriented SDK for plugging LLMs and agentic behavior into existing Python.NET, or Java applications. It is MIT-licensed.

Copy-paste prompts

Prompt 1
Show me how to create a simple agent in Semantic Kernel that can call a custom plugin to fetch user data.
Prompt 2
How do I set up Semantic Kernel to work with multiple AI providers like OpenAI and Azure OpenAI?
Prompt 3
Walk me through building a multi-agent system where one agent gathers information and another summarizes it.
Prompt 4
How do I connect Semantic Kernel to a vector database for retrieval-augmented generation?
Prompt 5
What's the migration path from Semantic Kernel to Microsoft Agent Framework?

Frequently asked questions

What is semantic-kernel?

Microsoft SDK for building AI agents that connect your code to language models, with plugins for real-world tasks and multi-agent orchestration.

What language is semantic-kernel written in?

Mainly C#. The stack also includes C#, .NET, Python.

What license does semantic-kernel use?

Use freely for any purpose including commercial, as long as you keep the copyright notice.

How hard is semantic-kernel to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is semantic-kernel for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub microsoft on gitmyhub

Verify against the repo before relying on details.