MiniMind:3 块钱、2 小时、从零训练一个 64M 大模型

仓库:jingyaogong/minimind 语言:Python(PyTorch 原生) 协议:Apache 2.0 Trending:1005 stars/day

仓库jingyaogong/minimind
语言:Python(PyTorch 原生)
协议:Apache 2.0
Trending:1005 stars/day

一句话

一个从零开始、不依赖 transformers/trl/peft 高级封装的完整 LLM 训练项目——预训练、SFT、LoRA、RLHF-DPO、RLAIF(PPO/GRPO/CISPO)、Tool Use、Agentic RL、蒸馏全覆盖,64M 参数,单卡 3090 两小时跑完,成本 3 块人民币。


场景开篇

你想学大模型。你打开 Hugging Face,看到 transformers 库:

from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3-7B")
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3-7B")
# 完事了

你跟着教程跑通了推理。然后你想"训练"一个模型,发现 trl 库给你一个 SFTTrainer

from trl import SFTTrainer
trainer = SFTTrainer(model=model, dataset=dataset, ...)
trainer.train()
# 完事了

你跑通了。但你心里清楚:你不知道 from_pretrained 里发生了什么,不知道 SFTTrainertrain() 里 loss 怎么算的,不知道 attention 是怎么实现的,不知道 RoPE 是怎么编码的。你是在"使用"大模型,不是在"理解"大模型。

MiniMind 的作者把这件事说得很直白:

"用乐高自己拼出一架飞机,远比坐在头等舱里飞行更让人兴奋。"

它做了什么

MiniMind 不是一个"模型",它是一个完整的从零训练链路。核心数字:

维度数值
主线模型参数量64M(Dense)/ 198M-A64M(MoE)
模型体积GPT-3 的 1/2700
训练时间2 小时(单卡 RTX 3090,1 epoch SFT)
训练成本3 元人民币(GPU 租用)
训练阶段Pretrain → SFT → LoRA → DPO → PPO/GRPO/CISPO → Tool Use → Agentic RL → 蒸馏
代码依赖PyTorch 原生,不依赖 transformers/trl/peft 高级封装
模型结构对齐Qwen3 / Qwen3-MoE 生态
关键设计:所有核心算法(attention、RoPE、MoE 路由、PPO、GRPO、CISPO、LoRA、蒸馏)都用 PyTorch 从零实现,不调第三方库的高级接口。你能看到每一行代码。

从零实现意味着什么

大多数 LLM 教程的路径是:

下载模型 → from_pretrained → trainer.train() → 推理

MiniMind 的路径是:

写 Tokenizer → 写 Attention → 写 RoPE → 写 MoE → 写 Pretrain → 写 SFT → 写 LoRA → 写 DPO → 写 PPO → 写 GRPO → 写 CISPO → 写 Tool Use → 写 Agentic RL → 写蒸馏 → 推理

这两条路径的差距不是"效率差距",是"认知差距"。走第二条路出来的人,看到 transformers 的源码不会觉得是黑盒,看到 Qwen3 的技术报告能看懂每一行公式,看到 DeepSeek-R1 的训练流程能复现。

覆盖的完整训练链

阶段从零实现的内容
Pretrain自回归语言模型训练、数据清洗与去重
SFT指令微调、多轮对话格式、chat_template
LoRA低秩适配器从零实现,不依赖 peft
RLHF-DPO直接偏好优化从零实现
RLAIFPPO、GRPO、CISPO 三种算法从零实现
Tool Use工具调用能力混入 SFT 数据
Agentic RL多轮 Tool-Use 场景下的 GRPO/CISPO
自适应思考 标签 + open_thinking 开关
蒸馏白盒蒸馏原生实现
YaRNRoPE 长文本外推
最值得注意:RLAIF 阶段同时实现了 PPO、GRPO、CISPO 三种算法。GRPO 是 DeepSeek 在 R1 里用的,CISPO 是 2025 年的新算法。一个教学项目跟到了最前沿。

"大道至简"的工程哲学

MiniMind 的 README 里有一句"大道至简"。这不是装饰,是设计哲学。

1. 参数量极简

