大規模言語モデル(LLM)やビジョン言語モデル(VLM)は、現代のAIアプリケーションに不可欠な存在となっています。これらのモデルをカスタムデータセットでファインチューニングする重要性はますます高まっています。しかし、多くの開発者、特に機械学習の深い知識がない方にとって、既存のフレームワークは複雑で、コーディングや設定が負担になることが少なくありません。
LLaMA Factoryは、誰もがLLMのファインチューニングを利用できるように設計されたオープンソースのツールキットです。初心者や非技術系の方、効率的なモデルカスタマイズを求める組織まで、直感的なWebインターフェースと多彩なファインチューニング戦略のサポートで、全工程を簡単に実行できます。
本記事では、LLaMA Factoryの特長、誰にメリットがあるか、他の人気フレームワークとの比較を紹介します。
LLaMA Factoryはどんな人に向いているか
LLaMA Factoryは以下の方々に最適です。
🧑💻 LLMで実験したい初心者開発者
📊 機械学習の専門知識がないデータアナリストや研究者
🧠 個人・コミュニティプロジェクトに取り組むAI愛好家
🏢 MLエンジニアリソースが限られた小規模チームやスタートアップ
LLaMAやMistralなどの高性能オープンソースモデルを、自分のデータセットで一切コードを書かずにファインチューニングしたい方に最適なツールです。
LLaMA Factoryの提供機能
LLaMA-Factoryは、LLMやVLMのファインチューニング・推論・ベンチマーク用の機能豊富なツール・スクリプトを一式提供するオープンソースプロジェクトです。内蔵Web UI「LlamaBoard」により、100以上のLLM/VLMを柔軟にコーディング不要でカスタマイズ可能です。
LLaMA-Factoryのリポジトリには、以下のような機能が揃っています。
- データ前処理・トークナイズ用スクリプト
- モデルのファインチューニング用トレーニングパイプライン
- 学習済みモデルでテキスト生成する推論スクリプト
- モデル性能評価用ベンチマークツール
- 対話型テストや学習ができるGradio Web UI
LLaMA Factoryは、複雑なAI概念を学ばずにオープンソースLLMをカスタムデータセットで簡単にファインチューニングしたい初心者や非技術者向けに設計されています。ユーザーはモデル選択、データセットアップロード、必要なパラメータ調整だけで学習を開始できます。
学習完了後は、同じWebアプリでモデルをテストし、Hugging Faceへエクスポートしたりローカル保存も可能です。ローカル環境で高速・効率的にLLMをファインチューニングできる仕組みです。

