Repolode
aa1143

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. 1

    克隆仓库

    git clone https://github.com/aa1143/NamiGPT.git
  2. 2

    进入项目目录

    cd NamiGPT
  3. 3

    安装依赖

    pip install -r requirements.txt
  4. 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 数据每日更新。

相关项目