2026-01-04 · AI
32
AI · 2026-01-04

Karpathy神经网络07:GPT - 从零实现ChatGPT

本文是《Karpathy神经网络零基础课程》系列文章

← 上一篇:Karpathy神经网络06:WaveNet - 神经网络大升级 | → 下一篇:Karpathy神经网络08:Tokenizer - 为什么AI不识数


这是一篇为你准备的、关于如何从零开始构建一个“迷你版ChatGPT”的学习笔记。这篇文章假设你是一个对人工智能充满好奇的初中生,我们将一起跟随 Andrej Karpathy 老师(前特斯拉AI总监),揭开现在最火的 AI——ChatGPT 背后的神秘面纱。


【AI 揭秘】手把手带你造一个迷你版 ChatGPT:从零读懂 Transformer

你好!你一定用过 ChatGPT 吧?它能写诗、写代码、甚至讲笑话。但你有没有想过,在这个看似聪明的对话框背后,到底藏着什么秘密?

是因为它背诵了整个互联网吗?还是因为它真的有“大脑”?

在这堂硬核课程中,Karpathy 老师带我们做了一件很酷的事情:不依赖现成的复杂工具,用最基础的代码(Python 和 PyTorch),从零开始搭建一个“迷你版 ChatGPT”。我们不仅要让它跑起来,还要用它来模仿莎士比亚写剧本!

准备好了吗?让我们开始这场 AI 探险!


第一步:机器怎么“读书”?(Tokenization)

首先,我们要解决一个大问题:电脑是不认识“字”的,它只认识数字。

要把《莎士比亚全集》喂给 AI,我们需要做一个翻译工作:

  1. 建立字典:把所有出现的字母(a, b, c...)、标点符号都列出来。
  2. 数字化:给每个字符分配一个身份证号。比如 'a' 是 1,'b' 是 2。
  3. 结果:一句“Hi there”在电脑眼里,就变成了一串数字列表,比如 [46, 47, 12, ...]

知识点:这个过程叫 Tokenization(分词)。ChatGPT 用的是更高级的单词片段(Token),但为了简单,我们今天只用字符(Character)。


第二步:核心魔法——注意力机制(Self-Attention)

这是整个 GPT 最最最核心的部分!也是 AI 能理解“语境”的关键。

1. 为什么以前的 AI 很笨?

以前的模型(比如 Bigram)就像金鱼,记忆力只有 7 秒。它看到“I love apple”,只知道“love”后面常接“apple”,但它不知道前面是谁在 love,也不知道 apple 是指手机还是水果。

2. 让文字“互相交流”

GPT 的核心叫 Transformer,它的绝招是自注意力机制(Self-Attention)
想象一下,句子里的每个字都是一个学生。为了理解整句话的意思,他们需要互相“传纸条”。

但在传纸条时,有一套严格的规则,我们称之为 Q、K、V

就像约会软件配对一样:如果 A 的 Query 和 B 的 Key 匹配度很高,他们之间的“注意力”就很强,信息就会流动过去。

3. 不能偷看答案(Masking)

因为我们是在训练 AI 预测下一个字,所以第 5 个字只能看前 4 个字的信息,绝对不能偷看第 6 个字!
这在数学上叫 Masking(掩码)——把未来的信息全部遮住(设为负无穷大),确保 AI 只能从过去学习。


第三步:三个诸葛亮,顶个诸葛亮(Multi-Head Attention)

如果只有一组 Q、K、V,可能只能关注到一种关系(比如语法)。但语言很复杂!
所以,我们设计了 多头注意力(Multi-Head Attention)

最后,把所有“头”收集到的信息拼在一起,AI 就对这句话有了全方位的理解。这就好比用多路摄像头从不同角度观察同一个物体。


第四步:给 AI 装上“大脑”和“高速公路”

光有“交流”还不够,AI 还需要“思考”。

  1. 前馈网络(Feed Forward)
    在每一次“注意力交流”之后,每个字都会把收集到的信息拿回去,经过一个简单的神经网络进行处理。这就好比学生们讨论完题目后,自己再独立思考消化一下。
  2. 残差连接(Residual Connections)——高速公路
    随着网络越来越深(很多层),数据传着传着可能会丢失(迷路)。
    我们在每一层旁边修了一条“高速公路”,让数据可以直接跳过处理层,传到下一层。这让即使是几百层深的 GPT-3 也能顺利训练。
  3. 位置编码(Positional Encoding)
    注意力机制有个缺点:它不知道“我爱你”和“你爱我”的区别,因为它不看顺序。所以,我们必须给每个字贴上一个位置标签(我是第1个字,你是第2个字),这样 AI 就能分清语序了。

第五步:实战演练——训练我们的小莎士比亚

我们将所有这些组件拼装在一起,就得到了一个 Decoder-only Transformer(只有解码器的 Transformer),这正是 GPT 的架构。

虽然逻辑有点不通,但看起来真的像莎士比亚写的剧本!这仅仅是因为它通过数学公式,学会了字符之间的概率关系。


总结:从“鹦鹉学舌”到“智能助手”

我们在视频里做出来的模型叫 nanoGPT(只有约 1000 万个参数)。
而真正的 GPT-3 是这个架构的放大版:

最后的彩蛋
现在的 ChatGPT 之所以能回答问题,不仅仅是因为它读了很多书(预训练 Pre-training),还因为它经过了人类老师的专门辅导(微调 Fine-tuning),学会了如何做一个有礼貌、有帮助的助手,而不是仅仅像我们的模型一样只会续写剧本。

给初中生的建议
不要被复杂的名词吓倒!每一个复杂的 AI,本质上都是由简单的加法、乘法和这些精巧的结构(像乐高积木一样)搭建起来的。如果你对编程感兴趣,Python 和 PyTorch 就是你手中的乐高积木。

去试试看 Karpathy 老师的开源项目 nanoGPT 吧,也许下一个改变世界的 AI 架构师就是你!


返回系列总览

👉 Karpathy神经网络零基础课程:完整课程大纲

目录 最新
← 左侧翻上一屏 · 右侧翻下一屏 · 中间唤出菜单