news 2026/9/8 19:05:10

用 GitHub Codespaces 免安装跑通生成式 AI 课程:generative-ai-for-beginners 云端环境搭建实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用 GitHub Codespaces 免安装跑通生成式 AI 课程:generative-ai-for-beginners 云端环境搭建实战

用 GitHub Codespaces 免安装跑通生成式 AI 课程:generative-ai-for-beginners 云端环境搭建实战

【免费下载链接】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 课程仓库中的「课程环境准备 · 云端方案」文档(对应仓库 translations/et/00-course-setup/01-setup-cloud.md 与 00-course-setup/01-setup-cloud.md 的同主题英文原文)整理而成。核心回答一个问题:不想在本地装任何依赖时,如何用 GitHub Codespaces 在几分钟内获得一个 Python、Node.js、.NET、Java 全就绪的浏览器版 VS Code。读完你将掌握:一键 Fork 并创建 Codespace 的完整路径、课程预构建开发容器的真实配置、以及用 Codespaces Secrets 安全注入OPENAI_API_KEY(或回退到.env文件)的正确姿势,并了解常见故障的排查思路。


一、为什么这套课程建议直接上云?

本仓库是一个包含 21 讲内容的生成式 AI(GenAI)入门课程,动手环节覆盖 Python 文本生成应用、聊天机器人、向量检索、图像生成、函数调用、微调等,依赖涉及 OpenAI SDK、Azure OpenAI、tiktoken、dotenv 等多种环境。如果在本地逐一手动配置,很容易在依赖版本、虚拟环境上消耗大量时间。因此课程配套的环境说明给出了一条"云端零安装"路径,其理由可以概括为下表:

优势对学习者的实际意义
✅ 零安装Chromebook、iPad、学校机房电脑等任意带浏览器的设备都能直接开工
✅ 预配置开发容器Python 3、Node.js、.NET、Java 等运行时已内置,不必手动装
✅ 免费配额个人账户每月可获得120 核时 / 60 GB 时的免费用量

配额健康提醒

💡 保持配额健康的办法是及时停止(Stop)删除(Delete)闲置的 Codespace,操作路径为:View ▸ Command Palette ▸Codespaces: Stop Codespace。容器虽然可以随时重建,但一直挂机的容器会持续消耗月度配额。

“预配置开发容器”并非一句口号,仓库根目录下的 .devcontainer/devcontainer.json 就是实打实的构建配方。从该文件可以看到:

  • 使用官方通用镜像mcr.microsoft.com/devcontainers/universal:2.13——这是 GitHub Codespaces 的通用开发容器模板(基于 github/codespaces-jupyter 起步),Python、Node.js、.NET、Java、Jupyter 等运行时均已预装;
  • 宿主要求至少cpus: 4,说明容器构建与后续跑模型推理时对算力有基本预期;
  • updateContentCommand会在内容拉取后执行python3 -m pip install -r requirements.txt,即课程根目录 requirements.txt 中锁定的依赖(openai>=1.12.0python-dotenvtiktokenazure-ai-inferencenumpypandasipywidgetsscikit-learn等)会被自动安装;
  • postCreateCommand会继续执行 .devcontainer/post-create.sh,补齐python-dotenvopenai以及ruff black mypy pytest等开发工具链;
  • customizations.vscode段会预装ms-python.pythonms-python.vscode-pylancems-toolsai.jupyterms-python.black-formattercharliermarsh.ruffdbaeumer.vscode-eslintesbenp.prettier-vscode等扩展,并开启保存即格式化,让入门者直接获得接近工程化的编辑体验。

这意味着你在浏览器里打开的那一刻,各章节示例代码的运行环境已经基本就绪,唯一需要你自己提供的就是后续提到的 API Key。


二、一键创建你的第一个 Codespace

整套流程只有两步,全程不需要本地命令行:

  1. Fork 本仓库:点击仓库右上角的Fork按钮,把它复制到自己的 GitHub 账户下(Fork 之后你才能自由修改代码、提交作业);
  2. 在自己的 Fork 上创建 Codespace:点击Code ▸ Codespaces ▸ Create codespace on main,如上图所示,在 Codespaces 标签页中点击绿色Create codespace on main按钮。

操作完成后,浏览器会打开一个基于 VS Code 的窗口,并开始构建开发容器。首次构建大约需要2 分钟(取决于网络与镜像拉取速度),之后再次打开基本是秒级恢复。

课程配套的 00-course-setup/README.md 还给出了同一个流程的替代入口(Code → Codespaces → New on main),两者等价。如果不希望在云端而打算在本地运行,可参考同目录下的 00-course-setup/02-setup-local.md。

