安装与配置 #
环境要求 #
系统要求 #
| 要求 | 说明 |
|---|---|
| 操作系统 | Windows、macOS、Linux |
| 开发环境 | .NET 6.0+ / Python 3.8+ / Java 17+ |
| IDE | Visual Studio、VS Code、JetBrains IDE |
语言版本要求 #
text
┌─────────────────────────────────────────────────────────────┐
│ 语言版本要求 │
├─────────────────────────────────────────────────────────────┤
│ │
│ C# 版本: │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ .NET 6.0 或更高版本 │ │
│ │ 推荐:.NET 8.0(最新 LTS) │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ Python 版本: │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ Python 3.8 或更高版本 │ │
│ │ 推荐:Python 3.11+ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ Java 版本: │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ Java 17 或更高版本 │ │
│ │ 推荐:Java 21 LTS │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
C# 安装指南 #
1. 安装 .NET SDK #
bash
# Windows (使用 winget)
winget install Microsoft.DotNet.SDK.8
# macOS (使用 Homebrew)
brew install dotnet-sdk
# Linux (Ubuntu)
wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh
chmod +x ./dotnet-install.sh
./dotnet-install.sh --channel 8.0
2. 创建项目 #
bash
# 创建控制台项目
dotnet new console -n MySemanticKernelApp
cd MySemanticKernelApp
# 添加 Semantic Kernel 核心包
dotnet add package Microsoft.SemanticKernel
# 添加 OpenAI 连接器(可选)
dotnet add package Microsoft.SemanticKernel.Connectors.OpenAI
# 添加 Azure OpenAI 连接器(可选)
dotnet add package Microsoft.SemanticKernel.Connectors.AzureOpenAI
3. 项目文件配置 #
xml
<!-- MySemanticKernelApp.csproj -->
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.SemanticKernel" Version="1.0.0" />
<PackageReference Include="Microsoft.SemanticKernel.Connectors.OpenAI" Version="1.0.0" />
</ItemGroup>
</Project>
4. NuGet 包说明 #
| 包名 | 用途 |
|---|---|
| Microsoft.SemanticKernel | 核心包,必需 |
| Microsoft.SemanticKernel.Connectors.OpenAI | OpenAI 连接器 |
| Microsoft.SemanticKernel.Connectors.AzureOpenAI | Azure OpenAI 连接器 |
| Microsoft.SemanticKernel.Plugins.Memory | 记忆插件 |
| Microsoft.SemanticKernel.Plugins.Web | Web 搜索插件 |
Python 安装指南 #
1. 创建虚拟环境 #
bash
# 创建虚拟环境
python -m venv .venv
# 激活虚拟环境
# Windows
.venv\Scripts\activate
# macOS/Linux
source .venv/bin/activate
2. 安装 Semantic Kernel #
bash
# 使用 pip 安装
pip install semantic-kernel
# 安装完整版(包含所有连接器)
pip install semantic-kernel[all]
# 只安装特定连接器
pip install semantic-kernel[openai]
pip install semantic-kernel[azure]
3. requirements.txt #
txt
semantic-kernel>=1.0.0
python-dotenv>=1.0.0
4. 验证安装 #
python
import semantic_kernel as sk
print(f"Semantic Kernel 版本: {sk.__version__}")
Java 安装指南 #
1. Maven 配置 #
xml
<!-- pom.xml -->
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel</artifactId>
<version>1.0.0</version>
</dependency>
<!-- OpenAI 连接器 -->
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-connectors-openai</artifactId>
<version>1.0.0</version>
</dependency>
2. Gradle 配置 #
groovy
// build.gradle
implementation 'com.microsoft.semantic-kernel:semantickernel:1.0.0'
implementation 'com.microsoft.semantic-kernel:semantickernel-connectors-openai:1.0.0'
API 密钥配置 #
获取 API 密钥 #
text
┌─────────────────────────────────────────────────────────────┐
│ API 密钥获取 │
├─────────────────────────────────────────────────────────────┤
│ │
│ OpenAI: │
│ 1. 访问 https://platform.openai.com │
│ 2. 注册/登录账户 │
│ 3. 进入 API Keys 页面 │
│ 4. 创建新的 API Key │
│ │
│ Azure OpenAI: │
│ 1. 访问 https://portal.azure.com │
│ 2. 创建 Azure OpenAI 资源 │
│ 3. 获取 Endpoint 和 API Key │
│ 4. 部署模型获取 Deployment Name │
│ │
└─────────────────────────────────────────────────────────────┘
环境变量配置 #
bash
# .env 文件
# OpenAI 配置
OPENAI_API_KEY=sk-your-api-key-here
OPENAI_ORG_ID=your-org-id
# Azure OpenAI 配置
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/
AZURE_OPENAI_API_KEY=your-azure-api-key
AZURE_OPENAI_DEPLOYMENT_NAME=gpt-4
C# 配置加载 #
csharp
using Microsoft.Extensions.Configuration;
var config = new ConfigurationBuilder()
.AddJsonFile("appsettings.json", optional: true)
.AddEnvironmentVariables()
.AddUserSecrets<Program>()
.Build();
var openaiKey = config["OpenAI:ApiKey"];
Python 配置加载 #
python
import os
from dotenv import load_dotenv
load_dotenv()
openai_key = os.getenv("OPENAI_API_KEY")
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
IDE 配置 #
Visual Studio Code #
推荐安装扩展:
text
┌─────────────────────────────────────────────────────────────┐
│ VS Code 扩展推荐 │
├─────────────────────────────────────────────────────────────┤
│ │
│ C# 开发: │
│ - C# (Microsoft) │
│ - C# Dev Kit │
│ - .NET Extension Pack │
│ │
│ Python 开发: │
│ - Python (Microsoft) │
│ - Pylance │
│ - Python Extension Pack │
│ │
│ 通用: │
│ - GitHub Copilot │
│ - REST Client │
│ - Thunder Client │
│ │
└─────────────────────────────────────────────────────────────┘
Visual Studio #
text
推荐配置:
1. 安装 .NET 开发工作负载
2. 安装 AI 开发工具(可选)
3. 配置 NuGet 源
JetBrains IDE #
text
Rider (C#):
- 内置 .NET 支持
- 推荐安装 AI Assistant 插件
PyCharm (Python):
- 内置 Python 支持
- 推荐安装 Semantic Kernel 插件
项目结构 #
C# 项目结构 #
text
MySemanticKernelApp/
├── Program.cs # 入口文件
├── appsettings.json # 配置文件
├── appsettings.Development.json
├── Plugins/ # 插件目录
│ ├── MathPlugin.cs
│ └── TextPlugin.cs
├── Prompts/ # 提示词目录
│ └── chat.prompt.yaml
├── Services/ # 服务目录
│ └── KernelService.cs
└── MySemanticKernelApp.csproj
Python 项目结构 #
text
my_semantic_kernel_app/
├── main.py # 入口文件
├── .env # 环境变量
├── requirements.txt # 依赖文件
├── plugins/ # 插件目录
│ ├── __init__.py
│ ├── math_plugin.py
│ └── text_plugin.py
├── prompts/ # 提示词目录
│ └── chat_prompt.yaml
└── services/ # 服务目录
└── kernel_service.py
验证安装 #
C# 验证代码 #
csharp
using Microsoft.SemanticKernel;
var builder = Kernel.CreateBuilder();
builder.AddOpenAIChatCompletion(
"gpt-4",
Environment.GetEnvironmentVariable("OPENAI_API_KEY")!);
var kernel = builder.Build();
Console.WriteLine("Semantic Kernel 安装成功!");
Console.WriteLine($"Kernel 已创建,包含 {kernel.Plugins.Count} 个插件");
Python 验证代码 #
python
import asyncio
import semantic_kernel as sk
from semantic_kernel.connectors.ai.open_ai import OpenAIChatCompletion
async def main():
kernel = sk.Kernel()
kernel.add_service(OpenAIChatCompletion(
service_id="gpt-4",
ai_model_id="gpt-4",
api_key=os.getenv("OPENAI_API_KEY")
))
print("Semantic Kernel 安装成功!")
print(f"Kernel 已创建,包含 {len(kernel.plugins)} 个插件")
asyncio.run(main())
常见问题 #
Q1: NuGet 包安装失败 #
bash
# 清理 NuGet 缓存
dotnet nuget locals all --clear
# 重新安装
dotnet restore
Q2: Python 依赖冲突 #
bash
# 使用虚拟环境隔离
python -m venv .venv
source .venv/bin/activate
pip install semantic-kernel
Q3: API 连接失败 #
text
检查清单:
1. API Key 是否正确
2. Endpoint URL 是否正确
3. 网络是否可访问
4. 代理设置是否正确
下一步 #
环境搭建完成后,让我们开始 第一个应用,体验 Semantic Kernel 的强大功能!
最后更新:2026-04-04