摘要:本文是《从梯度到大模型:LLM 系统实践课》的开篇导览,介绍课程的设计理念、适用人群、六个阶段的学习路线、每节课的完成标准以及实验记录原则,帮助读者建立一条从基础计算到 LLM 应用与研究专题的可执行学习路径。
课程:《从梯度到大模型:LLM 系统实践课》
形式:概念讲解 + 可运行代码 + 对照实验 + 课后验收。
建议节奏:每周 1~2 课。
为什么要做这套课程
学习大模型时,我们很容易陷入两个极端。一个极端是长时间学习数学和理论,却始终没有跑通完整实验;另一个极端是复制 Notebook 或 API 示例,看到程序输出结果,却不知道数据如何流动、参数如何更新,也不知道结果是否可信。
这套课程希望建立一条可以执行的路线:理解必要原理 → 运行最小示例 → 改变一个变量 → 对比结果 → 分析失败样本 → 通过验收。
目标不是“看完 32 课”,而是真正建立从基础计算到 LLM 应用及研究专题的完整能力链。
这套课程适合谁
- 会一些 Python,但对 NumPy、梯度和 PyTorch 还不熟悉。
- 使用过大模型,但希望理解其工作方式。
- 会调用模型 API,但不知道如何系统评估输出质量。
- 想学习 Transformer、微调、Agent 或 RLHF,却不知道从何开始。
- 希望每个知识点都有代码、实验和验收结果,而不只停留在概念层面。
开始课程不要求掌握高等数学,也不要求拥有独立 GPU。前期内容可在普通电脑上完成;后期会明确区分必做实验和需要更多算力的选做实验。
第一阶段:数学与 NumPy
- NumPy 数组、形状与广播。
- 矩阵乘法与线性模型。
- Loss、梯度与学习率。
- 数值梯度检查。
阶段成果:仅使用 NumPy 实现线性回归,并验证梯度公式。
第二阶段:PyTorch 训练
- Tensor、dtype、device 与 shape。
- Autograd 自动求导。
- Dataset 与 DataLoader。
- nn.Module、Loss 与 Optimizer。
- FashionMNIST 训练与评估。
- Checkpoint、随机种子与错误分析。
阶段成果:建立可重新训练、独立评估和中断恢复的图像分类实验。
第三阶段:Transformer 基础
- NLP 任务、语料与 Token。
- Tokenizer、ID、Mask 与 Padding。
- Embedding 与位置信息。
- Attention 的 Query、Key 和 Value。
- Transformer Block 与残差连接。
- Decoder 生成与 temperature、top-k、top-p。
阶段成果:追踪文本从 Tokenizer 输入到生成下一个 Token 的数据流和 shape 变化。
第四阶段:提示与评估
- 模型 API、密钥与调用记录。
- 零样本、少样本与结构化输出。
- 分步推理、CoT 与程序求解。
- 评测集、指标、失败样本与成本。
阶段成果:建立包含 30 条样本的小型评测集,对比不同提示方法并分析失败样本。
第五阶段:微调与部署
- Transformers 工具链与预训练模型。
- 文本分类数据与可重复划分。
- BERT 分类的前向计算。
- 微调、学习率与 Checkpoint。
- 评估、数据泄漏与错误分析。
- 推理入口与 Gradio 本地部署。
阶段成果:完成一个可重训、可独立评估、可本地操作的文本分类项目。
第六阶段:进阶专题
- 数学推理与蒸馏。
- 多模态模型。
- GUI Agent 的感知、决策与动作。
- Agent 风险、越狱、水印与隐写。
- 知识编辑。
- SFT、奖励模型、PPO 与 RLHF。
这些属于专题课。完成前五个阶段后,可按个人方向选择,不必同时展开。
一节课怎样才算完成
每节课使用相同的节奏:
- 明确本课要解决的问题。
- 通过最小示例理解概念。
- 运行完整代码并记录环境与输出。
- 每次只改变一个变量,对照实验结果。
- 主动制造一次错误,从现象定位原因。
- 独立完成验收题并用自己的话复盘。
把示例运行成功并不等于已经掌握。当你能解释输入和输出、修改关键参数、预测变化结果并诊断一个常见错误时,这节课才算完成。
实验记录原则
每次实验至少保存:
- Python 和主要依赖版本。
- 运行命令与配置。
- 随机种子和数据版本。
- 关键指标、输出和图片。
- 失败样本与原因分析。
如果调用在线模型,API Key 必须通过环境变量或密钥管理方式提供,不得写入代码、Notebook、截图或公开文章。
参考资料与版权说明
专题实验会参考开源项目《动手学大模型 Dive into LLMs》,并按照适合初学者的顺序重新组织。文章使用自己的表达和经过验证的示例;引用外部代码、图片或观点时,将保留来源和许可信息。
- 《动手学大模型 Dive into LLMs》:https://github.com/Lordog/dive-into-llms
- NumPy 官方文档:NumPy documentation — NumPy v2.5 Manual
- PyTorch 官方教程:Welcome to PyTorch Tutorials — PyTorch Tutorials 2.14.0+cu130 documentation
- Hugging Face Transformers 文档:https://huggingface.co/docs/transformers/
资料访问日期:2026-09-13。
下节预告
下一课是Lesson 001:NumPy 数组、形状与广播。我们将解决一个贯穿深度学习全过程的问题:数组的 shape 究竟表示什么?为什么两个 shape 不同的数组有时仍然可以相加?