现在,训练一个GPT-2级别的LLM(大语言模型),成本已经低于100美元。
Andrej Karpathy的个人项目nanochat迎来重大更新。
现在,训练一个GPT-2级别的LLM(大语言模型),成本已经低于100美元。
具体来说,在单个8XH100节点上,仅需3小时,花费约73美元。
Karpathy直言,GPT-2是他最喜欢的LLM,因为它是LLM技术栈首次以现代形式整合在一起的标志。这也成了他某种“奇怪且持久的执念”:利用过去7年的技术进步,以极低的成本将模型训练到GPT-2的能力水平。
他一直怀疑,如今要在100美元以内实现这一目标完全是可行的。
而现在的nanochat,做到了
7年,600倍的成本缩减
让我们把时间拨回2019年。
当时,OpenAI为了训练GPT-2,使用了32个TPU v3芯片,耗时168小时(整整7天)。按照当时每小时8美元的TPU价格计算,总成本约为4.3万美元
那个模型在CORE评分(DCLM论文提出的一种综合指标,涵盖ARC/MMLU等22项评估)上,得分为0.256525
现如今,随着nanochat合并了一系列改进(许多源自modded-nanogpt仓库),Karpathy在单个8XH100节点上,仅用3.04小时(约73美元)就达到了更高的CORE评分
这不仅仅是快了,更是省了。
这是一次跨越7年的600倍成本降低。换算下来,训练GPT-2的成本大约每年下降2.5倍。
Karpathy认为,这个数字可能还是被低估了。因为他目前仍在定期发现更多的改进空间,手头还有一个充满想法的积压清单等待尝试。
核心优化技术栈
为了达到这个效果,Karpathy列出了几项“开箱即用”且效果立竿见影的关键改进:
Flash Attention 3 kernels:速度更快,并且允许使用window_size参数来获得交替的注意力模式。
Muon 优化器:Karpathy表示自己曾尝试花了一天时间去掉它,只用AdamW,但没能成功(Muon不可或缺)
门控残差路径和跳跃连接:由可学习的标量进行门控
Value Embeddings(值嵌入)
当然,还有许多较小的优化叠加在一起产生了最终的效果。
“通往GPT-2”排行榜
受modded-nanogpt的启发,Karpathy还专门创建了一个“通往GPT-2时长”(time to GPT-2)的排行榜。
目前,这个首发的“Jan29”模型以3.04小时的成绩位列榜首。
Karpathy希望nanochat能成长为一个非常精简且经过调试的实验性LLM工具,用于原型设计、娱乐,当然还有学习。他对此充满期待,并欢迎大家一起来迭代。
关于优化的详细细节和复现指南,Karpathy已在GitHub上发布了详细的长文。他还放出了一张推导当前nanochat模型系列Scaling Laws(缩放定律)的图表,并称之为“令人满意的视觉糖果”
Github讨论页指路:https://github.com/karpathy/nanochat/discussions/481