Repolode
jingyaogong

jingyaogong/minimind

単一GPUで約2時間あれば、64Mパラメータの言語モデルをゼロから学習する方法を学べる、超小規模なオープンソースLLMプロジェクト。

スター
64,946
フォーク
8,505
未解決の Issue
67
最終コミット
11 日前

これは何?

MiniMindは、小規模モデルを使ったLLMのゼロからの学習プロジェクトです。Dense版は約64Mパラメータ、MoE版は合計約198Mパラメータ(うちアクティブなのは64M)です。PyTorchで、tokenizerの学習から事前学習、教師ありファインチューニング、LoRA、DPO、PPO、GRPO、CISPO、tool calling、adaptive thinking、知識蒸留まで、学習パイプライン全体を扱います。中核となるアルゴリズムは高水準ライブラリでラップせず、ネイティブに実装されているため、コードを一行ずつ読んで変更できます。

このプロジェクトは、API経由でLLMを呼び出したり、既存モデルをファインチューニングしたりするだけでなく、LLMの構築方法を理解したい開発者を対象としています。開発者によると、単一のRTX 3090でSFTを1エポック実行するのに約2時間かかります。リポジトリには前処理済みデータセットが含まれ、学習済み重みはModelScopeとHugging Faceで公開されています。学習済みモデルはevalスクリプト、Streamlit WebUI、またはOpenAI互換APIサーバーで実行でき、llama.cpp、vLLM、Ollamaへのエクスポート方法も用意されています。

リポジトリには、拡散言語モデルと線形attentionの実験的なブランチのほか、ビジョン版とオムニモーダル版の関連プロジェクトも含まれています。モデルアーキテクチャの命名規則と設定は、Qwen3ファミリーに合わせられています。

主な機能

  • 01単一の一般向けGPUで、約64MパラメータのDenseモデルとMoE版をゼロから学習できます。
  • 02事前学習、SFT、LoRA、DPO、PPO、GRPO、CISPOをネイティブのPyTorchで実装しています。
  • 03チャットテンプレートを通じて、tool callingと切り替え可能な思考機能に対応しています。
  • 04OpenAI互換APIによる提供機能と、Streamlit製のチャットWebUIを備えています。
  • 05公開済みのデータセットとチェックポイントを提供し、llama.cpp、vLLM、Ollamaへのエクスポートにも対応しています。

ユースケース

  • 学習コードを読み、実行しながら、言語モデルの構築工程を一通り学ぶ。
  • 研究や教育のために、単一GPUで小規模なLLM学習パイプラインを再現する。
  • 小規模モデルでDPO、PPO、GRPOなどのRLによる追加学習手法を試す。
  • 独自の対話データでLoRAアダプターを学習し、特定分野向けの振る舞いを試作する。

クイックスタート

  1. 1

    リポジトリをクローンする

    git clone --depth 1 https://github.com/jingyaogong/minimind
  2. 2

    依存関係をインストールする

    cd minimind && pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple
  3. 3

    minimind-3モデルをダウンロードする

    modelscope download --model gongjy/minimind-3 --local_dir ./minimind-3
  4. 4

    モデルを使ってコマンドラインから推論を実行する

    python eval_llm.py --load_from ./minimind-3

使う前に知っておきたいこと

  • スクラッチからの学習は単一GPU向けに設計されており、READMEに記載された2時間という所要時間はNVIDIA 3090で測定されています。
  • モデルは非常に小さい(約6,400万パラメータ)ため、出力品質には限界があります。
  • 6,400トークンのトークナイザーは、Qwen2などのより大きなトークナイザーと比べて、中国語テキストを効率よく圧縮できません。

収録されている特集

トピック

よくある質問

minimind とは?
単一GPUで約2時間あれば、64Mパラメータの言語モデルをゼロから学習する方法を学べる、超小規模なオープンソースLLMプロジェクト。 MiniMindは、小規模モデルを使ったLLMのゼロからの学習プロジェクトです。Dense版は約64Mパラメータ、MoE版は合計約198Mパラメータ(うちアクティブなのは64M)です。PyTorchで、tokenizerの学習から事前学習、教師ありファインチューニング、LoRA、DPO、PPO、GRPO、CISPO、tool calling、adaptive thinking、知識蒸留まで、学習パイプライン全体を扱います。中核となるアルゴリズムは高水準ライブラリでラップせず、ネイティブに実装されているため、コードを一行ずつ読んで変更できます。
minimind は無料で使えますか?ライセンスは?
minimind は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
minimind は今もメンテナンスされていますか?
活発にメンテナンス中。minimind の最終コミットは 2026年10月27日 です。
minimind は何に使えますか?
学習コードを読み、実行しながら、言語モデルの構築工程を一通り学ぶ。 研究や教育のために、単一GPUで小規模なLLM学習パイプラインを再現する。 小規模モデルでDPO、PPO、GRPOなどのRLによる追加学習手法を試す。 独自の対話データでLoRAアダプターを学習し、特定分野向けの振る舞いを試作する。
minimind のインストール方法は?
リポジトリをクローンする: git clone --depth 1 https://github.com/jingyaogong/minimind 依存関係をインストールする: cd minimind && pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple minimind-3モデルをダウンロードする: modelscope download --model gongjy/minimind-3 --local_dir ./minimind-3 モデルを使ってコマンドラインから推論を実行する: python eval_llm.py --load_from ./minimind-3
minimind はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/jingyaogong/minimind

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト