ludwig-ai/ludwig

Low-code framework for building custom LLMs, neural networks, and other AI models

What it solves

Ludwig は、AI モデルのトレーニング、ファインチューニング、デプロイのために複雑なボイラープレート Python コードを書く必要をなくします。ユーザーはシンプルな YAML 設定ファイルでモデルアーキテクチャ、トレーニングパラメータ、データ入力を定義でき、深層学習をより広範なタスクに対して、深いコーディング専門知識なしで利用可能にします。

How it works

Ludwig は宣言的アプローチを採用し、ユーザーは YAML ファイルで「何を」(入力特徴、出力特徴、モデルタイプなど) を指定します。「どのように」(トレーニングループやデータパイプライン) はフレームワークが内部で処理し、PyTorch の実装、データロード、トレーニング、評価を自動で行います。多数のバックエンドをサポートしており、ローカル実行から Ray クラスタやマルチ GPU 環境への分散トレーニングへ、最小限の設定変更で移行できます。

Who it’s for

Ludwig はデータサイエンティストや AI 実務者が実験サイクルを加速させるために設計されており、また、広範なコードを書かずに表形式、マルチモーダル、LLM タスク向けの高性能モデルを構築したい非専門家にも適しています。

Highlights

  • Comprehensive LLM Support: 監督付きファインチューニング (SFT)、DPO や GRPO といったアラインメント手法、そして多数の PEFT アダプタ (LoRA、DoRA など) と量子化手法を含みます。
  • Multimodal Capabilities: テキスト、画像、音声、数値、時系列データなど、混合入力をネイティブに処理します。
  • Production Ready: REST API、vLLM、Ray Serve、KServe を介したモデル提供ツールを内蔵し、SafeTensors や ONNX へのエクスポートもサポートします。
  • Automated Tooling: LLM 駆動の設定ジェネレータ、最適なモデル組み合わせを探索する AutoML、Optuna と Ray Tune によるハイパーパラメータ最適化を統合しています。