図:LLaMA Factoryアーキテクチャ
LLM学習フレームワークの機能比較
LLaMA Factoryは、FastChat、LitGPT、LMFlowなど他の人気LLMファインチューニングフレームワークと比較して、どのような特徴があるのでしょうか。
| Llama Factory | FastChat | LitGPT | LMFlow | Open-Instruct | |
| LoRA | ✓ | ✓ | ✓ | ✓ | ✓ |
| QLoRA | ✓ | ✓ | ✓ | ✓ | ✓ |
| DoRA | ✓ | ||||
| LoRA+ | ✓ | ||||
| PiSSA | ✓ | ||||
| GaLore | ✓ | ✓ | ✓ | ✓ | |
| BAdam | ✓ | ||||
| Flash attention | ✓ | ✓ | ✓ | ✓ | ✓ |
| S2 attention | ✓ | ||||
| Unsloth | ✓ | ✓ | |||
| DeepSpeed | ✓ | ✓ | ✓ | ✓ | ✓ |
| SFT | ✓ | ✓ | ✓ | ✓ | ✓ |
| RLHF | ✓ | ✓ | |||
| DPO | ✓ | ✓ | |||
| KTO | ✓ | ||||
| ORPO | ✓ |
表:LlamaFactoryと主要LLMファインチューニングフレームワークの機能比較
注記:ほとんどのフレームワークはPyTorchベースでハードウェア要件も類似していますが、LLaMA Factoryは使いやすさ、豊富な機能、活発なコミュニティで差別化されています。LoRA、QLoRA、DoRA、PiSSAなど多彩なファインチューニング手法を幅広くサポートし、ユーザーが用途に応じて最適なモデルに仕上げる柔軟性を提供します。
対応ファインチューニング手法
| Freeze-tuning | GaLore | LoRA | DoRA | LoRA+ | PiSSA | |
| Mixed precision | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Checkpointing | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Flash attention | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| S2 attention | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Quantization | ✗ | ✗ | ✓ | ✓ | ✓ | ✓ |
| Unsloth | ✗ | ✗ | ✓ | ✓ | ✓ | ✓ |
表2:Llama Factoryで利用可能なファインチューニング手法の互換性
テクニックの概要
- Freeze-tuning:大半のパラメータを固定し、デコーダ層の一部パラメータのみファインチューニング
- Gradient low-rank projection:勾配を低次元空間に投影し、メモリ効率よく全パラメータ学習
- Low-rank adaptation:事前学習済み重みを固定し、指定層に低ランク行列を追加して学習
- QLoRA:LoRAに量子化を組み合わせてメモリ使用量を削減
- DoRA(Weight-Decomposed Low-Rank Adaptation):事前学習重みを大きさと方向成分に分解し、方向成分のみ更新
- LoRA+:LoRAの限界を克服するために提案された手法
- PiSSA(主成分特異値・特異ベクトル適応):事前学習重みの主成分を使ってアダプタを初期化し、収束を高速化
LLaMA-Factoryのクイックスタート
1. Installing DependencieLLaMA Factory のリポジトリをクローンすることで、ワークスペースと環境を簡単にセットアップできます。
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git cd LLaMA-Factory conda create --name llama-factory python=3.11 conda activate llama-factory pip install -e ".[torch,liger-kernel,metrics]" pip install deepspeed==0.14.4
2.データセットの準備
LLaMA Factoryは、SFT、DPO、RLHFなど様々な学習方法に対応した複数データ形式とサンプルデータセットをサポートしています。すべてのデータは/dataディレクトリに保存します。カスタムデータセットを作成し、同ディレクトリ内のdataset_info.jsonに情報を記載できます。
例えば、画像パス・プロンプト情報・モデル応答をC:/User/annotations.jsonに保存している場合、以下のような構造です。

この段階で、dataset_info.jsonファイルに必要情報を追記できます。

3. ファインチューニング
ターミナルで下記コマンドを実行し、LLaMA FactoryのWebUI経由でファインチューニングを開始できます。
cd LLaMA-Factory GRADIO_SHARE=1 llamafactory-cli webui
Webインターフェースは次のように表示されます。

必要な学習設定(training configurations)を調整し、出力ディレクトリ(output directory)のパスを指定したら、「Start」をクリックして学習プロセスを開始できます。
また、必要な学習設定を記述した config.yaml ファイルを用意することで、コマンドラインからのファインチューニングも可能です。さまざまな学習設定の例は /examples ディレクトリにあります。
その後、以下のコマンドで学習を開始します。
llamafactory-cli train training_config.yaml
4. LoRAのマージ
LoRA学習の場合、アダプタ重みを元モデルにマージしてファインチューニング済みモデルを取得します。WebUIでは「Export」タブから、コマンドラインではYAML形式の設定ファイルを用意して以下のコマンドでマージできます。
その後、以下のコマンドを実行してマージしてください。
llamafactory-cli export merge_config.yaml
5. リソース監視
リソース監視 環境設定後、「nvidia-smi」コマンドでプロセス監視が可能です。下記はLlamaFactoryでH100ノード上のLLMモデル学習例です。

まとめ
LLaMA Factoryは、LLMカスタマイズに興味がある全ての人の参入障壁を下げる強力かつ使いやすいフレームワークです。最新ファインチューニング手法群、直感的なUI、人気のデプロイツールとの互換性を持ち、コーディング不要で利用できます。ML初心者や、LLMを素早く試したい方にとっても有用なツールですので、ぜひ一度チェックしてみてください。
FPT AI Factoryのサービス詳細はこちら
FPT AI Factoryへのお問い合わせ・ご相談は下記まで
https://fptcloud.com/ja/product/fpt-ai-factory-ja/
ホットライン:0800-300-9739
メール:support@fptcloud.jp
