Build chatbots that answer questions by connecting to your company's data and APIs.
Create automated assistants that handle multi-step workflows by coordinating multiple specialized agents.
Add AI-powered search to applications using vector databases to find relevant documents by meaning.
Develop enterprise applications that swap between different AI providers without rewriting code.
Requires an OpenAI or Azure OpenAI API key to run meaningful examples.
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.
Generated 2026-05-21 · Model: sonnet-4-6 · Verify against the repo before relying on details.