首页
/ generative-ai-for-beginners 完整课程指南:用 21 课系统掌握生成式 AI 应用开发

generative-ai-for-beginners 完整课程指南:用 21 课系统掌握生成式 AI 应用开发

2026-09-06 18:24:46作者:秋泉律Samson

本仓库是一套名为 Generative AI for Beginners(课程版本号为 Version 3)的开源课程:由微软云布道团队(Microsoft Cloud Advocates)维护的 21 个独立课时,覆盖从生成式 AI 与 LLM 原理、提示词工程,到文本/图像/搜索应用构建、RAG、Agent、微调与 LLMOps 的完整学习路径。无论你从零入门还是已经会写 Python/TypeScript,都可以按本文梳理的课程地图、目录结构与运行准备,快速确定从哪个课时切入,并在本仓库内找到对应 README、可运行示例与练习文件。本文依据该仓库的 translations/bn/README.md(课程首页 README 的孟加拉语翻译版)撰写,所有章节与文件链接均已转换为以仓库根目录为起点的相对路径,可直接在仓库内跳转查阅。

课程是什么:21 课、随时可切入的模块化学习

根据首页 README 的说明,这是一套共 21 个课时(外加第 0 课的开发环境准备)的完整课程,每个课时都聚焦一个独立主题,因此可以从任意感兴趣的课时开始,不必按顺序线性读完。

课时采用两种清晰的标签来区分定位:

  • Learn(学)型课时:解释某个生成式 AI 概念,帮助建立原理认知;
  • Build(构建)型课时:在解释概念的同时,给出可在本仓库中直接运行的代码示例,并尽可能同时提供 PythonTypeScript 两个版本。

此外,每个课时还包含一个 "Keep Learning"(继续学习)小节,罗列额外学习资源;部分课时附有短视频介绍(个别课时标注为"视频即将推出",例如第 19、20、21 课)。对于 .NET 开发者,课程生态还提供了独立的 .NET 版本课程《Generative AI for Beginners (.NET Edition)》。

值得说明的是,首页 README 的全量课程目录表格(编号 00~21)、课时分类、运行环境要求等内容,是本仓库对外的"课程门户",本文后续章节将逐项展开并落到仓库内的具体目录与文件上。

运行课程代码需要准备什么

三个可选的大模型服务,对应三套练习命名

课程的代码不是只绑定一家供应商的。首页 README 明确列出三套可选服务,每套服务在练习与示例文件中都有独立的命名前缀:

服务 对应课时/代码前缀 说明
Azure OpenAI Service aoai-assignment 以 Azure OpenAI 为后端的练习与示例
GitHub Marketplace Model Catalog(GitHub Models) githubmodels 通过 GitHub 模型目录运行的示例
OpenAI API oai-assignment 以 OpenAI 官方 API 为后端的练习与示例

也就是说,当你在课时目录里看到 aoai-app.pyoai-assignment.ipynbgithubmodels-app.py 这类文件时,文件名前缀就代表了它接入的服务后端。读者可以在三家中任选其一即可跑通整套课程代码。作为补充,本仓库英文版根 README(README.md)当前版本还提示:GitHub Models 将于 2026 年 7 月底停止服务,建议改用 Microsoft Foundry Models(Azure AI Foundry 模型目录);因此以本仓库当前状态为准时,新增的 Foundry 系列接入方式也值得关注。

基础知识与账号要求

  • 具备 Python 或 TypeScript 的初级知识会很有帮助(零基础读者可先从对应语言的基础课程入手);
  • 需要一个 GitHub 账号,用于把整个仓库 fork 到自己的账号下,从而自由修改代码并完成挑战;
  • 课程还专门准备了第 0 课 Course Setup,用于帮助你搭建开发环境。

开发环境:fork → Codespaces → 密钥

第 0 课 00-course-setup/README.md 给出了推荐的环境搭建路径:

  1. Fork 本仓库到自己的 GitHub 账号(也可顺手将仓库加星,便于日后查找);
  2. 创建 Codespaces:在 fork 后的仓库中进入 Code -> Codespaces -> New on main,以容器化方式运行课程,从而规避本地依赖问题;
  3. 添加环境变量/密钥:通过 Codespaces 的 "Manage user secrets" 添加名为 OPENAI_API_KEY 的密钥并填入你的 Key。

