MiniMind LLM 从零实现 — 教学大纲

课程简介

本课程基于开源项目 MiniMind 设计,以纯 PyTorch 从零实现一个小型语言模型为主线,带领学生完整经历大语言模型的训练全流程:Tokenizer → Pretrain → SFT → LoRA → RLHF → Agent RL → 部署。

MiniMind 主线版本仅 64M 参数(约为 GPT-3 的 1/2700),单张 RTX 3090 即可在约 2 小时内完成快速复现训练,成本仅约 3 元人民币。极低的硬件门槛使每位学生都能亲自动手完成全部实验。

为什么选择 MiniMind 做教学

优势 教学价值
纯 PyTorch 实现,无黑盒封装 学生能逐行阅读每一层代码,理解底层逻辑
完整训练链路 覆盖 LLM 全生命周期,形成体系化知识
单卡 3090 即可完成,成本约 3 元 降低硬件门槛,人人可动手
代码量适中(非玩具、非工业级) 难度恰好适合进阶教学
覆盖前沿技术(MoE、GQA、RoPE、GRPO) 与当前行业趋势对齐
Apache 2.0 完全开源 无许可证限制,可自由修改和分发

课程教学目标

知识目标

  1. 理解大语言模型(LLM)的完整训练流程和各阶段目标
  2. 掌握 Transformer Decoder-Only 架构的核心组件及数学原理
  3. 掌握 Tokenizer(BPE)的工作原理和实现方法
  4. 理解预训练、监督微调、参数高效微调、强化学习对齐的原理和区别
  5. 了解 MoE、GQA、RoPE 等前沿优化技术
  6. 掌握 LLM 部署和推理的工程实践方法

能力目标

  1. 能够从零搭建并训练一个小型语言模型
  2. 能够分析训练过程中的 loss 曲线和训练状态
  3. 能够设计实验并对比不同训练策略的效果
  4. 能够将训练好的模型部署为可用的推理服务
  5. 能够阅读和修改开源 LLM 项目代码

课程安排

周次 阶段 课时 教学形式 核心内容
第 1 周 阶段 1-2 4 课时 讲授 + 上机 环境搭建、项目导览、Tokenizer 原理与实现
第 2 周 阶段 3 6 课时 讲授 + 代码研读 Transformer 架构逐组件讲解与手写实现
第 3 周 阶段 4 4 课时 讲授 + 训练实验 预训练(Pretrain)完整流程
第 4 周 阶段 5 4 课时 讲授 + 训练实验 监督微调(SFT)、Tool Calling、知识蒸馏
第 5 周 阶段 6 2 课时 讲授 + 对比实验 LoRA 参数高效微调
第 6 周 阶段 7 4 课时 讲授 + 训练实验 强化学习对齐(DPO / PPO / GRPO / CISPO)
第 7 周 阶段 8 2 课时 部署实践 模型推理部署、API 服务、多框架集成
第 8 周 综合项目 4 课时 开放选题 综合实践与答辩

先修要求

必修基础

  • Python 编程(熟悉面向对象、NumPy 基础操作)
  • 深度学习基础(了解前向/反向传播、损失函数、优化器)
  • PyTorch 框架(张量操作、模型定义、训练循环)
  • 基本线性代数(矩阵乘法、向量空间)

推荐基础(非必须)

  • 自然语言处理基础(分词、词向量)
  • 了解 Transformer 论文基本概念
  • Linux 命令行基本操作

硬件要求

推荐配置

组件 推荐配置 最低配置
GPU NVIDIA RTX 3090 / 4090(24GB) NVIDIA RTX 3060(12GB)
CPU 8 核以上 4 核
内存 32GB 16GB
硬盘 50GB 可用空间 30GB 可用空间

硬件方案

方案 说明 预估成本
本地单卡 RTX 3090/4090,个人电脑 约 3 元/次完整训练
教学机房 多卡 3090,每 2-3 人一组共享 共享调度
云端租用 AutoDL / 矩池云 按小时计费 约 2-5 元/小时
CPU 降级 使用 minimind2-small(26M),仅 CPU 推理 0 元(仅推理)

MiniMind 全流程概览

┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│  Tokenizer   │────>│  Pretrain   │────>│    SFT      │
│  (BPE训练)   │     │  (预训练)    │     │  (监督微调)  │
└─────────────┘     └─────────────┘     └─────────────┘
                                               │
                    ┌──────────────────────────┤
                    │                          │
                    ▼                          ▼
             ┌─────────────┐          ┌─────────────┐
             │    LoRA      │          │   知识蒸馏   │
             │  (高效微调)  │          │ (Distillation)│
             └─────────────┘          └─────────────┘
                    │
                    ▼
        ┌───────────────────────────┐
        │       强化学习对齐         │
        │  DPO / PPO / GRPO / CISPO │
        └───────────────────────────┘
                    │
                    ▼
        ┌───────────────────────────┐
        │      Agentic RL           │
        │   (多轮Tool-Use强化学习)    │
        └───────────────────────────┘
                    │
                    ▼
        ┌───────────────────────────┐
        │        部署推理             │
        │  OpenAI API / vLLM / ollama│
        └───────────────────────────┘

模型规格

MiniMind-3 Dense

参数
参数量 ~64M
词汇表大小 6400
最大位置编码 32768
层数(n_layers) 8
隐藏维度(d_model) 768
KV 头数 4
Q 头数 8
显存占用 ~0.5 GB
归一化 Pre-Norm + RMSNorm
激活函数 SwiGLU
位置编码 RoPE(支持 YaRN 外推)

MiniMind-3 MoE

参数
参数量 198M(活跃 64M)
专家数 4
路由策略 top-1 routing
其他参数 与 Dense 版本相同

考核方式

考核项 占比 说明
阶段实验报告 50% 每个阶段一份小报告(共 8 份,取 5 份最高分)
综合项目 30% 开放选题,展示完整的训练/优化/部署流程
日常代码实践 20% 代码提交、实验记录、课堂参与

配套材料清单

材料 说明
本教学文档(语雀系列) 8 个阶段 + 1 个大纲,共 9 篇
MiniMind 源码 GitHub 克隆即可
预训练模型 ModelScope / HuggingFace 下载
数据集 ModelScope / HuggingFace 下载
实验报告模板 每阶段提供统一模板

项目地址与参考资源

资源 链接
GitHub 源码 https://github.com/jingyaogong/minimind
项目文档站 https://jingyaogong.github.io/minimind/
HuggingFace 模型 https://huggingface.co/collections/jingyaogong/minimind-66caf8d999f5c7fa64f399e5
ModelScope 模型 https://www.modelscope.cn/models/gongjy/minimind-3
ModelScope 数据集 https://www.modelscope.cn/datasets/gongjy/minimind_dataset/files
在线体验 Demo https://www.modelscope.cn/studios/gongjy/MiniMind
视频演示 https://www.bilibili.com/video/BV12dHPeqE72/
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