一套带逐行注释的教程,用 Python 和 PyTorch 从零实现并训练一个类 LLaMA 架构的小型 GPT。
aa1143/NamiGPT
面向零基础读者的中文教程,用 PyTorch 从零手写 GPT-2,并以「猫吃鱼」小例子逐步讲解。
- Star
- 199
- Fork
- 20
- 未关闭 Issue
- 0
- 最近提交
- 11天前
这是什么?
NamiGPT 是一套中文入门教程,通过用 PyTorch 从零实现 GPT-2 来讲解大语言模型的工作原理。模型代码 gpt2/model.py 不到 200 行,没有调用现成的 Transformer 模块,并可加载 OpenAI 官方 124M 权重完成推理和文本生成。
教程分为 15 篇,依次覆盖分词、Embedding、位置编码、自注意力、多头注意力、残差连接、LayerNorm、前馈网络、激活函数、Transformer Block 与堆叠、权重加载、文本生成和可解释性。每一篇都配有可单独运行的脚本,统一以「猫吃鱼」三个词为例。仓库还提供基于 Gradio 的网页演示,可查看每一步的候选词概率,并附带与 HuggingFace 实现逐项对齐的测试。
文档和教程均为中文,只要求会一点 Python 和矩阵运算,不需要大模型基础。
核心功能
- 01用 PyTorch 从零实现 GPT-2,不调用现成的 Transformer 模块。
- 02可加载 OpenAI 官方 124M 权重,完成推理与文本生成。
- 03共 15 篇教程,每篇配有可单独运行的脚本。
- 04提供 Gradio 网页演示,展示每一步的候选词概率。
- 05包含与 HuggingFace 实现对齐的测试,随机权重即可运行。
适用场景
- 理解自注意力、残差连接与 LayerNorm 在 GPT 模型中如何配合。
- 用于组织 Transformer 原理的读书会或课程,代码规模小、易读。
- 对照与 HuggingFace 输出一致的参考实现,检查自己写的 GPT 是否正确。
- 在本地运行 GPT-2 续写,观察温度、top-k 等采样参数的影响。
快速上手
- 1
克隆仓库
git clone https://github.com/aa1143/NamiGPT.git - 2
进入项目目录
cd NamiGPT - 3
安装依赖
pip install -r requirements.txt - 4
运行一个教程脚本,例如多头注意力示例
python chapters/01-inference/ep06_multi_head_attention.py
使用前须知
- 它是面向初学者的教程,不是用于训练或生产推理的框架。
- docs/ 目录下的文章采用 CC BY-NC 4.0 许可,禁止商用。
- 使用的是 GPT-2 权重,它不会按指令回答问题,且训练语料以英文为主。
标签
常见问题
- NamiGPT 是什么?
- 面向零基础读者的中文教程,用 PyTorch 从零手写 GPT-2,并以「猫吃鱼」小例子逐步讲解。 NamiGPT 是一套中文入门教程,通过用 PyTorch 从零实现 GPT-2 来讲解大语言模型的工作原理。模型代码 gpt2/model.py 不到 200 行,没有调用现成的 Transformer 模块,并可加载 OpenAI 官方 124M 权重完成推理和文本生成。
- NamiGPT 可以免费使用吗?用的什么许可证?
- NamiGPT 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- NamiGPT 还在维护吗?
- 活跃维护中。NamiGPT 最近一次提交是在 2026年10月28日。
- NamiGPT 适合用来做什么?
- 理解自注意力、残差连接与 LayerNorm 在 GPT 模型中如何配合。 用于组织 Transformer 原理的读书会或课程,代码规模小、易读。 对照与 HuggingFace 输出一致的参考实现,检查自己写的 GPT 是否正确。 在本地运行 GPT-2 续写,观察温度、top-k 等采样参数的影响。
- NamiGPT 怎么安装和运行?
- 克隆仓库: git clone https://github.com/aa1143/NamiGPT.git 进入项目目录: cd NamiGPT 安装依赖: pip install -r requirements.txt 运行一个教程脚本,例如多头注意力示例: python chapters/01-inference/ep06_multi_head_attention.py
- 在哪里获取 NamiGPT?
- 源代码和安装说明在 GitHub 上:https://github.com/aa1143/NamiGPT
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
FlashAttention 官方实现,一种节省显存的精确注意力计算内核,用于 GPU 上 Transformer 模型的训练与推理。
用于从零实现 PyTorch 算子与模型结构的交互式练习平台,基于 Jupyter 自动评测。
按时间线梳理深度学习与大模型 19 个架构家族演进的可视化学习路线,从 1986 年 RNN 到 2025 年推理模型。
用 PyTorch 从零实现的 Transformer 大模型训练教程与代码库,涵盖预训练、SFT、奖励模型、DPO/PPO/GRPO 与文本生成。
一本从零开始讲解并动手实现大语言模型的中文开源教程,涵盖 Transformer、预训练、微调、RAG 与 Agent。