本课将介绍如何运行本课程的代码示例。
在开始克隆您的仓库之前,请加入AI Agents For Beginners Discord频道,以便获取设置帮助、课程问题解答,或与其他学习者连接。
首先,请克隆或 Fork GitHub 仓库。这样您就拥有了课程材料的个人版本,可以运行、测试和修改代码!
您可以点击链接来 Fork 仓库
现在您应该拥有了本课程的个人分叉版本,链接如下:

下载完整历史和所有文件时,完整仓库可能很大(约3 GB)。如果您只是参加工作坊或只需要几个课程文件夹,浅克隆(或稀疏克隆)通过截断历史和/或跳过大文件避免了大部分下载。
将以下命令中的 <your-username> 替换为您的 Fork URL(或如果您喜欢,则使用上游 URL)。
只克隆最新提交历史(下载量小):
git clone --depth 1 https://github.com/<your-username>/ai-agents-for-beginners.git
克隆指定分支:
git clone --depth 1 --branch <branch-name> https://github.com/<your-username>/ai-agents-for-beginners.git
该方法使用部分克隆和稀疏检出(需要 Git 2.25+,推荐现代 Git 支持部分克隆):
git clone --depth 1 --filter=blob:none --sparse https://github.com/<your-username>/ai-agents-for-beginners.git
进入仓库文件夹:
cd ai-agents-for-beginners
然后指定你需要的文件夹(以下示例显示两个文件夹):
git sparse-checkout set 00-course-setup 01-intro-to-ai-agents
克隆并验证文件后,如果您只需要文件并想释放空间(无 git 历史),请删除仓库元数据(💀不可逆 — 会丢失所有 Git 功能:无提交、拉取、推送或历史访问)。
# zsh/bash
rm -rf .git
# PowerShell
Remove-Item -Recurse -Force .git
通过 GitHub UI 为此仓库创建新的 Codespace。
本课程提供一系列可运行的 Jupyter Notebook,让您亲自动手构建 AI 代理。
代码示例使用微软代理框架(Microsoft Agent Framework,MAF)及 FoundryChatClient,通过Microsoft Foundry连接Microsoft Foundry Agent Service V2(Responses API)。
所有 Python 笔记本均标记为 *-python-agent-framework.ipynb。
注意:如果未安装 Python 3.12,请确保安装。然后使用 python3.12 创建虚拟环境,确保从 requirements.txt 文件安装正确版本。
例如
创建 Python 虚拟环境目录:
python -m venv venv
然后激活虚拟环境:
# zsh/bash
source venv/bin/activate
# Command Prompt for Windows
venv\Scripts\activate
.NET 10+:对于使用 .NET 的示例代码,请确保安装 .NET 10 SDK 或更高版本。然后检查已安装的 .NET SDK 版本:
dotnet --list-sdks
gpt-5-mini)。见下方步骤1。仓库根目录包含 requirements.txt 文件,列出了运行示例代码所需的所有 Python 包。
您可以在终端的仓库根目录运行以下命令安装:
pip install -r requirements.txt
推荐创建 Python 虚拟环境以避免冲突和问题。
确保 VSCode 使用的是正确版本的 Python。
您需要一个 Microsoft Foundry hub 和带已部署模型的 project 才能运行笔记本。
gpt-5-mini)。从 Microsoft Foundry 门户项目里:

