从这里开始
如何学完一节课
每节课都按同样的顺序组织。本页说明每个环节的任务、代码的运行位置,以及练习卡住时的处理方法。开始第一节课前读一遍,遇到不清楚的步骤再回来查。
一次性配置
课程代码在你自己的电脑上运行。你可以在网站或 GitHub 阅读正文,运行代码则需要克隆仓库。只需克隆一次:
git clone https://github.com/fancyboi999/ai-engineering-from-scratch-zh.git
cd ai-engineering-from-scratch-zh
python3 phases/00-setup-and-tooling/01-dev-environment/code/verify.py --route beginner
检查会列出现在和后续需要的工具。每项失败都会输出原因和修复命令。课程命令都从仓库根目录运行,也就是包含 README.md 和 phases/ 的目录。
每节课对应一个目录,例如 phases/01-math-foundations/01-linear-algebra-intuition/。其中包含 docs/zh.md(课程正文)、code/(要构建和运行的程序)、outputs/(课程产物)和 quiz.json。初学者请从 第 0 阶段:开发环境.
阅读:摘要、问题背景、核心概念
开头几个环节解释思路。先不看代码,读完后用自己的话说两句话:它解决什么问题,又是怎么解决的。如果说不清,写代码前再读一遍核心概念。
动手构建:亲手写出最小版本
动手构建环节不用框架,用普通代码实现这个思路。完整程序在课程的 code/ 目录中,课程页面会给出运行命令,例如:
python3 phases/01-math-foundations/01-linear-algebra-intuition/code/vectors.py
- 在自己的目录(例如
scratch/)中新建文件,例如my_vectors.py。逐步输入课程代码,不要整段复制粘贴。 - 每完成一步就运行文件,对比程序输出和课程输出。
- 如果结果不同,运行
code/中的完整文件,查看参考结果。 - 改一个数值,预测新输出,再运行代码。如果预测不对,找出造成差异的那一行。
实际使用:用成熟的库完成同一件事
实际使用环节用 NumPy、scikit-learn 或 PyTorch 等常用库完成同一项工作。先写过最小版本,你就能看懂库替你做了什么。在仓库根目录创建虚拟环境,再安装依赖:
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Windows 用户将 source 那一行替换为 .venv\Scripts\activate。requirements.txt 包含整套课程的依赖。学习单课时,只安装实际使用代码导入的库即可,例如 pip install numpy。把代码写入自己的文件,运行并核对结果是否与动手构建代码一致。
拿去用:留下一件可复用的工具
拿去用环节指出本课在 outputs/ 目录中提供的文件。这个环节不需要部署,而是给日常工作留下一件工具:
- prompt(
prompt-*.md):把标题下的正文复制到 AI 助手聊天中。助手会按 prompt 描述的方式帮助你处理本课主题。 - 技能(
skill-*.md或包含SKILL.md的目录):安装到支持技能的编程 agent。示例命令python3 scripts/install_skills.py .claude/skills --phase 1在仓库根目录运行,会安装第 1 阶段的技能。将目标目录替换为所用 agent 的项目技能目录,先加--dry-run查看清单。 - agent 或 MCP 服务器:后续阶段会构建这些程序,课程会说明启动方法。
打开产物并阅读。改一行,让它更适合你的工作。每周都用的工具,比只读过的工具更能帮助你学习。
练习:逐题完成的步骤
练习不直接给答案。按以下步骤完成:
- 复述任务。写清输入是什么,输出应该是什么。
- 预测。写代码前先手算一个小例子,例如两个各含两个数的向量。
- 从课程代码出发。多数练习是在动手构建代码上新增一个函数或做一项修改。先找与任务最接近的函数。
- 写出最小版本,先让小例子运行正确。
- 检查。与预测对比,再测试一个边界情况,例如零向量或空列表。
许多课程在练习后设有提示。每条提示给出第一步和检查答案的方法。先尝试上述步骤,再打开提示。
总结:复习速查表
部分课程以总结结尾,用一页汇总重要公式、定义和直觉。把它当作速查表:做练习前浏览一遍,开始下一课前再读一遍。
课程还提供可打印的速查表。每份围绕一个主题,例如 RAG 或 LLM 服务,用一两页列出任务、命令、带注释的代码、图表、默认值和修复办法。每个区块链接到相应课程,课程页也列出相关速查表。做练习时可以放在旁边查阅。
测验与检查点
网站每节课顶部有五个检查点:阅读、构建、运行、证明和继续。完成后逐项标记。课末测验检查主要概念,进度只保存在当前浏览器中。当你能解释代码输出,并且能有依据地做一项小修改时,再进入下一课。
项目:按目标选择
项目是分阶段构建的较大程序,每个阶段都有测试。完成项目所需的课程阶段后再开始。
- 按求职目标选项目时,打开实战项目,在按角色选择中选择职位。列表会从易到难展示能证明相应能力的项目。
- 要查看某个角色需要的课程,打开学习路径。每条职业路线都以可证明能力的项目阶段收尾。
- 初学者从第 1 级开始。完整做完一个项目,再开始第二个。
卡住时怎么办
记录命令、运行目录和完整报错。常见原因是目录不对、缺少依赖或 Python 版本过旧。重新运行环境检查。如果仍有问题,搜索 问题列表,或到讨论区提问。附上课程路径、命令和报错。