构建一旦卡住超过 10 分钟怎么办?详见文末「常见问题排查」章节,通常执行一次Rebuild Container即可恢复。


三、安全地注入 API Key:首选 Codespaces Secrets

课程代码(如各章的 Python 应用与 notebook)运行时需要读取 LLM 服务商凭据。把它们写进源码或普通文件是明显的安全隐患。课程给出了两种方案,其中方案 A 是官方推荐做法。

方案 A:Codespaces Secrets(推荐)

在浏览器版 VS Code 中完成以下三步,即可把 Key 配置成对当前用户生效的 Codespace 密文:

  1. 点击左下角⚙️ 齿轮图标Command Palette(命令面板)→ 执行Codespaces: Manage user secret(管理用户级 Secret)→ 选择Add a new secret
  2. NameOPENAI_API_KEY(名称必须严格一致);
  3. Value粘贴你的 API Key → 点击Add secret保存。

完成后无需重启或额外配置——课程代码会自动从环境变量中识别这个值。需要说明的是:

  • 这类 Secret 是按“用户级”存储在 GitHub 侧并被加密注入容器的,不会出现在仓库文件里,也不会被git提交;
  • 它对你名下的所有 Codespace 统一生效,换新项目、重建容器都不必重配;
  • 变量缺失时并非“静默失败”。仓库在 shared/python/env_utils.py 中提供了get_required_env(var_name, description)validate_env_vars(*var_names)两个校验工具:若os.getenv(var_name)为空,会抛出包含变量名与提示信息的ValueError(如Missing required environment variable: OPENAI_API_KEY... Please set it in your .env file or environment.)。从源码结构可以推断,课程的 Python 示例正是通过这类工具统一读取环境变量,这也是“自动识别”能够成立的前提。

方案 B:.env文件(确有需要时的回退方案)

如果你处于无法使用 Codespaces Secrets 的场景(例如部分组织策略限制),也可以使用本地.env文件:

cp .env.copy .env code .env # 填入 OPENAI_API_KEY=your_key_here

命令执行完毕后,用 VS Code 打开.env补全密钥。仓库根目录的 .env.copy 是官方提供的模板,从中可以看清课程实际支持的凭据体系,绝不止一个变量:

# OpenAI Provider OPENAI_API_KEY='<add your OpenAI API key here>' # Azure OpenAI in Microsoft Foundry AZURE_OPENAI_API_VERSION='2024-10-21' # 默认已填(当前稳定 GA 版本) AZURE_OPENAI_API_KEY='<add your Foundry resource key here>' AZURE_OPENAI_ENDPOINT='<add your Foundry resource endpoint here>' AZURE_OPENAI_DEPLOYMENT='<add your chat completion model deployment name here>' AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT='<add your embeddings model deployment name here>' # Microsoft Foundry Models(多厂商模型目录,一个端点同时覆盖 OpenAI/Meta/Mistral 等) AZURE_INFERENCE_ENDPOINT='<add your Microsoft Foundry project endpoint here>' AZURE_INFERENCE_CREDENTIAL='<add your Microsoft Foundry Models API key here>' # Hugging Face HUGGING_FACE_API_KEY='<add your HuggingFace API or token here>'

关于各服务商的注册与取值细节,课程在 00-course-setup/03-providers.md 中有专门说明(如何获取 OpenAI / Azure OpenAI / Microsoft Foundry Models 的端点与密钥),建议首次使用时对照阅读。

需要强调.env方案的几个使用前提:

  • 复制后立即补全并妥善保管.env是敏感文件,虽然已被仓库的.gitignore排除、不会被提交,但它以明文存放在工作区,务必注意保密;
  • 依赖 dotenv 库:课程根目录 requirements.txt 及 .devcontainer/post-create.sh 都已包含python-dotenv,notebook 与脚本运行时无需额外安装;
  • 两条路线不冲突:当环境中同时存在 Secrets 注入的变量与.env文件时,实际以你使用的 API 客户端(openaiazure-ai-inference等)默认读取逻辑为准。课程官方仍以**方案 A(Secrets)**为首选,因为它避免把任何明文密钥留在文件系统里。

四、打开容器后:验证环境与后续路径

容器构建完成、密钥就绪后,可以快速验证三件事:

  1. Python 可用:在集成终端执行python --version,应看到容器内置的 Python 3;
  2. 依赖可导入:执行python -c "import openai, dotenv; print('ok')",无报错即表示 OpenAI SDK 与 dotenv 已就位;
  3. Notebook 内核正常:若打开.ipynb提示无内核,在 Notebook 菜单执行Kernel ▸ Select Kernel ▸ Python 3即可(详见下文排查表)。

