Semantic Kernel

Semantic Kernel

微软模型无关 AI agent 编排 SDK,覆盖 C#/Python/Java

核心功能

Semantic Kernel 是微软开源轻量级 SDK,在 C#、Python、Java 构建 AI agent,连接 LLM 与业务代码:现有 API 声明为 Plugin,由模型函数调用驱动。内置 OpenAI、Azure、HF、NVIDIA 连接器与 Ollama 本地部署支持。

功能亮点

多语言一致

C#、Python、Java API 一致,1.0 起承诺接口稳定。

插件即能力

现有代码声明为 Plugin 供模型调用,支持 OpenAPI 与 MCP。

多模型接入

OpenAI、Azure、HF、NVIDIA 连接器即插即用。

企业级支撑

遥测、钩子、过滤器保证安全与可观测,财富 500 强在用。

自定义模型 / 模型接入

多厂商支持

连接器接入任意模型:内置 OpenAI、Azure、NVIDIA,支持 Ollama 本地;OPENAI_API_KEY 认证,国产模型走兼容连接器。

接入方式
  • export OPENAI_API_KEY 或 AZURE_OPENAI_API_KEY
  • AddOpenAIChatCompletion 注册 OpenAI 连接器
  • AddAzureOpenAIChatCompletion 注册 Azure 服务
  • Ollama/LMStudio 本地模型连接器
  • 用 OpenAI 兼容端点接国产与自建模型
支持模型
OpenAI GPTAzure OpenAIHugging Face 模型NVIDIA NIMOllama 本地模型LM Studio 模型ONNX 模型
bash
设置环境变量并安装
pip install semantic-kernel

export OPENAI_API_KEY=sk-xxx
编写最小 agent 脚本
from semantic_kernel.agents import ChatCompletionAgent
from semantic_kernel.connectors.ai.open_ai import AzureChatCompletion
agent = ChatCompletionAgent(service=AzureChatCompletion(), name="SK-Assistant", instructions="You are a helpful assistant.")

适用场景

• 构建企业级 AI 助手
• 多 agent 任务协作系统
• 现有系统接入 LLM 函数调用
• 本地模型私有化部署

安装配置

Python:pip install semantic-kernel;.NET:dotnet add package Microsoft.SemanticKernel;Java 按 semantic-kernel-java 构建(Python 需 3.10+,.NET 需 10.0+,Java 需 JDK 17+)

使用方法

创建 Kernel 并添加 AI 服务连接器(如 AddAzureOpenAIChatCompletion),将业务方法标记为 KernelFunction 注册为插件,再用 ChatCompletionAgent 编排 agent 交互;多 agent 场景把专精 agent 作为插件挂到分发 agent 上实现协作。

关键指标

尚未核验对标产品,此处只列本工具自身指标,不做对比结论。

指标Semantic Kernel
价格免费
开源
上手难度进阶
Token 消耗

相关工具

同类工具

优点

  • 微软官方维护,持续迭代
  • 语言覆盖广
  • 插件机制与现有代码融合好
  • 模型可随时替换

缺点

  • 概念较多有学习曲线
  • 演进方向已转向 Agent Framework
  • 文档分散于多语言