minimind

两小时造出你的小模型,练手入门不求人

仅用 2 小时即可从零训练一个 64M 参数的小型 LLM,完整展示大模型从数据到训练的全过程,是初学者快速上手大模型原理与实践的绝佳项目。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 62178
维护状态 活跃
是否开源
定价模式 free

项目数据

分类开源模型
开发团队jingyaogong
所属国家
定价模式free
价格说明完全开源免费,Apache-2.0许可证,可自行部署训练,无付费版本。
访问状态
是否开源
开源协议Apache-2.0
主要语言Python
技术栈/模型artificial-intelligence,large-language-model
GitHub 星标★ 62178
30天Star增速
HF 下载量
上线时间2024-07-27 00:00:00
最近更新2026-09-22 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数20

使用教程

难度:进阶 约 30 分钟 部署方式:本地安装 7 步

环境要求

  • Python >= 3.10(作者实测 3.10.16)
  • 已安装 PyTorch 环境,依赖见 requirements.txt
  • NVIDIA GPU,作者 SFT 实测使用 RTX 3090 24GB
  • CUDA 12.2(作者参考配置)
  • 可访问 GitHub 与 PyPI(国内可用阿里云镜像)

安装与启动步骤

  1. 1克隆仓库

    使用 --depth 1 只拉取最新一次提交,速度更快。克隆完成后进入 minimind 目录。

    git clone --depth 1 https://github.com/jingyaogong/minimind
    cd minimind
  2. 2安装项目依赖

    按 requirements.txt 安装全部依赖,README 提供了阿里云 pip 镜像加速下载。

    cd minimind && pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple
  3. 3命令行对话推理

    用 Transformers 格式加载 minimind-3 模型权重,直接在终端与模型对话。

    python eval_llm.py --load_from ./minimind-3
  4. 4加载 LoRA 权重

    weight 指定基础模型类型,必须与 train_lora 训练时用的基础模型保持一致;lora_weight 指定 LoRA 权重。

    python eval_llm.py --weight full_sft --lora_weight lora_medical
  5. 5合并 LoRA 权重

    把 LoRA 权重合并回基础模型,导出为新的完整模型权重,方便后续直接加载使用。

    cd scripts && python convert_model.py
  6. 6可选:部署 sglang 服务

    使用 sglang 做 rollout 时需先启动推理服务,监听 8998 端口。需自行确保已安装 sglang。

    python -m sglang.launch_server --model-path ./minimind-3 --attention-backend triton --host 0.0.0.0 --port 8998
  7. 7可选:安装评测工具

    安装 EleutherAI 的 lm-evaluation-harness,用于对模型做基准评测(数据集合集见 README)。

    git clone https://github.com/EleutherAI/lm-evaluation-harness
    cd lm-evaluation-harness && pip install -e .

关键配置

配置项必填说明示例
load_from指定要加载的 Transformers 格式模型目录./minimind-3
weight指定基础模型类型,需与 train_lora 时保持一致full_sft
lora_weight指定要叠加的 LoRA 权重名称lora_medical
model-pathsglang 服务加载的模型路径./minimind-3
portsglang 推理服务监听端口8998
attention-backendsglang 使用的注意力后端triton

如何确认成功

运行 python eval_llm.py --load_from ./minimind-3 后,终端出现 提问与 ️ 模型回答,即表示模型加载并推理成功。

常见问题

Q:必须用 GPU 吗?

A:README 说明 SFT 阶段在单张 NVIDIA 3090 上跑 1 epoch 约 2 小时,参考配置为 24GB 显存;README 未给出纯 CPU 训练方案。

Q:Python 版本有要求吗?

A:README 提示可能需要 python>=3.10,作者实测环境为 Python 3.10.16,建议使用 3.10 及以上版本。

Q:LoRA 权重加载后效果不对或报错?

A:README 强调 weight 参数指定的基础模型类型必须与 train_lora 训练时使用的基础模型保持一致,否则可能加载异常。

Q:依赖下载太慢怎么办?

A:README 给出的安装命令已使用阿里云镜像 -i https://mirrors.aliyun.com/pypi/simple,可显著加快国内下载速度。

Q:想用网页界面交互怎么办?

A:README 提到可能需要 python>=3.10 并安装 pip install streamlit,但节选中未给出具体的 Web 界面启动命令。

注意事项

  • 本项目基于 Apache 2.0 协议开源,完全免费。
  • “2 小时”指 SFT 阶段在单张 NVIDIA 3090 上跑完 1 epoch 的实测耗时,“3 块钱”指对应时段的 GPU 租用成本。
  • 所有核心算法代码均从 0 使用 PyTorch 原生实现,不依赖第三方高层抽象接口。
  • README 节选未包含完整的预训练/SFT/RLHF 训练命令,训练流程请以仓库最新文档为准。

核心亮点

  • 仅需2小时即可从零训练64M参数的小型LLM,训练门槛极低,适合个人开发者快速上手
  • 训练流程完整覆盖数据准备、预训练、微调等环节,代码结构清晰,便于学习大模型训练全流程
  • 项目文档和教程完善,配套详细的训练指南和实验记录,社区活跃度高,Star数超5.4万验证了其影响力

不足之处

  • 64M参数规模远小于主流商用模型,生成能力和知识覆盖有限,仅适合教学或特定轻量场景
  • 训练依赖特定硬件环境,普通消费级GPU可能难以在2小时内完成,实际耗时受设备影响较大

适用场景

  • 大模型入门教学与实验,帮助初学者理解Transformer训练原理
  • 资源受限环境下的轻量级文本生成任务,如嵌入式设备或离线应用
  • 作为基线模型,用于对比测试不同架构或训练策略的效果

替代项目

TinyLlama、nanoGPT、BabyGPT

项目介绍

minimind 是模型训练领域的开源项目,由 jingyaogong 开发,2024 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(62,178)位列前 1%,在模型训练分类的 518 个项目里位列前 1%。

近 44 天,它的 GitHub 星标从 54,497 增加到 62,178,净增 7,681。

项目目前处于活跃维护状态,最近一次代码更新于 2026-09-22。完全开源免费,Apache-2.0许可证,可自行部署训练,无付费版本。

它主要面向的使用场景是:大模型入门教学与实验,帮助初学者理解Transformer训练原理。同类可对比的替代方案包括 TinyLlama、nanoGPT、BabyGPT。

上一篇:LlamaFactory

下一篇:agent-lightning

同类项目推荐

Long-RL 开源

让强化学习轻松驾驭超长序列,训练更稳更快

Long-RL: Scaling RL to Long Sequences (NeurIPS 2025)

★ 729 2026-08-09
TPA 开源

把注意力复杂度从平方降到线性,长序列不再卡顿

[NeurIPS 2025 Spotlight] TPA: Tensor ProducT ATTenTion Transformer (https://arxiv.or···

★ 463 2026-08-09
minimind 开源

两小时造出你的小模型,练手入门不求人

Train a 64M-parameter LLM from scratch in just 2h!

★ 62178 2026-08-09
pruna 开源

一键优化 AI 模型,推理提速又省资源。

Pruna is a model optimization framework built for developers, enabling you to delive···

★ 1286 2026-08-13