跳到正文

正在自动登录…

← 返回项目列表

aa1143/NamiGPT

模型原理学习

面向零基础读者的中文大模型入门教程,从零手写GPT-2,用“猫吃鱼”例子逐步拆解推理过程,并加载官方权重实现文本生成。

AI 中文解读 · 根据仓库描述与 README 生成 · 2026/10/28 15:36:20 · 查看原文

普通Python教程与文档
累计 Stars
67
当前热度
1 天内 · 小火
仓库创建时间
打开 GitHub ↗项目网站 ↗

选用指南

AI 根据 README 整理 · 2026/10/28 15:36:20

目标用户

面向零基础中文读者,需要会一点Python和线性代数基础。

查看 README 依据
<img src="assets/matrix-attention.gif" alt="用「猫吃鱼」一格一格算注意力分数" width="100%"> </div> 不需要大模型基础,会一点 Python、懂矩阵乘法这样的线性代数基础就够了。我们用 PyTorch 从零手写一个 GPT-2,加载 OpenAI 官方权重,跑通推理和文本生成。 - 不调用任何现成的 Transformer 模块,模型代码 [`gpt2/model.py`](gpt2/model.py) 不到 200 行 - 用一个 3 个词的例子「猫吃鱼」,从分词一路推到文本生成,每篇都配可运行脚本 - 和 HuggingFace 官方实现逐项对齐,[测试](tests/test_vs_huggingface.py)保证结果一致 ## 学之前,先看这两份可视化 **1. 先看懂 Transformer 原论文的架构图** GPT-2 的骨架来自 2017 年的论文 *Attention Is All You Need*(GPT-2 只用了图中右半边的解码器部分)。我把论文里最有名的这张架构图做成了动态版:按数据流动的顺序一步步高亮,每一步都配有原文和白话解释。
使用方式

提供可单独运行的演示脚本,以及可导入的GPT-2实现和Gradio网页演示。

查看 README 依据
| 15 | Interpretability 可解释性 | [网页](https://namiai.tech/articles/interpretability/) | [md](docs/01-inference/15-interpretability.md) | [ep15](chapters/01-inference/ep15_interpretability.py) | 每个脚本都可以单独运行,例如: ```bash python chapters/01-inference/ep06_multi_head_attention.py ``` --- ## 快速开始 ```bash git clone https://github.com/aa1143/NamiGPT.git cd NamiGPT pip install -r requirements.txt # 国内网络建议先设置 HuggingFace 镜像(只用来下载官方权重) export HF_ENDPOINT=https://hf-mirror.com ``` ```python import tiktoken, torch from gpt2 import from_pretrained, generate enc = tiktoken.get_encoding("gpt2")
model = from_pretrained("gpt2") # 手写模型 + 官方 124M 权重 ids = torch.tensor([enc.encode("The cat sat on the")]) out = generate(model, ids, max_new_tokens=30, temperature=0.8, top_k=50) print(enc.decode(out[0].tolist())) ``` 网页版演示(续写 + 每一步的候选词概率): ```bash pip install gradio python demo/app.py ``` > GPT-2 没有经过对话微调,它只会「接着往下写」,不会回答问题;训练语料以英文为主,建议输入英文。 --- ## 仓库结构 ``` NamiGPT/ ├── gpt2/ # 完整的 GPT-2 实现,可以直接 import │ ├── config.py # 模型配置(124M / 355M / 774M / 1.5B) │ ├── model.py # 模型本体:LayerNorm、Attention、FFN、Block、GPT
部署要求

需要Python 3.9+和PyTorch 2.x,国内网络可设置HuggingFace镜像下载官方权重。

查看 README 依据
<div align="center"> <img src="assets/logo.png" alt="NamiGPT logo" width="120"> # NamiGPT **零基础入门大模型(LLM)的基础教程**<br> 从零手写 GPT-2,一行行看懂大模型是怎么工作的 [![test](https://github.com/aa1143/NamiGPT/actions/workflows/test.yml/badge.svg)](https://github.com/aa1143/NamiGPT/actions/workflows/test.yml) [![Python](https://img.shields.io/badge/Python-3.9+-3776AB?logo=python&logoColor=white)](https://www.python.org/) [![PyTorch](https://img.shields.io/badge/PyTorch-2.x-EE4C2C?logo=pytorch&logoColor=white)](https://pytorch.org/) [![Code License](https://img.shields.io/badge/Code-MIT-green)](LICENSE)
| 15 | Interpretability 可解释性 | [网页](https://namiai.tech/articles/interpretability/) | [md](docs/01-inference/15-interpretability.md) | [ep15](chapters/01-inference/ep15_interpretability.py) | 每个脚本都可以单独运行,例如: ```bash python chapters/01-inference/ep06_multi_head_attention.py ``` --- ## 快速开始 ```bash git clone https://github.com/aa1143/NamiGPT.git cd NamiGPT pip install -r requirements.txt # 国内网络建议先设置 HuggingFace 镜像(只用来下载官方权重) export HF_ENDPOINT=https://hf-mirror.com ``` ```python import tiktoken, torch from gpt2 import from_pretrained, generate enc = tiktoken.get_encoding("gpt2")
已知限制

GPT-2未经过对话微调,只会续写不会回答问题;训练语料以英文为主,建议输入英文。

查看 README 依据
model = from_pretrained("gpt2") # 手写模型 + 官方 124M 权重 ids = torch.tensor([enc.encode("The cat sat on the")]) out = generate(model, ids, max_new_tokens=30, temperature=0.8, top_k=50) print(enc.decode(out[0].tolist())) ``` 网页版演示(续写 + 每一步的候选词概率): ```bash pip install gradio python demo/app.py ``` > GPT-2 没有经过对话微调,它只会「接着往下写」,不会回答问题;训练语料以英文为主,建议输入英文。 --- ## 仓库结构 ``` NamiGPT/ ├── gpt2/ # 完整的 GPT-2 实现,可以直接 import │ ├── config.py # 模型配置(124M / 355M / 774M / 1.5B) │ ├── model.py # 模型本体:LayerNorm、Attention、FFN、Block、GPT

README

正在加载 README…

收录信息

仓库创建时间
2026/10/28 08:57:01
首次达标收录
2026/10/28 15:31:46
统计更新时间
2026/10/28 16:41:19

按创建时长与累计 Stars 判断等级。首次达标收录后,即使未达当前门槛仍保留;累计 Stars 和仓库状态会定期更新。确认只有 README 及辅助文件的仓库会停止公开。

模型评估

普通加权总分 3.4 / 5

新颖度
2.0
实用价值
3.6
成熟度
4.7
实质含量
4.1

由 Jev 模型根据仓库描述与 README 评估,2026/10/28 15:31:46 生成。评分仅供参考,不是代码、安全或许可证审查;热度等级另按创建时长与累计 Stars 计算。

仓库信息

最近推送
2026/10/28 10:50:50
许可证标识
MIT
Fork 数
2
当前状态
未归档

收录记录

按创建时长与累计 Stars 首次收录:小火
首次发现项目