从零到GPT:开源书籍如何手把手教你构建大语言模型

GitHub May 2026
⭐ 92867📈 +401
来源:GitHub归档:May 2026
一个GitHub仓库正成为从零理解大语言模型的终极实战指南。rasbt/llms-from-scratch凭借超过92,000颗星,提供了一套完整的基于PyTorch的课程体系,教你构建类似ChatGPT的LLM,并配有详尽代码注释和一本配套书籍。

由Sebastian Raschka创建的开源项目rasbt/llms-from-scratch,迅速崛起为GitHub上最受瞩目的AI教育仓库之一。它提供了一条循序渐进的、代码优先的学习路径,仅使用PyTorch,不依赖任何黑盒库,从零构建一个精神上与ChatGPT相似的大语言模型(LLM)。该项目的独特之处在于其严谨的教学法:从原始文本分词开始,完整讲解Transformer架构(多头自注意力、前馈层、层归一化),然后涵盖预训练、指令微调,甚至包括RLHF等对齐技术。配套的O'Reilly书籍《Build a Large Language Model (From Scratch)》提供了理论支撑。该项目的重要意义在于它正在将前沿AI知识民主化,让任何有Python基础的人都能深入理解LLM的内部运作机制。

技术深度解析

rasbt/llms-from-scratch 不仅仅是一个代码转储;它是一个精心编排的课程体系,反映了现代LLM的历史和技术演进。其核心架构是仅解码器Transformer,与GPT-2、GPT-3和ChatGPT属于同一家族。该仓库使用纯PyTorch从零构建这一架构,直到最后章节才引入Hugging Face Transformers等高级抽象。

架构详解:
- 分词: 项目从头实现了字节对编码(BPE),展示了原始文本如何转换为整数token ID。这是一个关键但经常被一笔带过的步骤。
- 多头自注意力: Transformer的核心。代码实现了因果(掩码)注意力、缩放点积注意力以及多个注意力头的拼接。对查询、键、值投影的解释异常清晰。
- 层归一化与前馈网络: 标准Transformer模块包含残差连接、层归一化(在每个子层之前应用,如GPT-2所示)以及一个带有GELU激活函数的两层前馈网络。
- 位置嵌入: 项目使用学习到的绝对位置嵌入,与原始GPT架构一致。
- 预训练目标: 在文本语料库上进行因果语言建模(下一个token预测)。代码包含带有交叉熵损失、学习率调度和梯度裁剪的训练循环。
- 微调: 后续章节涵盖指令微调(使用指令-响应对数据集)甚至一个简化版的RLHF(基于人类反馈的强化学习),其中包含一个奖励模型。

