Ostris AI Toolkit で LoRA を学習していると、たぶん一度はこうなります:
- AI Toolkit の学習 Samples / Previews はすごく良い。
- ところが同じ LoRA を ComfyUI や Diffusers など別の環境で推論すると、結果が 違って見える。
多くの場合、LoRA が「壊れている」のではなく、推論パイプラインが学習プレビューと一致していません。
ベースモデルのバリアント、scheduler/step の意味、VAE/CLIP のデフォルト、解像度のスナップ(丸め)ルール、さらに LoRA の適用方法(adapter か merge/fuse か、モデルファミリー固有の挙動)といった小さな違いが、すぐに大きな差になります。
AI Toolkit 風の推論を 再現・監査・デバッグ しやすくするために、RunComfy は AI Toolkit LoRA 用に使っている 参照推論実装 を Hugging Face Diffusers ベースで オープンソース として公開しています。
GitHub: runcomfy-com/ai-toolkit-inference
このオープンソースリポジトリの用途
次の目的で使えます:
- AI Toolkit の Samples/Previews を AI Toolkit 以外で再現(同じ推論ロジック)
- 「学習プレビュー vs 推論」の ドリフト を、パイプライン全体を確認しながらデバッグ
- Diffusers ベースで 独自の推論サービス(例:API の裏側)を構築
目的が「とにかく LoRA を動かして学習 Samples に合わせたい」だけなら、コードを読まなくても大丈夫です。RunComfy では同じ preview‑matching の挙動を、管理された推論(Playground/API)や ComfyUI ワークフローでも提供しています。
リポジトリの中身
AI Toolkit の preview 挙動を 監査可能で再現可能 にする設計です。通常、次のような内容が含まれます:
- ベースモデル別の Diffusers パイプライン(画像、編集/制御、動画 — モデルファミリーによる)
- AI Toolkit の学習 YAML → 推論設定(YAML を「契約」として扱う)
- LoRA の読み込みと適用(adapter vs merge/fuse、ファミリー固有のバインド癖)
- AI Toolkit の Samples/Previews に合わせる 解像度スナップ ルール
- 任意:API の裏で推論を回すための 非同期サーバー例(FastAPI など)
RunComfy Trainer Inference との関係
RunComfy でも同じ preview‑matching の考え方を使います:
- 正確なベースモデル/バリアントを固定
- モデルファミリーの 推論デフォルト を合わせる
- 学習 Samples/Previews を描画したのと同じ パイプライン挙動 を保つ
この整合したパイプラインは、開発者向けに 2 つの使い方があります:
- Playground / API 推論(すぐ検証+組み込み)
- ComfyUI 推論(ベースモデルごとのワークフロー — LoRA を読み込んで preview‑matching)
ガイド:
- Playground/API のパリティ: AI Toolkit Inference: Get Results That Match Your Training Samples
- ComfyUI の preview‑match: AI Toolkit Inference in ComfyUI: Get Results That Match Your Training Samples
- ドリフトのデバッグ: AI Toolkit Preview vs Inference Mismatch
Ready to start training?
