138e8 科技新闻简报

从零训练你自己的大语言模型:一个动手实践工作坊

2026-05-05

GitHub上出现了一个名为"llm-from-scratch"的开源项目,为开发者提供了从零构建GPT训练管线的完整体验。该项目由开发者Angelos P发布,目前已获得245个星标和21个分支,在AI开发者社区中引起了广泛关注。

这个项目的灵感来自Andrej Karpathy的nanoGPT项目——一个仅用几百行PyTorch代码就能构建可运行语言模型的教程。nanoGPT的目标是复现GPT-2(1.24亿参数),覆盖了大量内容。而llm-from-scratch则将其精简到最核心的要素,模型参数规模缩小至约1000万,使得在普通笔记本电脑上训练不到一小时即可完成,专为单次工作坊课程设计。

在这个项目中,没有任何黑盒库调用——你不会看到任何类似"model = AutoModel.from_pretrained()“这样的快捷方式,一切都需要亲手构建。参与者将完整编写四个核心组件:一是分词器,负责将文本转换为模型可处理的数字序列;二是模型架构,包含Transformer的核心模块——嵌入层、注意力机制和前馈网络层;三是训练循环,涵盖前向传播、损失计算、反向传播、优化器和学习率调度策略;四是文本生成模块,从训练好的模型中进行采样输出,最终能够生成莎士比亚风格的文本。

项目对硬件要求极为友好,支持Apple Silicon GPU(MPS)、NVIDIA GPU(CUDA)或CPU自动检测运行,也可在Google Colab上使用。只需Python 3.12以上版本和基本的Python阅读能力即可参与,无需机器学习经验。


📎 原文:Train Your Own LLM from Scratch