64M 参数。GPT-3 是 175B,差 2700 倍。这个差距意味着:

  • 单卡 3090(24GB)就能训练,不需要 8 卡 A100
  • 模型文件几百 MB,不需要几 TB 硬盘
  • 推理在 CPU 上都能跑,不需要 H100
  • 训练 2 小时跑完,不需要等两周
你可能会问:64M 的模型能干什么?答案是:什么都不能干,但什么都 ... 什么都能学到。64M 的模型不会通过图灵测试,但训练 64M 模型的代码和训练 175B 模型的代码在算法层面是一样的。你学的是算法,不是规模。

2. 依赖极简

不依赖 transformerstrlpeft。只依赖 PyTorch。

这意味着:

  • attention 不是调 F.scaled_dot_product_attention,是自己写的
  • RoPE 不是调 transformersLlamaRotaryEmbedding,是自己写的
  • LoRA 不是调 peft.LoraConfig,是自己写的
  • PPO 不是调 trl.PPOTrainer,是自己写的
每一行代码你都能看懂、改、调试。这和"用乐高拼飞机"同构——不是坐头等舱飞,是自己造一架能飞的。

3. 数据极简

默认只需要两个文件:pretrain_t2t_mini.jsonlsft_t2t_mini.jsonl。下载、放入目录、跑训练。不需要处理 TB 级数据,不需要分布式数据加载,不需要复杂的数据管道。

为什么 1005 stars/day

MiniMind 踩中了两个同时爆发的需求:

需求一:LLM 教育的"从零开始"运动。 2024 年之前,学 LLM 的路径是"读论文 → 用 transformers → 调参"。2025 年后,DeepSeek-R1 的开源让社区意识到:真正的理解来自从零实现,不是从包调用。 MiniMind 提供了这条路径的完整实现。

需求二:RLHF/RLAIF 的民主化。 GRPO、CISPO 这些算法在 2025 年还是论文里的东西,大多数工程师只知道名字不知道实现。MiniMind 把这些算法从论文翻译成了可运行的 PyTorch 代码,而且是在一个 64M 的模型上跑——你能在笔记本上看完整个训练过程。

1005 stars/day 说明这个需求是真实的、迫切的。

和其他"从零训练 LLM"项目的区别

项目参数量训练阶段从零实现生态对齐
MiniMind64MPretrain→SFT→LoRA→DPO→PPO/GRPO/CISPO→Tool Use→Agentic RL→蒸馏✅ 全部Qwen3
nanoGPT~1MPretrain only✅ 部分GPT-2
minGPT~1MPretrain only✅ 部分GPT-2
lit-gpt7B+Pretrain→SFT❌ 用 LightningLlama
LLaMA-Factory各规模全流程❌ 封装层多模型
MiniMind 的独特位置:它是唯一一个"从零实现 + 全流程 + 前沿算法(GRPO/CISPO/Agentic RL)"的项目。nanoGPT 从零但只做预训练,LLaMA-Factory 全流程但不是从零。

一句话总结

MiniMind 不是要和 Qwen3 竞争——64M 的模型什么实用任务都干不了。它要做的是把 LLM 的完整训练链路从"黑盒"变成"白盒"。从 Tokenizer 到 Agentic RL,每一行代码都可见、可改、可理解。

"大道至简"不是一句口号,是一个工程决策:当你把规模缩到最小、依赖减到最少、代码写到最简时,复杂系统的本质就会显露出来。 64M 的 MiniMind 不会通过图灵测试,但它能通过比这更重要的测试——让一个从没训过大模型的人,在 2 小时内理解大模型的全部训练流程。

这是"教育"和"工程"的完美交叉点。3 块钱买不到一杯咖啡,但能买到一个完整的 LLM 训练课程。

暂无表态

想参与讨论或点赞?登录后使用完整功能

讨论回复(0)

暂无回复,登录后可参与讨论
合作

智谱 GLM-5 已上线

在智谱开放平台 BigModel.cn 打造 AI 应用。新一代旗舰模型 GLM-5 在推理、代码、智能体综合能力达到开源模型 SOTA。

领取 2000万 Tokens