本课程将介绍如何运行本课程的代码示例。
在您开始克隆存储库之前,请加入AI Agents For Beginners Discord 频道,以获取设置方面的帮助、课程相关问题或与其他学习者交流。
首先,请克隆或派生 GitHub 存储库。这将创建您自己的课程材料版本,以便您可以运行、测试和调整代码!
可以通过点击链接派生存储库来完成
您现在应该在以下链接中拥有自己的课程派生版本
当您下载完整历史记录和所有文件时,完整存储库可能很大(约 3 GB)。如果您只参加研讨会或只需要几个课程文件夹,浅克隆(或稀疏克隆)可以通过截断历史记录和/或跳过 Blob 来避免大部分下载。
将以下命令中的 <your-username>
替换为您的派生 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
遍历到存储库文件夹
对于 Bash
cd ai-agents-for-beginners
对于 PowerShell
Set-Location ai-agents-for-beginners
然后指定您想要的文件夹(下面的示例显示两个文件夹)
git sparse-checkout set 00-course-setup 01-intro-to-ai-agents
克隆并验证文件后,如果您只需要文件并希望释放空间(无 Git 历史记录),请删除存储库元数据(💀不可逆转 — 您将失去所有 Git 功能:无法提交、拉取、推送或访问历史记录)。
对于 Linux/macOS
rm -rf .git
对于 Windows
Remove-Item -Recurse -Force .git
通过 GitHub UI 为此存储库创建一个新的 Codespace。
本课程提供了一系列 Jupyter Notebook,您可以运行它们以获得构建 AI Agents 的实践经验。
代码示例使用以下之一
需要 GitHub 帐户 - 免费:
1) Semantic Kernel Agent 框架 + GitHub 模型市场。标记为 (semantic-kernel.ipynb) 2) AutoGen 框架 + GitHub 模型市场。标记为 (autogen.ipynb)
需要 Azure 订阅:3) Azure AI Foundry + Azure AI Agent 服务。标记为 (azureaiagent.ipynb)
我们鼓励您尝试所有三种类型的示例,看看哪种最适合您。
无论您选择哪个选项,都将决定您需要遵循哪些设置步骤
注意:如果未安装 Python 3.12,请务必安装。然后使用 python 3.12 创建您的 venv,以确保从 requirements.txt 文件中安装正确的版本。
示例
创建 Python venv 目录
python3 -m venv venv
然后为以下项激活 venv 环境
macOS 和 Linux
source venv/bin/activate
Windows
venv\Scripts\activate
我们已在此存储库的根目录中包含一个 requirements.txt
文件,其中包含运行代码示例所需的所有 Python 包。
您可以通过在存储库根目录的终端中运行以下命令来安装它们
pip install -r requirements.txt
我们建议创建 Python 虚拟环境以避免任何冲突和问题。
确保您在 VSCode 中使用正确版本的 Python。
本课程利用 GitHub 模型市场,提供对您将用于构建 AI Agents 的大型语言模型 (LLM) 的免费访问。
要使用 GitHub 模型,您需要创建一个GitHub 个人访问令牌。
这可以通过在您的 GitHub 帐户中转到个人访问令牌设置来完成。
请在创建令牌时遵循最小权限原则。这意味着您应该只授予令牌运行本课程代码示例所需的权限。
通过遍历到开发者设置 ,选择屏幕左侧的
Fine-grained tokens
选项
然后选择 Generate new token
。
为您的令牌输入一个描述性名称,以反映其用途,以便以后易于识别。
🔐 令牌持续时间建议
建议持续时间:30 天 为了更安全的姿态,您可以选择更短的时间——例如 7 天 🛡️ 这是一个设定个人目标并在学习势头高涨时完成课程的好方法 🚀。
将令牌的范围限制为您此存储库的派生。
限制令牌的权限:在权限下,点击帐户选项卡,然后点击“+ 添加权限”按钮。将出现一个下拉菜单。请搜索模型并选中其复选框。
在生成令牌之前验证所需的权限。
在生成令牌之前,请确保您已准备好将令牌安全地存储在密码管理器保险库等位置,因为创建后将不会再次显示。
复制您刚刚创建的新令牌。您现在将此添加到本课程中包含的 .env
文件中。
.env
文件要创建您的 .env
文件,请在终端中运行以下命令。
cp .env.example .env
这将复制示例文件并在您的目录中创建 .env
,您可以在其中填写环境变量的值。
复制令牌后,在您喜欢的文本编辑器中打开 .env
文件,并将令牌粘贴到 GITHUB_TOKEN
字段中。
您现在应该能够运行本课程的代码示例。
请按照此处找到的在 Azure AI Foundry 中创建中心和项目的步骤:中心资源概述
创建项目后,您将需要检索项目的连接字符串。
这可以通过在 Azure AI Foundry 门户中转到项目的概述页面来完成。
.env
文件要创建您的 .env
文件,请在终端中运行以下命令。
cp .env.example .env
这将复制示例文件并在您的目录中创建 .env
,您可以在其中填写环境变量的值。
复制令牌后,在您喜欢的文本编辑器中打开 .env
文件,并将令牌粘贴到 PROJECT_ENDPOINT
字段中。
作为安全最佳实践,我们将使用无密钥身份验证通过 Microsoft Entra ID 对 Azure OpenAI 进行身份验证。
接下来,打开终端并运行 az login --use-device-code
以登录您的 Azure 帐户。
登录后,在终端中选择您的订阅。
对于 Agentic RAG 课程 - 课程 5 - 有使用 Azure Search 和 Azure OpenAI 的示例。
如果您想运行这些示例,您需要将以下环境变量添加到您的 .env
文件中
AZURE_SUBSCRIPTION_ID
- 在项目的概述页面上查看项目详细信息。
AZURE_AI_PROJECT_NAME
- 在项目的概述页面顶部查看。
AZURE_OPENAI_SERVICE
- 在概述页面上Azure OpenAI 服务的包含功能选项卡中找到此项。
AZURE_OPENAI_RESOURCE_GROUP
- 转到管理中心的概述页面上的项目属性。
GLOBAL_LLM_SERVICE
- 在连接资源下,找到Azure AI 服务连接名称。如果未列出,请在Azure 门户中您的资源组下查找 AI 服务资源名称。
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME
- 选择您的嵌入模型(例如,text-embedding-ada-002
)并记下模型详细信息中的部署名称。
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME
- 选择您的聊天模型(例如,gpt-4o-mini
)并记下模型详细信息中的部署名称。
AZURE_OPENAI_ENDPOINT
- 查找Azure AI 服务,点击它,然后转到资源管理、密钥和终结点,滚动到“Azure OpenAI 终结点”,并复制其中标有“语言 API”的那个。
AZURE_OPENAI_API_KEY
- 从同一屏幕复制 KEY 1 或 KEY 2。
AZURE_SEARCH_SERVICE_ENDPOINT
- 找到您的Azure AI Search资源,点击它,然后查看概述。
AZURE_SEARCH_API_KEY
- 然后转到设置,再转到密钥以复制主或辅助管理员密钥。
AZURE_OPENAI_API_VERSION
- 访问最新 GA API 版本下的API 版本生命周期页面。我们不硬编码凭据,而是使用 Azure OpenAI 的无密钥连接。为此,我们将导入 DefaultAzureCredential
,然后调用 DefaultAzureCredential
函数来获取凭据。
from azure.identity import DefaultAzureCredential, InteractiveBrowserCredential
如果您在运行此设置时遇到任何问题,请加入我们的Azure AI 社区 Discord 或创建问题。
您现在已准备好运行本课程的代码。祝您愉快地学习 AI Agents 的世界!