你是否好奇 ChatGPT、LLaMA 这些大模型到底是怎么“长”出来的?不是调用 API,也不是魔改 Hugging Face 模型,而是真正从 tokenizer、矩阵乘法、注意力机制一行行亲手敲出来?这个 GitHub 项目就是专为「想彻底搞懂 LLM 底层原理」的学习者打造的交互式教科书——它用 3900 多行带完整注释的 Python 代码,把最前沿的 LLaMA-3 风格架构拆解成 12 个渐进章节,像教小朋友一样讲清楚每个变量为什么存在、每行代码在解决什么问题。
核心功能
- 全链路从零实现:覆盖分词器(Tokenizer)、词嵌入(Embedding)、RMSNorm 归一化、RoPE 位置编码、多头注意力(Multi-Head Attention)、SwiGLU 激活函数、KV 缓存优化等现代 LLM 核心组件
- 100% 行级中文注释:每一行代码都附带清晰解释,不跳步、不假设背景知识,比如“这行是计算 QK^T,本质是在让模型‘看’句子中哪些词该互相注意”
- 真实可运行的训练闭环:不仅构建模型,还包含完整的数据加载、混合精度训练(AMP)、梯度裁剪、学习率调度和单卡微调流程,支持在消费级显卡(如 RTX 4090)上跑通小规模实验
- 对标工业级架构设计:严格遵循 LLaMA-3 的工程规范(非简化版 Transformer),包括分组查询注意力(GQA)、权重初始化策略、无 bias 层设计等关键细节
- 交互式学习体验:全部基于 Jupyter Notebook 实现,边读边改边运行,支持实时可视化 attention map、打印中间 tensor 形状、插入断点调试前向传播全过程
- 纯教学导向,零黑盒依赖:不使用任何预训练权重、不调用 transformers 或 accelerate 库,所有逻辑均用原生 PyTorch 实现,确保你看到的就是“真实世界”的代码逻辑
适合哪些人用
如果你是:刚学完 Python 基础、想系统突破深度学习瓶颈的在校学生;转行进入 AI 领域、被“Attention 是什么”反复卡住的工程师;或是教学一线希望给学生讲透 LLM 原理的高校教师——这个项目就是为你量身定制的。它不要求你熟悉 PyTorch 高级 API,也不需要 CUDA 编程经验;但要求你愿意花时间逐行阅读、动手复现、并享受“原来如此!”的顿悟时刻。
快速上手
只需三步:① 安装 Python 3.9+ 和 PyTorch(pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121);② 克隆仓库:git clone https://github.com/raiyanyahya/how-to-train-your-gpt.git;③ 进入目录后运行 jupyter notebook,按顺序打开 chapter_01_tokenizer.ipynb 到 chapter_12_inference_engine.ipynb 即可开始沉浸式学习。推荐搭配 VS Code + Jupyter 插件,开启“代码高亮+实时输出”双模式体验更佳。
项目信息
raiyanyahya/how-to-train-your-gpt
GitHub
Build a modern LLM from scratch. Every line commented. Explained like we are five.
1.1k
Stars
149
Forks
Jupyter Notebook
MIT
编程语言:Jupyter Notebook(Python + PyTorch)|Star 数:1108|开源协议:MIT|GitHub 项目地址
这不是一个拿来即用的推理工具,而是一把帮你亲手锻造理解力的“认知铁锤”——当你能独立写出一个具备基础生成能力的小型 LLM,你就真正跨过了大模型世界的门槛。


