返回案例页
搭建+训练复演

从 0 训练 LLaMA

不调 API、不加载权重,用 PyTorch 从零复刻 LLaMA 的 decoder-only 架构(RMSNorm / RoPE / GQA / SwiGLU / KV 缓存)并训练。理解大模型的地基。

逐层拼出 LLaMA decoder block(RMSNorm + RoPE + GQA + SwiGLU + KV 缓存),再训练:loss 曲线下降,采样生成从乱码变通顺。

LLaMATransformerRoPERMSNormPyTorch
从 0 训练 LLaMA

本地版本说明

架构组件(RMSNorm/RoPE/GQA/SwiGLU/KV缓存)是真实 LLaMA 结构,来自大模型原理正课 LLaMA 系列(视频课)。config 与 loss/step 数值为示意;浏览器里不真跑训练。

交互预览

从零搭 LLaMA 架构并训练

先逐层拼出 LLaMA 的 decoder block(RMSNorm + RoPE + GQA + SwiGLU + KV 缓存),再跑训练——看 loss 下降、生成逐渐通顺。

Decoder Block × 8

Token Embedding

RMSNorm

RoPE Self-Attention (GQA)

RMSNorm

SwiGLU FFN

最终 RMSNorm → LM Head (tied)

dim 512 · 8 layers · 8 heads / 4 KV (GQA) · vocab 32000 · 示意配置

训练 loss

step 0

采样生成(同一 prompt)

训练开始后,生成会从乱码逐步变通顺。

建议体验

搭建模型,看 decoder block 逐层拼出来。

开始训练,看 loss 曲线一步步下降。

看同一 prompt 的生成从乱码变成通顺句子。

这个试玩能说明什么

你吃透地基——从零实现 LLaMA,而不只是 import 一个模型。

你理解每个现代组件:RMSNorm / RoPE / GQA / SwiGLU / KV 缓存。

你打通上下层:KV 缓存支撑 prompt cache,架构理解支撑微调/RL 选择。

架构

Decoder-only · RMSNorm · RoPE · GQA · SwiGLU · KV 缓存(Pre-Norm)

从零

PyTorch,不加载权重——从张量到训练循环全手写

最强信号

支撑微调/RL/Agent 的地基级深度