该目录下还细分了三份配套文档,可分别查阅:

这些文档中还提供了 .env 文件的通用做法(Unix 用 touch .env、Windows 用 echo . > .env),随后用 python-dotenv 把凭据加载进应用。仓库层面的依赖与封装也印证了这一约定:根目录 requirements.txt 列出的 python-dotenvopenai>=1.12.0tiktokenazure-ai-inference 等正是运行示例所需的核心依赖;而公共工具模块 shared/python/api_utils.py 中提供的 create_openai_client() 会优先从 OPENAI_API_KEY 环境变量读取密钥,同文件的 create_azure_openai_client()shared/python/api_utils.py)则从 AZURE_OPENAI_ENDPOINTAZURE_OPENAI_API_KEY 读取 Azure 端点与密钥,并自动拼装 <endpoint>/openai/v1/ 作为 base_url。仓库还配套了 tests/ 目录下的单元测试(如 test_env_utils.pytest_api_utils.py),供你验证环境与工具函数行为。

克隆策略:50+ 语言仓库的 sparse checkout 实践

这是一个重要的实操细节。由于首页 README 声明仓库内含 50 多种语言的翻译(完整的翻译内容位于 translations/translated_images/),整仓下载体积会明显偏大。如果你只想要英文课程内容本身、不希望下载全部翻译,README 推荐使用 Git 的 sparse checkout(稀疏检出)加 blob 过滤来克隆:

Bash / macOS / Linux:

git clone --filter=blob:none --sparse https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners.git
cd generative-ai-for-beginners
git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'

CMD(Windows):

git clone --filter=blob:none --sparse https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners.git
cd generative-ai-for-beginners
git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"

