GPT-4是如何切分文本的?How to Train Your GPT详解BPE分词器的完整原理
发布时间:2026/9/27 0:42:58 锦皓数字建站

GPT-4是如何切分文本的How to Train Your GPT详解BPE分词器的完整原理【免费下载链接】how-to-train-your-gptBuild a modern LLM from scratch. Every line commented. Explained like we are five.项目地址: https://gitcode.com/gh_mirrors/ho/how-to-train-your-gptHow to Train Your GPT 是一个从零教你搭建并训练 GPT 大模型的开源教程每一行代码都带注释。这篇文章带你弄懂其中最关键的第一步GPT-4 等现代大模型是如何切分文本的——完整拆解 BPE 分词器Byte Pair Encoding的原理、优势与实操方法。读完你就能看到 unbelievably 如何变成 un believ ably以及为什么大模型从不被新词、emoji 难倒。什么是文本分词大模型读懂文字前的第一步 计算机只认识数字不认识字母。你输入 The cat sat模型看到的其实是[464, 3797, 3332]这样的整数序列。这个文字 → 数字的转换工作就是分词Tokenization。最朴素的想法是给每个单词分配一个编号单词编号cat9246sat6734the279但这条路走不通——英文有上百万个词antidisestablishmentarianism 这种生僻词也要编号吗训练时不存在的新词比如 skibidi怎么办模型直接报错。✅ BPE 分词器给出了答案不按整词切按高频子词切。BPE分词器完整原理GPT-4切分文本的3步走BPE 的核心思想只有一句话从单个字符开始反复把出现频率最高的一对相邻符号合并成新符号。第1步统计相邻字符对的出现次数以low lower lowest为例先把每个字符当作独立 tokenl o w _ l o w e r _ l o w e s t _然后数一数哪些相邻对出现得最多例如lo出现了 4 次是最高频的一对。第2步合并最高频的字符对把l和o合并成新 tokenlo整段文本变成lo w _ lo w e r _ lo w e s t _第3步循环合并直到词表达到目标大小重复统计 → 合并最高频对low→es→est……几轮之后词表长这样{ l, o, w, e, r, s, t, _, lo, low, er, est, ... }神奇的事情发生了没见过的词也能用这些碎片拼出来slower→slower从未训练过照样能表示antidisestablishmentarianism→antidisestablishmentarianism而 GPT 系列的分词器执行了5 万次合并从全部 256 种字节出发最终得到50257 个 token50000 次合并 256 个字节 token 1 个 EOS 特殊 token。完整的逐步推演见 bpe_tokenization.md图文讲解版见 02_tokenization.md。为什么BPE比按词切分强一张表看懂问题场景整词切分BPE子词切分running vs run两个毫无关联的 token共享 runn模型能看出联系新词 rizz未知词 → 直接失败rizz字符级兜底永不出错词表大小50万又慢又臃肿5万快且均衡emoji / 中文 / 代码经常翻车基于字节处理任何文本都能编码 ⚠️ 两个容易忽略的细节空格前缀ĠGPT 分词器把空格粘在下一个词前面 Ġcat和cat是不同的 token。这让空格几乎不占额外 token编码效率更高。EOS 特殊 token【免费下载链接】how-to-train-your-gptBuild a modern LLM from scratch. Every line commented. Explained like we are five.项目地址: https://gitcode.com/gh_mirrors/ho/how-to-train-your-gpt创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。