CPUまたはGPUで動作し、多彩なマージ手法を使って重みを組み合わせ、事前学習済み大規模言語モデルを統合するツールキット。
TinyLLaVA/TinyLLaVA_Factory
小規模な大規模マルチモーダル(視覚・言語)モデルの構築、学習、評価に使える、モジュール式のPyTorch/Hugging Faceコードベース。
- スター
- 1,011
- フォーク
- 100
- 未解決の Issue
- 114
- 最終コミット
- 19 日前
これは何?
TinyLLaVA Factoryは、ビジョンエンコーダと言語モデルを組み合わせた小規模な大規模マルチモーダルモデル向けのモジュール式コードベースです。LLM、ビジョンタワー、コネクタ、学習レシピをそれぞれ独立して差し替えられる構成のため、学習コードを書き直さずにカスタムの視覚・言語モデルを構築できます。
OpenELM、TinyLlama、StableLM、Qwen、Gemma、PhiなどのLLM、CLIP、SigLIP、DINOなどのビジョンタワー、MLP、Q-Former、Resamplerなどのコネクタに対応しています。学習レシピには、凍結、全層・一部のファインチューニングに加え、LoRAとQLoRAも用意されています。TinyLLaVA-Phi-2-SigLIP-3.1Bをはじめとする複数の事前学習済みモデルも公開しており、VQA-v2、GQA、TextVQA、MMEなどのベンチマーク結果を掲載しています。
リポジトリには、GradioのWebデモ、推論用CLI、学習スクリプトの例、データセットの準備や評価の実行方法を説明するドキュメントが含まれています。
主な機能
- 01LLM、ビジョンタワー、コネクタを差し替えて、カスタムのマルチモーダルモデルを構築できます。
- 02凍結、全層・一部のファインチューニング、LoRA、QLoRAに対応した学習レシピを提供します。
- 03Phi-2、Gemma、Qwen、TinyLlamaをベースに、SigLIPまたはCLIPのビジョンエンコーダを組み合わせた事前学習済みモデルを公開しています。
- 04GradioのWebデモと、コマンドラインからの推論ツールを利用できます。
- 05データ準備から評価までの手順をドキュメント化しています。
ユースケース
- 単一GPUで小規模な視覚・言語モデルを学習し、画像に関する質問応答を行う。
- モジュール式の構成で、さまざまな言語モデルやビジョンエンコーダを試す。
- LoRAを使って、カスタムの画像・テキストデータセットでマルチモーダルモデルをファインチューニングする。
- 小規模LMMの学習と評価の結果を再現する。
クイックスタート
- 1
リポジトリをクローンする
git clone https://github.com/TinyLLaVA/TinyLLaVA_Factory.git - 2
プロジェクトフォルダーに移動する
cd TinyLLaVA_Factory - 3
conda環境を作成して有効化し、パッケージをインストールする
conda create -n tinyllava_factory python=3.10 -y && conda activate tinyllava_factory && pip install --upgrade pip && pip install -e . - 4
学習済みモデルを使ってローカルのGradioウェブデモを起動する
python tinyllava/serve/app.py --model-path tinyllava/TinyLLaVA-Phi-2-SigLIP-3.1B
使う前に知っておきたいこと
- 学習とほとんどの推論にはconda環境とCUDA GPUが必要で、flash-attnは別途ビルドする必要があります。
- 環境要件がLLaVAとは異なるため、既存のLLaVA環境をそのまま再利用できない場合があります。
収録されている特集
トピック
よくある質問
- TinyLLaVA_Factory とは?
- 小規模な大規模マルチモーダル(視覚・言語)モデルの構築、学習、評価に使える、モジュール式のPyTorch/Hugging Faceコードベース。 TinyLLaVA Factoryは、ビジョンエンコーダと言語モデルを組み合わせた小規模な大規模マルチモーダルモデル向けのモジュール式コードベースです。LLM、ビジョンタワー、コネクタ、学習レシピをそれぞれ独立して差し替えられる構成のため、学習コードを書き直さずにカスタムの視覚・言語モデルを構築できます。
- TinyLLaVA_Factory は無料で使えますか?ライセンスは?
- TinyLLaVA_Factory は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- TinyLLaVA_Factory は今もメンテナンスされていますか?
- 活発にメンテナンス中。TinyLLaVA_Factory の最終コミットは 2026年10月19日 です。
- TinyLLaVA_Factory は何に使えますか?
- 単一GPUで小規模な視覚・言語モデルを学習し、画像に関する質問応答を行う。 モジュール式の構成で、さまざまな言語モデルやビジョンエンコーダを試す。 LoRAを使って、カスタムの画像・テキストデータセットでマルチモーダルモデルをファインチューニングする。 小規模LMMの学習と評価の結果を再現する。
- TinyLLaVA_Factory のインストール方法は?
- リポジトリをクローンする: git clone https://github.com/TinyLLaVA/TinyLLaVA_Factory.git プロジェクトフォルダーに移動する: cd TinyLLaVA_Factory conda環境を作成して有効化し、パッケージをインストールする: conda create -n tinyllava_factory python=3.10 -y && conda activate tinyllava_factory && pip install --upgrade pip && pip install -e . 学習済みモデルを使ってローカルのGradioウェブデモを起動する: python tinyllava/serve/app.py --model-path tinyllava/TinyLLaVA-Phi-2-SigLIP-3.1B
- TinyLLaVA_Factory はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/TinyLLaVA/TinyLLaVA_Factory
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
単一の24GB GPUで実行できる、小規模な中国語LLaMA2系モデル向けの事前学習・SFTパイプラインをゼロから構築。
大規模言語モデルのファインチューニングに役立つリソース、チュートリアル、論文、ツール、講座をまとめた厳選リスト。
Hugging FaceのParameter-Efficient Fine-Tuning(PEFT)ライブラリ。少数の追加パラメータだけを学習し、大規模な事前学習済みモデルを適応させます。
SFT、GRPO、DPO、KTO、報酬モデル学習に対応した、Transformer言語モデルのポストトレーニング用Hugging Faceライブラリ。
Hugging FaceのBERT、RoBERTa、XLNetなどのtransformerモデルをspaCyパイプラインに組み込むコンポーネントとアーキテクチャ。