项目详情

MiniMind

3 块钱 + 2 小时,从零训练一个 64M 参数的 LLM——大道至简

GitHub 地址 项目主页 在线体验 Apache-2.0 Python · PyTorch 原生

更新于 2026-09-01 · 数据来源:GitHub API(采集于 2026-09-01)

← 返回汇总
项目速览

一句话定位

打开大模型黑盒子的那把螺丝刀

从零复现 LLM 全链路的教学项目:仅用 3 元 GPU 租费与 2 小时(单卡 3090 SFT 一轮),训练出一个 64M 参数的小语言模型。结构对齐 Qwen3 生态(RMSNorm/GQA/SwiGLU/RoPE/MoE),覆盖 Pretrain → SFT → LoRA → DPO → RLAIF(PPO/GRPO/CISPO)→ Tool Use → Agentic RL → 蒸馏全过程,核心算法全部 PyTorch 原生手写。适合想真正理解 LLM 内部机制的工程师与学生。

项目速览

核心数据

56.3k
Stars(2 年)
7.3k
Forks(复现者众)
64M
≈ GPT-3 的 1/2700
8
已发布模型版本

2024-07 开源 · 昨日仍在推送 · minimind-3(2026-04)主线对齐 Qwen3/Qwen3-MoE · HuggingFace Collection + ModelScope 双上架 · B 站视频教程 · 姊妹项目:MiniMind-V(视觉)/ MiniMind-O(Omni)/ dLM(扩散语言模型)/ Linear(线性注意力)

为什么存在

README 里的三记耳光

「教牛顿用智能手机」

大多数人的 LLM 探索止步于 LoRA 微调现成大模型——README 直言这「更像是在教牛顿如何使用 21 世纪的智能手机:虽然有趣,却偏离了理解物理本质的初衷」。

抽象层是认知牢笼

transformers / trl / peft 十几行代码跑通全流程,高效封装的代价是把开发者与底层实现隔离开来。「用乐高自己拼出一架飞机,远比坐在头等舱里飞行更让人兴奋」。

付费课程的噪音

「互联网上充斥大量付费课程和营销内容,用漏洞百出、一知半解的讲解包装所谓的 AI 教程」——本项目把门槛压到 3 块钱 + 一张消费级 GPU,让任何人都能从理解每一行代码开始。

内容全景

一条完整的训练链,八个阶段

① Tokenizer BPE+ByteLevel tool_call/think 标记 ② Pretrain 预训练 t2t 数据 ③ SFT + LoRA 监督微调 2 小时所在环节 ④⑤ 对齐 RLHF-DPO RLAIF: PPO/GRPO/CISPO ⑥⑦ Tool / Agent Tool Use 混入主线 Agentic RL (train_agent) ⑧ 蒸馏 + 评测 白盒蒸馏 C-Eval / C-MMLU 工程底座(全阶段共享) 单机单卡 / 多卡 DDP·DeepSpeed · 断点续训(跨 GPU 数恢复) · wandb/swanlab 可视化 · YaRN 长文本外推 OpenAI API 兼容服务端(reasoning_content / tool_calls / open_thinking) · Streamlit WebUI · llama.cpp / vllm / ollama 互转 关键算法从 0 PyTorch 原生实现:LoRA 脱离 peft · DPO 原生 · 蒸馏原生 · PPO/GRPO/CISPO 原生
基础与产出链 对齐与 Agent 进阶(2025-10 起原生实现)
核心机制

minimind-3:64M 参数的解剖

配置minimind-3minimind-3-moe说明
参数量64M(Dense)198M 总 / A64M 激活激活参数 = 每次前向实际参与计算的
d_model / 层数768 / 8 层768 / 8 层「浅而宽」的工程取舍:浅网训练快,768 维避免模式崩溃
注意力q_heads 8 · kv_heads 4同左GQA 分组查询注意力(K/V 头减半省 25% 注意力参数)
结构组件Pre-Norm + RMSNorm · SwiGLU · RoPE(θ=1e6,支持 YaRN 外推)对齐 Qwen3 生态,权重可转 transformers/llama.cpp/ollama
MoE—4 experts / top-1 路由(无 shared expert)甜点配置:原生训练仅比 Dense 慢 ~50%
词表 / 上下文6,400(BPE+ByteLevel)· max_pos 32,768预留 buffer token 便于扩展

参数构成大致为:embedding ≈ 4.9M + 注意力 ≈ 14.2M + FFN(SwiGLU) ≈ 44.9M——FFN 占七成,这也是 MoE 拿 FFN 开刀的原因(4 专家把容量抬到 198M,激活仍是 1 专家的 64M)。想亲手调这些数字看参数怎么变?往下翻 Playground。

设计哲学

「从 0 实现」不是口号,是纪律

数据与评测

全阶段开源数据 + 榜单可测

  • 数据集全家桶:pretrain_t2t(_mini) · sft_t2t(_mini)(含 Tool Call)· rlaif · agent_rl · agent_rl_math——收集、蒸馏、清洗、去重全流程开源
  • Jsonl 统一格式:杜绝数据集下载混乱(v2 时代吸取的教训写进了格式设计)
  • 私有数据迁移方案:官方示例含医疗模型与「自我认知」微调路径
  • 第三方评测:C-Eval / C-MMLU / OpenBookQA 脚本级支持——小模型也上榜单说话
  • R1 蒸馏系列:minimind2-DeepSeek-R1 蒸馏模型——把「推理能力蒸馏到 26M」当实验做给你看
  • 训练曲线对比:README 附各阶段 loss 曲线与算法原理折叠说明
快速上手

三步之内见模型

# 第 0 步:克隆 + 装依赖
$ git clone --depth 1 https://github.com/jingyaogong/minimind
$ cd minimind && pip install -r requirements.txt

# 体验现成模型(不用训练)
$ modelscope download --model gongjy/minimind-3 --local_dir ./minimind-3
$ python eval_llm.py --load_from ./minimind-3   # CLI 对话
$ streamlit run scripts/web_demo.py            # WebUI(思考链+工具调用)

# 或直接开始训练:1_pretrain.py → 2_full_sft.py → …(单卡 3090 即可)
适用场景

适合谁用

风险提示

需要警惕(项目自己也承认的边界)

在线体验

亲手解剖 64M 参数

Playground 复刻「64M 怎么构成」:拖动 d_model / 层数 / 注意力头 / MoE 专家数,实时看 embedding / 注意力(QKVO+GQA) / FFN(SwiGLU) / MoE 路由的参数分解条与总量、fp16 显存估算——预置 minimind 全系官方配置一键对照,公式与四个官方参数量对拍命中。

打开 Playground

纯前端实现,零网络依赖 · GQA 省参 25% / SwiGLU=3dh / MoE 激活语义 / 官方 4 配置对拍全中

潜力评估

未来空间

「让人人理解 LLM」的需求随模型热潮只增不减,而 MiniMind 用两年把它做到了教科书级:结构对齐主流生态(不是玩具格式)、算法跟进到 CISPO 与 Agentic RL(不是吃老本)、数据全开源(不是留一手)、3 元门槛(不是营销话术)。7.3k forks 意味着数万人真的训过——这在教学项目里是最高信用。它是中文 AI 开源社区的标志性资产之一。

教学项目标杆(7.3k forks) 算法跟进前沿(CISPO/Agentic RL) 生态对齐 Qwen3 能力天花板明确 教学优先于生产

上一个
Headroom
下一个
The Agency
1 / 13