关键工程决策:
- 代码以清晰性而非最大性能为目标。它使用`nn.Module`子类、清晰的前向传播和大量注释。这使其成为理想的学习工具,但并非生产级训练脚本。
- 仓库通过标签进行版本控制,每个标签对应一个章节,允许学习者随时检出代码的精确状态。
- 配套书籍(O'Reilly,2024)提供数学推导和概念解释,而代码则作为可执行的参考。

与其他教育仓库的对比:

| 仓库 | 星标数(约) | 重点 | 框架 | 有配套书籍? |
|---|---|---|---|---|
| rasbt/llms-from-scratch | 92,000+ | 从零开始的完整LLM流水线 | PyTorch | 是(O'Reilly) |
| karpathy/nanoGPT | 38,000+ | 最小化GPT-2训练 | PyTorch | 否 |
| huggingface/transformers | 130,000+ | 生产就绪的模型动物园 | PyTorch/TF/JAX | 否 |
| andrej-karpathy/llm.c | 25,000+ | 纯C语言实现的GPT-2 | C/CUDA | 否 |

数据洞察: rasbt/llms-from-scratch 的星标数几乎是nanoGPT的2.5倍,尽管它更新。这表明,结构化的书籍+代码组合比仅代码的极简方法对学习者更具吸引力。

关键人物与案例研究

Sebastian Raschka(作者): 曾是Lightly的研究员,现为Lightning AI的高级研究工程师,Raschka是PyTorch生态系统中知名人物。他是畅销书《Python Machine Learning》和《Machine Learning with PyTorch and Scikit-Learn》的作者。他以清晰、实用的解释而闻名,这使得他的教育材料备受信赖。rasbt/llms-from-scratch 是他迄今为止最雄心勃勃的项目,其成功直接源于他建立的声誉。

Lightning AI(所属机构): 该公司是PyTorch Lightning(一个用于扩展PyTorch训练的流行框架)的幕后公司。虽然仓库本身与框架无关,但Raschka与Lightning AI的关联为项目带来了微妙但重要的生态系统连接。Lightning AI受益于该书所推广的PyTorch素养提升。

O'Reilly Media(出版商): 决定在开源代码之外出版实体书是一项战略举措。它验证了内容的质量,并提供了支持持续维护的收入来源。自发布以来,该书一直稳居亚马逊AI/ML畅销书排行榜前十。

与竞争性教育产品的对比:

| 产品 | 形式 | 价格 | 目标受众 | 深度级别 |
|---|---|---|---|---|
| rasbt/llms-from-scratch | GitHub + 书籍 | 免费(代码)/ ~$50(书籍) | 中级机器学习工程师 | 高(从零开始) |
| fast.ai 'Practical Deep Learning' | 课程 + 书籍 | 免费 | 初学者 | 中等(自上而下) |
| DeepLearning.AI 'Building Systems with ChatGPT' | 课程 | $49/月 | 开发者 | 低(API使用) |
| Stanford CS224n | 课程(视频+笔记) | 免费 | 研究生 | 非常高(理论性) |

数据洞察: rasbt/llms-from-scratch 占据了一个独特的甜蜜点:它比斯坦福的CS224n更注重实践,比fast.ai更严谨,比DeepLearning.AI专注于API的课程更基础。这一定位是其成功的关键。

更多来自 GitHub

无标题ccusage, created by developer ryoppippi, is a command-line tool designed to parse and analyze local JSONL log files genepgweb:开发者真正想要的极简PostgreSQL Web客户端pgweb,一个用Go编写的开源PostgreSQL Web客户端,通过解决一个简单但持久的问题——需要一个零依赖、即开即用的数据库浏览器——悄然在GitHub上积累了超过9300颗星。与需要完整Python栈或Docker设置的pgAdmAge加密:一个Go库如何成为现代安全的反GPG标准Age(Actually Good Encryption)是由前Google安全工程师、Go密码学团队成员Filippo Valsorda创建的一款极简文件加密工具和Go库。其核心理念摒弃了OpenPGP/GPG的复杂性,转而采用UNIX风查看来源专题页GitHub 已收录 1699 篇文章

时间归档

May 20261212 篇已发布文章

延伸阅读

Claude Code Usage Analytics: Why ccsage's 14K GitHub Stars Signal a Developer Tooling ShiftA new open-source CLI tool, ccsage, is quietly solving a pain point many Claude Code users didn't realize they had: undepgweb:开发者真正想要的极简PostgreSQL Web客户端pgweb是一个用Go编写的单二进制、跨平台PostgreSQL Web客户端,零依赖即可运行。它支持SSH隧道、只读模式、查询历史记录和自动补全,成为寻求pgAdmin轻量替代方案的开发者和DevOps团队的最爱。Age加密:一个Go库如何成为现代安全的反GPG标准Filippo Valsorda打造的age加密工具,已悄然成为Go生态系统中文件加密的事实标准。它没有配置选项,密钥短小精悍,原生支持SSH密钥,正在Tailscale和HashiCorp等公司的生产环境中取代GPG。Arc密钥管理器:零配置CLI工具,能否取代你的Vault?一款名为Arc的开源密钥管理器正凭借其极致的简洁性崭露头角:无依赖、无云端,仅需一个命令行界面和强加密即可运行。AINews深入探究这款极简工具,能否在企业巨头主导的市场中开辟出一片天地。

常见问题

GitHub 热点“From Zero to GPT: Inside the Open-Source Book Teaching LLMs from Scratch”主要讲了什么?

The open-source project rasbt/llms-from-scratch, authored by Sebastian Raschka, has rapidly ascended to become one of the most starred AI education repositories on GitHub. It provi…

这个 GitHub 项目在“rasbt llms from scratch vs nanoGPT which is better for learning”上为什么会引发关注?

rasbt/llms-from-scratch is not merely a code dump; it is a carefully sequenced curriculum that mirrors the historical and technical evolution of modern LLMs. The core architecture implemented is a decoder-only Transforme…

从“build chatgpt from scratch pytorch tutorial 2025”看,这个 GitHub 项目的热度表现如何?

当前相关 GitHub 项目总星标约为 92867,近一日增长约为 401,这说明它在开源社区具有较强讨论度和扩散能力。