完成上述环境准备后,下一步就进入正式课程:

  • 第一篇正文:01-introduction-to-genai/README.md(生成式 AI 与 LLM 入门);
  • 云端以外的备选路径:00-course-setup/02-setup-local.md(本地安装)与 00-course-setup/03-providers.md(配置 LLM 服务商);
  • 想要先动手跑代码的,可以从 06-text-generation-apps/python/ 下的文本生成示例开始。

五、常见问题排查(基于课程官方环境文档整理)

结合课程环境说明 00-course-setup/README.md 中维护的 Troubleshooting 表,把 Codespace 使用中最高频的几类问题整理如下:

症状处理方法
容器构建卡住超过 10 分钟Codespaces ➜ Rebuild Container(重建容器)
终端提示python: command not found终端未正确挂载到容器;点击终端区+➜ 选择bash重新打开
OpenAI 返回401 UnauthorizedOPENAI_API_KEY填写错误或已过期,重新检查 Secret 名称与值
VS Code 一直显示 “Dev container mounting…”刷新浏览器标签页——Codespaces 偶发连接中断,重刷即可恢复
Notebook 内核缺失Notebook 菜单 ➜Kernel ▸ Select Kernel ▸ Python 3

另外把第一节提到的配额管理再强调一次:月度 120 核时 / 60 GB 时对轻度学习足够,但如果让多个容器长期挂机,很快就会被耗尽。用完即停(Codespaces: Stop Codespace)、长期不用即删,是保证整个学习周期配额不断档的最有效手段。


六、小结

决策点推荐做法依据位置
要不要本地安装?优先用 GitHub Codespaces00-course-setup/01-setup-cloud.md
开发环境从哪来?仓库自带 dev container 自动构建.devcontainer/devcontainer.json
API Key 放哪?Codespaces Secrets(用户级,变量名OPENAI_API_KEYshared/python/env_utils.py、.env.copy
环境变量如何被代码消费?os.getenv+ 缺失即报错提示shared/python/env_utils.py
构建/运行出问题找谁?官方 Troubleshooting 表00-course-setup/README.md

对绝大多数“只想学 AI、不想折腾环境”的入门者而言,GitHub Codespaces 是把本课程跑起来成本最低的路径:Fork → Create codespace on main → 注入 Secret → 打开第 1 讲,全程只需一个浏览器和大约两分钟等待。需要说明的是,免费配额数值(120 核时 / 60 GB 时)与容器镜像版本均以官方实时政策与仓库当前配置为准,如遇变动请以 GitHub 当前文档与仓库.devcontainer配置为最终依据。

【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/8 19:03:58

FPGA选型与替代实战:从供应链风险到国产化迁移的工程指南

1. 跳出“等货”思维&#xff1a;先看懂这次短缺为什么不一样这几年做硬件的人&#xff0c;几乎没有谁没被FPGA的货期和价格折腾过。早些年我们聊FPGA选型&#xff0c;第一反应是看逻辑资源、看高速串行收发器、看开发环境顺不顺手&#xff1b;现在聊FPGA&#xff0c;第一句往往…

作者头像 李华
网站建设 2026/9/8 19:00:35

基于微信小程序的高校浴室预约系统源码+文档

温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台…

作者头像 李华
网站建设 2026/9/8 19:00:30

基于微信小程序的智慧旅游服务平台的设计与实现源码+文档

温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台…

作者头像 李华
网站建设 2026/9/8 18:58:04

FPGA实现DDS信号发生器:Verilog代码与调试要点

简介&#xff1a;以FPGA为平台实现直接数字频率合成&#xff08;DDS&#xff09;的完整工程资料包&#xff0c;适合数字电路、通信电子线路课程设计&#xff0c;以及备战电子设计竞赛的本科生和研究生。内容不仅包含Verilog源码与仿真工程&#xff0c;还配有视频教学和原理图、…

作者头像 李华
网站建设 2026/9/8 18:55:28

数字员工与SaaW全景:从技术真伪到商业落地

过去半年&#xff0c;只要打开任何一场软件发布会的录像&#xff0c;几乎都能听见“数字员工”三个字。但常年蹲在企业数字化一线的同行们心里都清楚&#xff0c;大部分号称“数字员工”的产品&#xff0c;本质上是RPA脚本换了件大模型外套&#xff0c;再加一个聊天对话框而已。…

作者头像 李华