gpt-5-mini)。az login 登录 Azure所有笔记本使用 AzureCliCredential 认证 — 无需管理 API 密钥。需要通过 Azure CLI 登录。
如果尚未安装 Azure CLI,请安装:aka.ms/installazurecli
运行以下命令登录:
az login
若在无浏览器的远程/Codespace 环境:
az login --use-device-code
若提示,选择订阅 — 选择包含 Foundry 项目的订阅。
验证登录状态:
az account show
为何使用
az login? 笔记本通过azure-identity包里的AzureCliCredential进行认证。这意味着 Azure CLI 会话提供凭据 — 不需在.env文件中保存 API 密钥或秘密。此为一项安全最佳实践。
.env 文件复制示例文件:
# zsh/bash
cp .env.example .env
# PowerShell
Copy-Item .env.example .env
打开 .env 文件,填写以下两个变量:
AZURE_AI_PROJECT_ENDPOINT=https://<your-project>.services.ai.azure.com/api/projects/<your-project-id>
AZURE_AI_MODEL_DEPLOYMENT_NAME=gpt-5-mini
| 变量 | 位置 |
|---|---|
AZURE_AI_PROJECT_ENDPOINT |
Foundry 门户 → 项目 → Overview 页 |
AZURE_AI_MODEL_DEPLOYMENT_NAME |
Foundry 门户 → Models + Endpoints → 已部署模型名称 |
以上为大多数课程的全部配置!笔记本会通过您的 az login 会话自动认证。
pip install -r requirements.txt
建议在之前创建的虚拟环境中运行该命令。
课程5 使用 Azure AI Search 支持检索增强生成。若您计划运行该课程,请在 .env 文件添加以下变量:
| 变量 | 位置 |
|---|---|
AZURE_SEARCH_SERVICE_ENDPOINT |
Azure 门户 → 您的 Azure AI Search 资源 → Overview → URL |
AZURE_SEARCH_API_KEY |
Azure 门户 → 您的 Azure AI Search 资源 → 设置 → 密钥 → 主管理员密钥 |
课程6和8中的部分笔记本直接调用 Azure OpenAI(使用 Responses API),而非通过 Microsoft Foundry 项目。之前这些示例使用 GitHub Models,现已弃用(将于2026年7月退役)且不支持 Responses API。若计划运行这些示例,请将以下变量添加到 .env 文件:
| 变量 | 位置 |
|---|---|
AZURE_OPENAI_ENDPOINT |
Azure 门户 → 您的 Azure OpenAI 资源 → 密钥和端点 → 端点(例如 https://<your-resource>.openai.azure.com) |
AZURE_OPENAI_DEPLOYMENT |
已部署且支持 Responses API 的模型名称(例如 gpt-5-mini) |
AZURE_OPENAI_API_KEY |
可选 — 如果您使用基于密钥的认证而非 az login / Entra ID 时填写 |
Responses API 使用稳定的
/openai/v1/端点,不需要api-version。登录az login以使用无密钥的 Entra ID 认证。
MiniMax 通过兼容 OpenAI 的 API 提供大上下文模型(最高支持204K token)。微软代理框架的 OpenAIChatClient 兼容所有 OpenAI 端点,您可将 MiniMax 作为 Azure OpenAI 或 OpenAI 的替代方案。
将以下变量添加到 .env 文件:
| 变量 | 位置 |
|---|---|
MINIMAX_API_KEY |
MiniMax 平台 → API 密钥 |
MINIMAX_BASE_URL |
使用 https://api.minimax.io/v1(默认) |
MINIMAX_MODEL_ID |
使用的模型名称(例如 MiniMax-M3) |
示例模型:MiniMax-M3(推荐),MiniMax-M2.7,MiniMax-M2.7-highspeed(响应更快)。模型名称和可用性会随时变动,访问权限取决于账户或地区 — 请查看MiniMax 平台获取最新列表。如果 MiniMax-M3 不对账户开放,请设置 MINIMAX_MODEL_ID 为您可用的模型(例如 MiniMax-M2.7)。
使用 OpenAIChatClient 的代码示例(例如第14课酒店预订流程)在设置了 MINIMAX_API_KEY 时会自动检测并使用您的 MiniMax 配置。
Foundry Local 是轻量级运行时,可完全在您本机下载、管理并提供语言模型的 OpenAI 兼容 API — 无需云服务,无需 Azure 订阅,也无需 API 密钥。非常适合离线开发、实验和避免云端费用,或将数据保留在本地。
由于微软代理框架的 OpenAIChatClient 兼容任何 OpenAI 端点,Foundry Local 是 Azure OpenAI 的本地替代方案。
1. 安装 Foundry Local
# Windows(视窗操作系统)
winget install Microsoft.FoundryLocal
# macOS(苹果操作系统)
brew install foundrylocal
2. 下载并运行模型(同时启动本地服务):
foundry model list # 查看可用模型
foundry model run phi-4-mini
3. 安装 Python SDK,用于发现本地端点:
pip install foundry-local-sdk
4. 将微软代理框架指向您的本地模型:
from foundry_local import FoundryLocalManager
from agent_framework.openai import OpenAIChatClient
# 下载(如果需要)并在本地提供模型服务,然后发现端点/端口。
manager = FoundryLocalManager("phi-4-mini")
chat_client = OpenAIChatClient(
base_url=manager.endpoint, # 例如 http://localhost:<port>/v1
api_key=manager.api_key, # 对于 Foundry Local 始终为“not-required”
model_id=manager.get_model_info("phi-4-mini").id,
)
agent = chat_client.as_agent(
name="LocalAgent",
instructions="You are a helpful assistant running fully on-device.",
)
注意: Foundry Local 暴露 OpenAI 兼容的聊天完成端点,适用于本地开发和离线场景。若需完整的Responses API功能(支持有状态对话、深度工具编排及代理式开发),请使用本文示例中的 Azure OpenAI 或 Microsoft Foundry 项目。详见Foundry Local 文档了解当前模型目录及平台支持。
第8课中的条件工作流笔记本使用了通过 Microsoft Foundry 实现的 Bing 覆盖。如果你打算运行该示例,请将此变量添加到你的 .env 文件中:
| 变量 | 获取位置 |
|---|---|
BING_CONNECTION_ID |
Microsoft Foundry 门户 → 你的项目 → 管理 → 已连接资源 → 你的 Bing 连接 → 复制连接 ID |
如果你使用 macOS 并遇到如下错误:
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain
这是 macOS 上 Python 的已知问题,系统 SSL 证书不会被自动信任。请按顺序尝试以下解决方案:
选项 1:运行 Python 的安装证书脚本(推荐)
# 将3.XX替换为您安装的Python版本(例如,3.12或3.13):
/Applications/Python\ 3.XX/Install\ Certificates.command
选项 2:在笔记本中使用 connection_verify=False(仅适用于 GitHub Models 笔记本)
在第 6 课的笔记本(06-building-trustworthy-agents/code_samples/06-system-message-framework.ipynb)中,已包含了一个注释掉的解决方法。创建客户端时取消注释 connection_verify=False:
client = ChatCompletionsClient(
endpoint=endpoint,
credential=AzureKeyCredential(token),
connection_verify=False, # 如果遇到证书错误,请禁用SSL验证
)
⚠️ 警告: 禁用 SSL 验证 (
connection_verify=False) 会跳过证书验证,从而降低安全性。仅在开发环境做为临时解决方案使用,绝不可在生产环境中使用。
选项 3:安装并使用 truststore
pip install truststore
然后在笔记本或脚本的顶部网络调用之前添加以下内容:
import truststore
truststore.inject_into_ssl()
如果你在运行此设置时遇到任何问题,请加入我们的 Azure AI 社区 Discord 或 创建一个问题。
你现在已准备好运行本课程的代码。祝你在 AI 代理的世界中学习愉快!
免责声明: 本文件由 AI 翻译服务 Co-op Translator 翻译完成。尽管我们力求准确,但请注意,自动翻译可能包含错误或不准确之处。原始语言版文件应视为权威来源。对于重要信息,建议使用专业人工翻译。我们对因使用本翻译而产生的任何误解或误释不承担责任。