Karpathy 打包了一个极简仓库扔出来,让人周末玩,野心不小。这包我第一时间点进去看了,看完倒吸凉气。看完倒吸一口凉气。凉气来自它背后的分工设计,设计简单到残忍,残忍在哪。残忍在它把研究这活的两半分得干干净净,干净的分工在下面摆着,摆好了你一看就懂,看吧。
代码是从 nanochat 的训练核心里剥出来的,剥到只剩单卡单文件。六百三十行左右,六百三十行这个体量小到让人怀疑人生。怀疑完就信了,信的是体量小才能读完。读完才能改。改得动才是自己的。
自己的东西才敢交出去让机器接手,接手的分工是这样的,人负责迭代提示词那个点文件。机器负责迭代训练代码那个点派文件,一人一边互不越界。越界的实验我做过,做过的人知道有多乱。乱的实验最后连自己改了什么都找不回来。找不回来的实验等于白做,白做的时间是科研里最贵的浪费。
这个项目真正值钱的不是那六百三十行代码,是它把科研的完整循环塞进了一个周末能跑完的体量里。周末能跑完意味着试错成本低到可以随便玩。玩着玩着就摸出门道。门道比代码值钱,代码网上一搜一堆,门道得自己撞,撞墙的疼是免费的,免费的疼最难忘。
难忘的疼长记性,记性长了下一次就绕开了。绕开的路多了就是经验,经验攒够了你看什么项目的结构都一眼透。透了就不用再问为什么,为什么三个字留给新手。老手直接动手,动手的先看仓库,仓库在下段,下段真的到了。
仓库地址在这。github.com/karpathy/autor… ,单卡就能跑,文件就一个,读完你会发现研究这活的门槛被拆掉了一半。拆掉的那半是工具,剩下的那半是你的脑子,脑子带够了就开机。开机之后的第一个五分钟训练,跑完你就懂我说的循环是什么了,懂的散会,句号。
31 浏览 0 评论
0 反应















