ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

generative-ai-for-beginners 本地环境搭建指南:venv、Dev Container、Miniconda 与 Jupyter 四条路径及 .env 密钥配置

generative-ai-for-beginners 本地环境搭建指南:venv、Dev Container、Miniconda 与 Jupyter 四条路径及 .env 密钥配置 generative-ai-for-beginners 本地环境搭建指南venv、Dev Container、Miniconda 与 Jupyter 四条路径及 .env 密钥配置【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners本篇指南覆盖 generative-ai-for-beginners 课程21 课时的生成式 AI 入门课程在本地电脑上的完整搭建流程原生 Python 虚拟环境、VS Code Dev ContainerDocker、Miniconda、浏览器版 Jupyter 四条可选路径以及课程代码运行的前提——.env文件创建与模型 API 密钥的安全加载。读完并按步骤操作后你可以在自己的笔记本上运行课程中全部 Python 示例与*.ipynb笔记本并通过 shared/python/env_utils.py 提供的环境变量校验机制确认配置就绪。原始文档见 00-course-setup/02-setup-local.md下文在其骨架上结合仓库真实配置文件与源码进行了扩充。前置条件与工具版本核验在开始任何一条路径之前先确认本机工具链。文档给出的前置要求如下工具版本 / 说明Python3.10 及以上仓库 pyproject.toml 中requires-python 3.10官方 Python 网站可下载Git最新版macOS 随 Xcode 附带 / Windows 版 Git / Linux 包管理器安装VS Code可选但推荐Docker Desktop仅选项 B 需要免费安装提示– 在终端中核验各工具python --version、git --version、docker --version、code --version关于 Python 版本有一个可核实的仓库证据pyproject.toml 声明requires-python 3.10且 classifiers 中明确列出了 Python 3.10 / 3.11 / 3.12 三个目标版本.devcontainer/environment.yml 则固定使用python3.10.0作为 Dev Container 环境的基准版本。因此3.10 是下限3.10–3.12 是经过课程声明支持的版本区间。路径 A原生 Python 虚拟环境最快这是文档标注为 “quickest” 的路径适合只想尽快跑起代码的读者。第 1 步克隆仓库课程建议先 Fork 仓库到自己账号这样才可以修改代码、完成各课时的 challenge然后克隆# 克隆你自己的 fork地址替换为你 fork 后的仓库地址 git clone your-fork-url/generative-ai-for-beginners # 或克隆课程仓库本身 git clone https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners cd generative-ai-for-beginners第 2 步创建并激活虚拟环境python -m venv .venv # 创建虚拟环境 source .venv/bin/activate # macOS / Linux 激活 .\.venv\Scripts\activate # Windows PowerShell 激活✅ 激活成功后命令行提示符前会出现(.venv)前缀——说明你已进入该环境。这里可以补充一个仓库侧的细节.venv已被 .gitignore 显式忽略第 123–124 行同时忽略了.env与.venv因此虚拟环境目录不会污染版本控制。第 3 步安装依赖pip install -r requirements.txt依赖清单核对仓库根目录的 requirements.txt 实际包含以下包安装后应能在虚拟环境中全部看到ipywidgets8.1.8 numpy2.4.2 matplotlib3.10.8 pandas3.0.0 tqdm4.68.4 python-dotenv1.2.2 openai1.12.0 tiktoken azure-ai-inference scikit-learn其中python-dotenv文档中.env加载环节的核心依赖、openai与azure-ai-inference模型 API 客户端是最关键的三个。若后续要参与课程代码质量检查lint / 格式化 / 类型检查 / 测试可参考 pyproject.toml 中[project.optional-dependencies]定义的 dev 组black、isort、mypy、ruff、pytest、pytest-covpip install -e .[dev] # 可选同时安装开发工具链pyproject.toml 还内置了blackline-length 100target py310–py312、ruff含S安全规则集、pytesttestpaths [tests]等工具配置——这解释了为什么 Dev Container 的后置脚本会安装 ruff/black/mypy/pytest见下文路径 B它们与.github工作流中执行的检查保持一致。完成依赖安装后跳到下文 配置 API 密钥。路径 BVS Code Dev ContainerDocker本仓库在根目录的.devcontainer/文件夹中随附了开发容器配置文档说明该容器采用 Universal runtime可支持 Python 3、.NET、Node.js 与 Java 开发相关配置定义在 devcontainer.json 文件中。为什么选这条路与 Codespaces 环境完全一致无依赖漂移no dependency drift。第 0 步安装附加组件Docker Desktop —— 确认docker --version可正常执行VS Code 的 Remote – Containers 扩展扩展 IDms-vscode-remote.remote-containers。第 1 步在 VS Code 中打开仓库菜单File ▸ Open Folder…→ 选择generative-ai-for-beginners目录。 VS Code 检测到.devcontainer/后会弹出提示。第 2 步Reopen in Container点击 “Reopen in Container”。Docker 首次构建镜像大约需要 3 分钟。当终端提示符出现在容器内时你就在容器里了。容器配置源码解析结合仓库实际配置文件可以看清容器初始化时到底发生了什么.devcontainer/devcontainer.json{ name: Generative AI For Beginners, image: mcr.microsoft.com/devcontainers/universal:2.13, // 通用镜像一次覆盖多语言运行时 hostRequirements: { cpus: 4 }, // 宿主机至少 4 核 waitFor: onCreateCommand, updateContentCommand: python3 -m pip install -r requirements.txt, // 每次打开时重装课程依赖 postCreateCommand: bash .devcontainer/post-create.sh, // 容器首次创建后的初始化 customizations: { vscode: { extensions: [ ms-python.python, ms-toolsai.jupyter, charliermarsh.ruff, github.copilot, ... ] } } }updateContentCommand保证每次重开容器都会执行pip install -r requirements.txt使依赖与 requirements.txt 保持同步postCreateCommand指向 .devcontainer/post-create.sh从该脚本源码看它会补装python-dotenv、openai脚本注释说明requirements.txt无法完全覆盖的部分并安装ruff black mypy pytest四个开发工具“与.github/workflows/code-quality.yml中运行的检查保持一致方便贡献者在提 PR 前本地复现”customizations.vscode.extensions预装了 Python、Pylance、Jupyter、black-formatter、ruff、ESLint、Prettier、Copilot 等扩展并设置了editor.formatOnSave及按语言划分的默认格式化工具。也就是说文档中“与 Codespaces 环境一致”的说法有具体依据同一份devcontainer.json在本地 Dev Container 与 Codespaces 中通用。路径 CMinicondaMiniconda 是安装 Conda、Python 及少量包的精简安装器。Conda 本身是一个包管理器方便创建和切换不同的 Python虚拟环境与依赖包并且擅长安装pip渠道不可用的包。第 0 步安装 Miniconda按官方 MiniConda 安装指南命令行快速安装一节完成安装然后核验conda --version第 1 步创建虚拟环境文件创建一个新的环境描述文件environment.yml。如果你是在 Codespaces 中跟随操作请把它放在.devcontainer目录内即.devcontainer/environment.yml。仓库对照本仓库根目录 .devcontainer/environment.yml 已随附一份现成文件可作为模板——它声明了python3.10.0、openai、python-dotenv并通过pip:子段安装azure-ai-inference。第 2 步填充环境文件文档给出的environment.yml片段如下environment-name与python-version需替换为你自己的取值name: environment-name channels: - defaults - microsoft dependencies: - pythonpython-version - openai - python-dotenv - pip - pip: - azure-ai-ml字段说明name是环境名channels指定包来源microsoft渠道提供微软的 AI 相关包dependencies中前四项由 Conda 解析pip:子段交给 pip 安装用于 Conda 渠道没有的包。第 3 步创建并激活 Conda 环境在命令行/终端执行# .devcontainer 子路径仅适用于 Codespace 场景 conda env create --name ai4beg --file .devcontainer/environment.yml conda activate ai4beg如果在使用 Conda 时遇到错误可以改用命令手动安装微软 AI 库这条修复也出现在下文故障排查表中conda install -c microsoft azure-ai-ml路径 D经典 Jupyter / Jupyter Lab浏览器中运行适用人群偏爱经典 Jupyter 界面或希望在不用 VS Code 的情况下运行笔记本的读者。第 1 步确保 Jupyter 已安装在终端/命令行中进入课程目录然后执行jupyter notebook或jupyterhub这会启动一个 Jupyter 实例访问地址会打印在命令行窗口中。打开该 URL 后你应该能看到课程目录结构并能导航到任意*.ipynb文件。例如08-building-search-applications/python/oai-solution.ipynb该文件确实存在于仓库中。课程各课时的笔记本按oai-*、aoai-*、githubmodels-*前缀区分模型提供方运行前同样需要完成下文的.env密钥配置。配置 API Key.env 文件构建任何应用时妥善保管 API 密钥都很重要。文档明确建议不要把 API 密钥直接写在代码里。把这些信息提交到公共仓库可能带来安全隐患甚至被滥用产生意外费用。以下是文档给出的、为 Python 创建.env文件并添加 Microsoft Foundry Models 凭据的分步指南注意GitHub Models及其GITHUB_TOKEN变量将于 2026 年 7 月底退役本指南改用 Microsoft Foundry Models。如需完全离线工作可参考 Foundry Local。进入项目目录打开终端或命令提示符切换到要创建.env的项目根目录cd path/to/your/project创建.env文件用你喜欢的文本编辑器新建一个名为.env的文件。若使用命令行Unix 系系统touch .envWindowsecho . .env编辑.env文件用文本编辑器VS Code、Notepad 或任意编辑器打开.env加入以下两行将占位符替换为你的 Microsoft Foundry 项目端点与 API 密钥AZURE_INFERENCE_ENDPOINTyour_foundry_endpoint_here AZURE_INFERENCE_CREDENTIALyour_foundry_api_key_here保存文件保存更改并关闭编辑器。安装python-dotenv若尚未安装需要python-dotenv包把.env中的变量加载进 Python 应用。它已包含在 requirements.txt版本固定为 1.2.2路径 A 执行pip install -r requirements.txt后即已就绪否则单独安装pip install python-dotenv在 Python 脚本中加载环境变量from dotenv import load_dotenv import os # 从 .env 文件加载环境变量 load_dotenv() # 读取 Microsoft Foundry Models 变量 endpoint os.getenv(AZURE_INFERENCE_ENDPOINT) token os.getenv(AZURE_INFERENCE_CREDENTIAL) print(endpoint)完成以上六步你就成功创建了.env文件、写入了 Microsoft Foundry Models 凭据并把它加载进了 Python 应用。切勿提交.env——它已在 .gitignore 的忽略清单中第 123 行.env第 124 行.venv。各模型提供方的完整获取说明见 00-course-setup/03-providers.md。源码佐证课程代码如何校验这些变量文档给出的os.getenv是基础用法课程仓库在 shared/python/env_utils.py 中提供了更严格的环境变量工具函数供各课时代码复用get_required_env读取必需的环境变量缺失或为空时抛出带提示信息的ValueError“Missing required environment variable: … Please set it in your .env file or environment.”——这正是.env配错时你会看到的报错形态validate_env_vars一次校验多个变量名把所有缺失项汇总成一条错误信息后抛出get_env_with_default读取带默认值的变量例如模型名。对应的测试用例在 tests/test_env_utils.py 中可验证上述函数的缺失/存在两种分支行为。此外shared/python/api_utils.py 在创建客户端时也会回退读取OPENAI_API_KEY/AZURE_OPENAI_API_KEY等环境变量并在缺失时给出明确报错见 api_utils.py 第 81–84 行 与 第 127–137 行。从源码结构看不同课时的脚本可能读取不同前缀的变量名AZURE_INFERENCE_*、AZURE_OPENAI_*、OPENAI_API_KEY因此配置完.env后用env_utils的校验函数或本文第 6 步的print(endpoint)做一次快速核验是排查“变量没生效”问题最直接的办法。下一步我想要…去哪里开始第 1 课01-introduction-to-genai配置一个 LLM 提供方providers.md与其他学员交流加入课程官方 Discord链接见课程 00-course-setup/README.md故障排查文档给出的完整排查表如下原文症状 → 修复动作症状修复python not found把 Python 加入 PATH或安装后重开终端pip无法构建 wheelWindows执行pip install --upgrade pip setuptools wheel后重试ModuleNotFoundError: dotenv执行pip install -r requirements.txt说明环境依赖未安装Docker 构建失败No space leftDocker Desktop ▸Settings▸Resources→ 增大磁盘容量VS Code 反复提示 reopen你同时启用了两种模式只能二选一venv或containerOpenAI 401 / 429 错误检查OPENAI_API_KEY的取值 / 请求速率限制Conda 使用报错用conda install -c microsoft azure-ai-ml安装微软 AI 库结合仓库配置可再补充两条判断依据出现“反复提示 reopen in container”通常意味着本机 Python 环境与 Dev Container 同时处于激活状态本机.venv已激活 容器也在运行。选定路径 A 后可在 VS Code 弹窗中选择 “Dont Reopen in Container” 并确认终端 kernel 指向(.venv)在 Dev Container 内遇到依赖缺失时可手动在容器终端执行python3 -m pip install -r requirements.txt重放 devcontainer.json 中updateContentCommand定义的命令快速定位是镜像问题还是 requirements 问题。四种路径怎么选路径适合谁关键要求主要配置入口A 原生 Python venv想最快跑起来、已有 Python 环境Python 3.10、Gitrequirements.txtB VS Code Dev Container要求零依赖漂移、与 Codespaces 一致Docker Desktop、Remote-Containers 扩展.devcontainer/devcontainer.jsonC Miniconda习惯 Conda 生态、需要 pip 渠道外的包Miniconda.devcontainer/environment.yml模板D Jupyter偏好浏览器笔记本界面已安装 Jupyter无直接jupyter notebook四条路径最终都汇入同一件事在仓库根目录备好.env含AZURE_INFERENCE_ENDPOINT与AZURE_INFERENCE_CREDENTIAL确认 shared/python/env_utils.py 的校验逻辑能读到变量即可从 01-introduction-to-genai 开始课程。【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表