这不是教程,是立项书。项目名:从零手搓一个 LLM。周期:12 周。发起人、执行人、验收人:我自己。

为什么是现在

AI 已经是我日常工作的一部分:写代码、查问题、做排查、写文档,每天都用。但说实话,用得越久,心里越不踏实——我每天都在调用一个我完全不理解的东西。

它为什么能对话?为什么能写代码?为什么给它上文它就知道下一句?这些问题的答案,我一概停留在"知道名词"的水平:Transformer、注意力、训练、推理……名词都认识,连在一起就是天书。

我这辈子有个信条:想学,就实现一个。

当年 JVM 的书我看了三遍,聊起来还是东一块西一块,串不起来。后来我花了半年,用 Golang 手写了一个 JVM,从那以后,字节码在我眼里就是透明的。那一次教会我:看懂的和造出来的,是两种理解。

现在轮到 LLM 了。

立项的三个理由

一、拆掉神秘感。

新模型一个月出一个,新闻每天都在喊颠覆。我知道那里面 90% 是营销,但我没有判断力的依据——因为我不懂。不懂就只能被叙事裹挟。把 LLM 搓出来,以后看任何新模型的新闻,我看到的就不是神话,是工程。

二、检验我到底有没有真懂。

我给自己定的理解三级标准:能复述、能手算、能造。对大模型,我要直接奔第三级去。造不出来的理解,都是"以为理解"。

三、给未来的自己修一条管线。

AI 时代的开发者正在分层:一层是"会调 API 的人",一层是"懂机制、能设计 Agent 和工具链的人"。前者会越来越便宜,后者会越来越贵。我不指望靠这个转行做大模型研究,但我要站在能看懂全局的那一层。

项目目标

唯一目标:在没有任何框架黑盒的前提下,让我的手写 LLM 输出第一个属于自己的 token。

  • 语料:用我自己的语料(博客、笔记、留痕文档);
  • 平台:家里那台 Dell R730 服务器(它已经在阳台沉默很久了,该醒了);
  • 参考书:《从零构建大模型》,一章一章过,代码全部手敲;
  • 底线:不复制粘贴。每个字母亲手敲,每个概念亲手验。

军规

  1. 每周学习时长底线 5 小时,不设上限;
  2. 每周一篇三问式笔记:学了什么、哪里没懂、下周干什么;
  3. 不买新课,不囤新书,就这一本;
  4. 可以放弃,但必须写一份正式的"放弃说明"才能放弃;
  5. 每周日复盘一次,进度落后就砍范围,不砍底线。

风险与对策

  • 数学基础不够:线性代数早还给老师了。对策:用到哪补哪,不提前焦虑;
  • python 不熟:对策:敲着敲着就熟了;
  • 工作可能很忙:对策:见军规第一条,底线只有 5 小时;
  • 三分钟热度:对策:公开笔记,发在博客上,让围观成为约束。

立项批复

批准人:吕炘嵘。

批复意见:同意立项。落子无悔,愿赌服输。

立项日期:2026 年 9 月。


本系列下一篇:第二章笔记《把文本变成数字》。