这样只检出课程主体(/*)而排除 translationstranslated_images 两个目录,可以在显著加快下载的同时,获得完成课程所需的全部文件。

多语言支持与翻译说明

该课程具备成熟的多语言体系,首页 README 中的语言切换表即覆盖 50 余种语言。语言目录遵循统一约定:

  • 各语言课程文本位于 translations/<语言代码>/ 下(例如本文档所在的 translations/bn/ 即孟加拉语);
  • 各语言译文对应的本地化图片位于 translated_images/<语言代码>/ 下,文件名带有哈希后缀(如 translated_images/bn/repo-thumbnailv4-fixed.11f1ce6a85d01461.webp)。

翻译通过 GitHub Actions 自动维护,能保持与英文正文同步更新。同时,翻译文件页脚带有明确声明:这类译文由 AI 翻译服务 Co-op Translator 自动生成,可能存在误差,权威文本应以原始语言(英文)的文档为准,重要信息建议参考专业人工翻译。这一点对读者有实际参考价值——当发现某个译文的表述与英文存在出入时,请回到根目录的 README.md 与各课时的英文 README 核对。

每个课时里有什么

仓库首页 README 统一说明了课时构成,这也是你进入任意一个 NN-*/ 课时目录后可以看到的标准结构:

  • 一段该主题的短视频导览(存放在课时 README 头部);
  • 写在课时目录 README 中的完整文字课程;
  • 同时支持 Azure OpenAI 与 OpenAI API 的 Python 与 TypeScript 代码示例
  • 指向更多资源的额外学习链接(即每个课时 README 中的 "Keep Learning" 部分)。

从仓库目录结构可以印证这一点:多数课时目录下都包含 images/(课时横幅图与示意图)、python/js-githubmodels/typescript/ 等代码目录,例如 06-text-generation-apps09-building-image-applications 等。在 06~09 等课时下还能看到 dotnet/notebook-azure-openai.dib 这类面向 .NET 的 Azure OpenAI 实验笔记本文件。

课程全目录(编号 00~21)

下表完整继承首页 README 的课程目录,并将每个课时链接转换为仓库根目录下的相对路径。类型列区分 "Learn(概念课)" 与 "Build(实践课)":

# 课时模块(仓库链接) 类型 主题说明
00 Course Setup 如何搭建你的开发环境
01 Introduction to Generative AI and LLMs 生成式 AI 是什么、大语言模型(LLMs)如何工作
02 Exploring and Comparing Different LLMs 如何为你的使用场景选择正确的模型
03 Using Generative AI Responsibly 如何负责任地构建生成式 AI 应用
04 Understanding Prompt Engineering Fundamentals 动手实践提示词工程最佳实践
05 Creating Advanced Prompts 应用提示词工程技术改善提示输出效果
06 Building Text Generation Applications 构建 用 Azure OpenAI / OpenAI API 构建文本生成应用
07 Building Chat Applications 构建 高效构建并集成聊天应用的技术
08 Building Search Apps Vector Databases 构建 用 Embeddings 实现数据检索的搜索应用
09 Building Image Generation Applications 构建 构建图像生成应用
10 Building Low Code AI Applications 构建 使用低代码工具构建生成式 AI 应用
11 Integrating External Applications with Function Calling 构建 什么是 Function Calling 及其应用场景
12 Designing UX for AI Applications 开发生成式 AI 应用时如何应用 UX 设计原则
13 Securing Your Generative AI Applications AI 系统面临的威胁与风险及安全防护方法
14 The Generative AI Application Lifecycle 管理 LLM 生命周期与 LLMOps 的工具与指标
15 Retrieval Augmented Generation (RAG) and Vector Databases 构建 使用 RAG 框架从向量数据库检索 Embeddings 的应用
16 Open Source Models and Hugging Face 构建 使用 Hugging Face 上的开源模型构建应用
17 AI Agents 构建 使用 AI Agent 框架构建应用
18 Fine-Tuning LLMs LLM 微调的 What、Why 与 How
19 Building with SLMs 用小语言模型(Small Language Models)构建的优势(视频即将推出)
20 Building with Mistral Models Mistral 模型家族的特性与差异(视频即将推出)
21 Building with Meta Models Meta 模型家族的特性与差异(视频即将推出)

按学习阶段看:01~05 与 12~14、18~21 属于概念(Learn)阶段,先建立对 LLM 原理、提示词工程、负责任 AI、UX 与安全、生命周期与微调等方向的认知;06~11 与 15~17 属于构建(Build)阶段,覆盖文本生成、聊天、搜索、图像、低代码、函数调用、RAG、开源模型与 AI Agents 等动手主题。两阶段均可按需跨入。

实践课代码资产在仓库中的分布

为便于按课时索引代码,下面把 Build 型课时在仓库中的关键实现资产梳理如下(均为仓库内真实存在的路径,可作为深入阅读的起点):

需要说明的是,各课时之间文件命名存在共性规律:以 aoai-oai-githubmodels- 开头区分后端服务(对应上文三套运行选项),assignment 表示带作业任务的练习、solution/app 表示参考答案或完整示例,.ipynb 笔记本与 .py 脚本并存,方便在 IDE 或 Jupyter 两种模式下运行。

课程首页 README 的其余要点

  • 继续学习与"构建就绪":若希望进一步挑战生产级示例,README 提示课程生态提供了更进阶的生成式 AI 代码示例合集(Python/TypeScript 双语言)供查阅;
  • 学习者支持渠道:可通过课程对应的官方 Discord 服务器与其他学习者交流求助,也可在产品官方开发者论坛提问或反馈意见;
  • 版权与贡献:仓库以开源许可发布,允许就拼写或代码错误提交 Issue 或 Pull Request;首页还特别致谢了维护全部 GitHub Actions/工作流的 John Aziz,以及为各课时学习者与代码体验做出关键改进的 Bernhard Merkle。

结语:一份可直接照着走的课程地图

综合来看,translations/bn/README.md(即课程首页 README)本身就是一张可执行的路线图:先按"三选一"准备服务凭据(Azure OpenAI / GitHub Models / OpenAI API),再通过 fork + Codespaces 或 sparse checkout 就绪环境,然后从 00 课开始,沿 Learn 概念课→Build 实践课的路径,在仓库各 NN-*/ 目录内对照 README 与示例代码逐课推进即可。当你在调试中遇到依赖或环境问题,优先回到 00-course-setup 的排障表,并对照英文原文(根目录 README.md 及各课时 README)确认翻译版本的表述差异。这套课程仓库的可贵之处,正是把"概念 → 代码 → 练习"三层内容按课时完整沉淀在同一个仓库里,方便随时检索、复用与二次开发。

登录后查看全文
热门项目推荐
相关项目推荐