安装与配置 #

环境要求 #

系统要求 #

要求 说明
操作系统 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