Repolode
ludwig-ai

ludwig-ai/ludwig

YAML設定からLLM、マルチモーダルモデル、表形式データモデルを学習・ファインチューニング・デプロイできる宣言型深層学習フレームワーク。

スター
11,793
フォーク
1,213
未解決の Issue
3
最終コミット
5 日前

これは何?

Ludwigでは、独自の学習ループやデータパイプライン、評価コードを書く代わりに、宣言型のYAML設定を記述してAIモデルを構築できます。入力・出力の特徴量とその型(テキスト、画像、数値、音声、時系列など)を指定すると、フレームワークがエンコーダー、コンバイナー、デコーダーを組み立て、コマンドラインから学習、評価、推論を実行します。

言語モデル向けには、教師ありファインチューニング、DPO、KTO、ORPO、GRPOによるアライメント、LoRA、DoRAなどのPEFTアダプター、4-bit QLoRA、torchaoによる量子化に加え、視覚言語モデルのファインチューニングにも対応しています。表形式データやマルチモーダルのモデルでは、HuggingFaceの任意のテキストエンコーダーやtimmの画像エンコーダーを利用でき、Ray TuneまたはOptunaでハイパーパラメーター探索を行えます。

学習済みモデルは、FastAPIのRESTエンドポイント、vLLM、Ray Serve、KServe経由で提供できるほか、SafeTensors、ONNX、torch.export形式でエクスポートしたり、HuggingFace Hubにプッシュしたりできます。PyTorch、Transformers、Rayを基盤としており、バックエンドの設定を変えるだけで、ノートPCからマルチGPU環境やRayクラスターまで実行できます。

主な機能

  • 01モデルと学習の設定をすべてYAMLで定義でき、独自の学習ループは不要です。
  • 02LoRAやQLoRAを含め、SFT、DPO、KTO、ORPO、GRPOでLLMをファインチューニングできます。
  • 03テキスト、画像、数値、音声、時系列の入力を1つのモデルに組み合わせられます。
  • 04Ray TuneまたはOptunaでハイパーパラメーター探索を実行できます。
  • 05REST、vLLM、Ray Serve、KServe経由でモデルを提供でき、ONNXやSafeTensors形式にエクスポートできます。

ユースケース

  • 限られたGPUメモリで、LoRAを使って指示データからオープンウェイトLLMをファインチューニングする。
  • 学習コードを書かずに、表形式データの分類器や回帰モデルを構築する。
  • 商品画像、レビュー文、数値フィールドを組み合わせたモデルを学習する。
  • PatchTSTまたはN-BEATSエンコーダーを使って時系列を予測する。

クイックスタート

  1. 1

    PyPIからLudwigをインストールする(Python 3.12以上)

    pip install ludwig
  2. 2

    モデルの入力・出力featuresを記述したYAML configを作成する

  3. 3

    データセットでモデルを学習させる

    ludwig train --config model.yaml --dataset my_data.csv
  4. 4

    学習済みモデルで予測を実行する

    ludwig predict --model_path results/experiment_run/model --dataset new_data.csv

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

  • Python 3.12以降が必要です。
  • 大規模なLLMのファインチューニングには多くのGPUリソースが必要です。また、アクセス制限付きモデルではHugging Face tokenが必要な場合があります。

収録されている特集

トピック

よくある質問

ludwig とは?
YAML設定からLLM、マルチモーダルモデル、表形式データモデルを学習・ファインチューニング・デプロイできる宣言型深層学習フレームワーク。 Ludwigでは、独自の学習ループやデータパイプライン、評価コードを書く代わりに、宣言型のYAML設定を記述してAIモデルを構築できます。入力・出力の特徴量とその型(テキスト、画像、数値、音声、時系列など)を指定すると、フレームワークがエンコーダー、コンバイナー、デコーダーを組み立て、コマンドラインから学習、評価、推論を実行します。
ludwig は無料で使えますか?ライセンスは?
ludwig は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
ludwig は今もメンテナンスされていますか?
活発にメンテナンス中。ludwig の最終コミットは 2026年11月2日 です。
ludwig は何に使えますか?
限られたGPUメモリで、LoRAを使って指示データからオープンウェイトLLMをファインチューニングする。 学習コードを書かずに、表形式データの分類器や回帰モデルを構築する。 商品画像、レビュー文、数値フィールドを組み合わせたモデルを学習する。 PatchTSTまたはN-BEATSエンコーダーを使って時系列を予測する。
ludwig のインストール方法は?
PyPIからLudwigをインストールする(Python 3.12以上): pip install ludwig モデルの入力・出力featuresを記述したYAML configを作成する データセットでモデルを学習させる: ludwig train --config model.yaml --dataset my_data.csv 学習済みモデルで予測を実行する: ludwig predict --model_path results/experiment_run/model --dataset new_data.csv
ludwig はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/ludwig-ai/ludwig

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

関連プロジェクト