Repolode
rasbt

rasbt/LLMs-from-scratch

配套《从零构建大语言模型》一书的代码,用 PyTorch 分步实现类 GPT 的大语言模型。

Star
106,975
Fork
16,469
未关闭 Issue
4
最近提交
19天前

这是什么?

本仓库包含使用 PyTorch 从零开发、预训练和微调类 GPT 大语言模型的代码,不依赖外部 LLM 库。代码按书中章节组织,涵盖文本数据处理与分词、注意力机制、搭建 GPT 模型、无标注数据预训练、分类微调以及指令微调。

主线代码可在普通笔记本上于合理时间内运行,检测到 GPU 时会自动使用。附加的 bonus 目录还涉及 BPE 分词器、KV cache、分组查询注意力、多头潜在注意力、混合专家模型(MoE)、DPO 偏好微调和 LoRA,并提供 Llama 3.2、Qwen3、Gemma 3 等架构的从零实现,以及加载较大预训练模型权重进行微调的方法。

项目是 Manning 出版社同名图书的官方配套代码,同时提供配套视频课程和推理模型方向的续作。

核心功能

  • 01不依赖外部 LLM 库,用 PyTorch 分步实现类 GPT 模型
  • 02涵盖分词、注意力、预训练、分类微调和指令微调
  • 03可在普通笔记本上运行,有 GPU 时自动使用
  • 04提供 BPE、KV cache、MoE、DPO、LoRA 等扩展材料
  • 05包含 Llama 3.2、Qwen3、Gemma 3 等架构的从零实现

适用场景

  • 通过亲手编写代码,理解大语言模型的内部工作原理
  • 配合《从零构建大语言模型》图书或视频课程学习
  • 在笔记本上预训练小型 GPT 模型,用于教学和实验
  • 通过可读的 PyTorch 代码研究现代注意力变体和模型架构

快速上手

  1. 1

    使用浅克隆方式下载代码仓库

    git clone --depth 1 https://github.com/rasbt/LLMs-from-scratch.git
  2. 2

    按照 setup 文件夹中的指南安装 Python 和所需依赖包

  3. 3

    打开主章节笔记本,例如 ch02/01_main-chapter-code/ch02.ipynb

使用前须知

  • 元数据中的许可证显示为 NOASSERTION,即许可条款不明确,复用前应先核实。
  • 这是一本书的配套代码,主要是学习用的笔记本和脚本,而不是可直接安装使用的软件包或应用程序。

标签

常见问题

LLMs-from-scratch 是什么?
配套《从零构建大语言模型》一书的代码,用 PyTorch 分步实现类 GPT 的大语言模型。 本仓库包含使用 PyTorch 从零开发、预训练和微调类 GPT 大语言模型的代码,不依赖外部 LLM 库。代码按书中章节组织,涵盖文本数据处理与分词、注意力机制、搭建 GPT 模型、无标注数据预训练、分类微调以及指令微调。
LLMs-from-scratch 可以免费使用吗?用的什么许可证?
LLMs-from-scratch 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
LLMs-from-scratch 还在维护吗?
活跃维护中。LLMs-from-scratch 最近一次提交是在 2026年10月2日。
LLMs-from-scratch 适合用来做什么?
通过亲手编写代码,理解大语言模型的内部工作原理 配合《从零构建大语言模型》图书或视频课程学习 在笔记本上预训练小型 GPT 模型,用于教学和实验 通过可读的 PyTorch 代码研究现代注意力变体和模型架构
LLMs-from-scratch 怎么安装和运行?
使用浅克隆方式下载代码仓库: git clone --depth 1 https://github.com/rasbt/LLMs-from-scratch.git 按照 setup 文件夹中的指南安装 Python 和所需依赖包 打开主章节笔记本,例如 ch02/01_main-chapter-code/ch02.ipynb
在哪里获取 LLMs-from-scratch?
源代码和安装说明在 GitHub 上:https://github.com/rasbt/LLMs-from-scratch

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目