MiniMind 新手教程

第 11 章:常见问题与参考

新手最容易卡的点和官方入口,集中在这一页。

1常见问题

没有 GPU 能学吗?

能学完概念,也能在 CPU / Mac MPS 上跑推理。完整预训练 + SFT 在 CPU 上会极慢。建议:本机推理 + 租一张 24GB 卡跑 mini 数据(大约几块钱)。

「2 小时 3 块钱」到底包含什么?

单卡 3090、mini 数据、1 个 epoch 的 Pretrain + SFT 估算。不含完整 10GB+14GB 主线、不含 RL、不含你排队和下载的时间。完整复现会明显更久。

为什么答错常识、中英夹杂、乱编?

64M 装不下多少世界知识。这是容量问题,不是你没训对。官方样例里就有杭州美食答错、英文崩掉。要更稳的事实,需要更大模型或检索,不是再叠一轮 LoRA 就能彻底解决。

要不要自己训练 tokenizer?

不要。词表一变,旧权重和社区模型全部失效,PPL 也不能横比。只有你在做「换词表会怎样」的实验时才动 train_tokenizer.py。

国内下模型和数据很慢

模型、数据集、在线 Demo 都走 ModelScope:gongjy/minimind-3、gongjy/minimind_dataset。PyPI 用阿里云镜像。评测下载 HuggingFace 数据可设 HF_ENDPOINT=https://hf-mirror.com。

MoE 不是应该更快吗?为什么更慢?

原生 PyTorch 会按专家分桶再分别前向,kernel 启停很重。没有融合 MoE 算子时,4 专家 top-1 大约比 Dense 慢 50%。这是项目为了代码可读做的折中。

WebUI 报错找不到模型

web_demo.py 只扫 scripts/ 下的子文件夹。把 Transformers 目录复制进去:cp -r minimind-3 ./scripts/minimind-3。

旧权重加载失败

2025-04-26 起结构对齐 Transformers,不再直接加载更早的权重。minimind-v1 已下线。需要旧代码请按 README 里的历史 commit 链接回退,不要和新主线混用。

RL 之后聊天变傻了

正常。后训练会牺牲部分通用能力和知识(reward hacking / 对齐税)。工具任务用 agent 权重,日常对话回到 full_sft。

2官方入口

协议是 Apache-2.0,完全免费。引用项目时请看仓库 README 的 Citation 段。