APIMart
APIMart

FLUX.2 Klein 9B ワークフロー:ローカル環境構築ガイド

FLUX.2 Klein 9B を ComfyUI でローカル実行する手順を解説。必要なモデルファイル、VRAM 要件、4 ステップ設定、テキストから画像生成と画像編集のワークフロー、よくあるエラーの対処法、ホスト型 FLUX.2 を選ぶべき場面までまとめました。

チュートリアル

結論:FLUX.2 Klein 9B をローカルで動かす最短ルートは ComfyUI です。必要なのは、Black Forest Labs が公開している FP8 拡散モデル、Qwen3 8B テキストエンコーダー、FLUX.2 VAE の 3 ファイルだけです。 速度重視なら蒸留版を 4 ステップ・CFG 1.0 で、多様性が欲しい場合や LoRA を学習する予定がある場合は Base 版を 20〜50 ステップ・CFG 4〜5 程度で使います。9B の重みは FLUX Non-Commercial License(非商用ライセンス)で公開されているため、モデル自体を有料サービスに組み込む前にライセンス条件を必ず確認してください。

GPU やドライバー、モデルファイルの管理を避けたい場合は、APIMart でホストされている FLUX.2 の Pro・Flex・Max を使えば、同じテキストから画像生成と参照画像編集を 1 つの API で実行できます。なお、APIMart は Klein 自体を提供していません。本記事は Klein を自分のマシンで動かす方法を解説し、ホスト型 FLUX.2 のほうが手軽なケースも紹介します。

要点まとめ

  • FLUX.2 Klein は Black Forest Labs が 2026 年 1 月 15 日に公開したモデルで、4B と 9B の 2 サイズがあり、それぞれ 4 ステップ蒸留版と非蒸留の Base 版が用意されています(BFL 公式発表)。
  • Hugging Face のモデルカードによると、Klein 9B は 9B のフローモデルと 8B の Qwen3 テキストエンコーダーで構成され、フル精度では約 29GB の VRAM が必要です。
  • 蒸留版 9B は 4 ステップ・guidance 1.0、Base 9B のモデルカード例は 50 ステップ・guidance 4.0、ComfyUI の 9B テキストから画像生成テンプレートは 20 ステップ・CFG 5 です。
  • 9B は 2 種類とも FLUX Non-Commercial License、4B は 2 種類とも Apache 2.0 です。
  • BFL が RTX GPU 向けに公表した数値では、FP8 で VRAM 使用量が最大 40%、NVFP4 で最大 55% 削減されます。
  • 1 つの Klein モデルでテキストから画像生成、単一参照編集、複数参照編集のすべてに対応し、ComfyUI では同じグラフに ReferenceLatent ノードを追加するだけで編集ワークフローになります。

FLUX.2 Klein の概要

Klein 9B(蒸留版)Klein Base 9BKlein 4B(蒸留版)Klein Base 4B
開発元Black Forest LabsBlack Forest LabsBlack Forest LabsBlack Forest Labs
公開日2026 年 1 月 15 日2026 年 1 月 15 日2026 年 1 月 15 日2026 年 1 月 15 日
サンプリングステップ420〜50(非蒸留)44 より多い(非蒸留)
Guidance / CFG1.04.0(モデルカード例)1.0公式未確認
テキストエンコーダーQwen3 8BQwen3 8BQwen3 4B(ComfyUI 用ファイル)Qwen3 4B(ComfyUI 用ファイル)
VRAM(フル精度)約 29GB約 29GB約 13GB約 13GB
ライセンスFLUX Non-CommercialFLUX Non-CommercialApache 2.0Apache 2.0
向いている用途ローカルでの高速生成・編集ファインチューニング、LoRA、研究コンシューマー GPU、エッジ小さめの GPU でのファインチューニング
対応タスクテキストから画像生成、単一・複数参照編集同左同左同左

出典:BFL 公式発表、Klein 9B モデルカード、Klein Base 9B モデルカード、Klein 4B モデルカード、ComfyUI の Klein チュートリアル。

どの Klein をダウンロードすべきか

蒸留版と Base 版

蒸留版はステップ蒸留により 4 ステップでサンプリングできます。これが Klein の速さの理由で、BFL は最新ハードウェアで 1 枚あたり 0.5 秒未満で生成・編集できるとしています。ComfyUI チームの計測では、4B 蒸留版が RTX 5090 でエンドツーエンド約 1.2 秒でした。

Base 版は蒸留されていないため、ステップ数は大幅に増えますが、BFL によれば出力の多様性が高く、ファインチューニングや LoRA 学習にはこちらを使います。Base 9B のモデルカードでは「ファインチューニング、LoRA 学習、研究、そして速度より制御性を重視するカスタムパイプラインに最適」と説明されています。

4B と 9B

9B は Klein シリーズのフラッグシップで、BFL は 5 倍のサイズのモデルに匹敵、あるいは上回ると述べています。4B は導入しやすい選択肢で、約 13GB の VRAM に収まり、BFL は RTX 3090 / 4070 以上を目安に挙げています。GPU の VRAM が 24GB 未満なら、まず 4B のワークフローを試すか、FP8 版の 9B と後述の低 VRAM 対策を組み合わせてください。

ライセンス:できること・できないこと

多くのローカル導入ガイドが触れない部分です。Klein 4B と Base 4B は Apache 2.0 で、商用利用が可能です。Klein 9B と Base 9B は FLUX Non-Commercial License です。このライセンスでは、モデルとその派生物は非商用目的でのみ使用でき、モデルの商用・本番利用は明確に除外されています。一方で同じライセンスには、BFL は出力物の所有権を主張せず、ライセンスで禁止されている場合(出力を使って競合モデルを学習させるなど)を除き、出力物は商用を含むあらゆる目的に使えるとも書かれています。

実務的には、9B を使った実験、研究、個人プロジェクトは問題ありません。有料サービスや本番パイプラインで 9B を動かす場合は、BFL から商用ライセンスを取得する(bfl.ai/licensing)か、Apache ライセンスの 4B、またはホスト型 FLUX.2 に切り替えてください。本記事は法的助言ではないため、ライセンス原文を必ずご自身で確認してください。

用途おすすめ
学習、研究、個人制作Klein 9B または Base 9B をローカルで
商用プロダクト(セルフホスト)Klein 4B(Apache 2.0)、または 9B の BFL 商用ライセンス
商用プロダクト(GPU を管理しない)API 経由でホスト型 FLUX.2 Pro / Flex
LoRA 学習Klein Base 9B または Base 4B

事前準備:ハードウェア、ソフトウェア、アクセス権

GPU とメモリ

構成目安
9B(BF16)モデルカードでは約 29GB。RTX 4090 以上でオフロードを併用
9B(FP8)BFL によると BF16 比で最大 40% 削減。9B の正確な数値は公式未確認
9B(NVFP4)BFL によると最大 55% 削減。新しめの NVIDIA RTX GPU が必要
4B 蒸留版(ComfyUI、FP8)ComfyUI が RTX 5090 で計測した値は 8.4GB
4B Base 版(ComfyUI、FP8)ComfyUI が RTX 5090 で計測した値は 9.2GB

BFL は速度面でも、RTX 5080 / 5090・1024x1024 の条件で FP8 は最大 1.6 倍、NVFP4 は最大 2.7 倍高速になると報告しています。

ComfyUI のバージョン

Klein は Flux2Scheduler や EmptyFlux2LatentImage といった新しい FLUX.2 ノードを使います。ComfyUI のドキュメントによれば、Klein のテンプレートが見つからない、またはノードの読み込みに失敗する場合はインストールが古いので、最新の Nightly 版を推奨しています。Desktop 版はメインのリリースより更新が遅れることがあるため、トラブルシューティングの前にまずアップデートしましょう。

Hugging Face のアクセス権

9B のリポジトリはゲート付きです。Hugging Face にログインし、Klein 9B FP8 リポジトリを開いてライセンスと利用規定に同意し、コマンドラインからのダウンロード用に read 権限のトークンを作成します。

ステップ 1:モデルファイルをダウンロードする

ComfyUI のチュートリアルでは、9B ワークフロー用に次のファイルが挙げられています。

ファイル入手元ComfyUI のフォルダー
flux-2-klein-9b-fp8.safetensors(蒸留版)black-forest-labs/FLUX.2-klein-9b-fp8models/diffusion_models/
flux-2-klein-base-9b-fp8.safetensors(Base 版)black-forest-labs/FLUX.2-klein-base-9b-fp8models/diffusion_models/
qwen_3_8b_fp8mixed.safetensorsComfy-Org/flux2-klein-9Bmodels/text_encoders/
flux2-vae.safetensorsComfy-Org/flux2-devmodels/vae/

最初は拡散モデルを 1 つだけ用意すれば十分です。速度重視なら蒸留版、LoRA 学習を予定しているなら Base 版を選びます。


export HF_TOKEN=hf_xxx

curl -L -H "Authorization: Bearer $HF_TOKEN" \
  -o ComfyUI/models/diffusion_models/flux-2-klein-9b-fp8.safetensors \
  https://huggingface.co/black-forest-labs/FLUX.2-klein-9b-fp8/resolve/main/flux-2-klein-9b-fp8.safetensors

curl -L -o ComfyUI/models/text_encoders/qwen_3_8b_fp8mixed.safetensors \
  https://huggingface.co/Comfy-Org/flux2-klein-9B/resolve/main/split_files/text_encoders/qwen_3_8b_fp8mixed.safetensors

curl -L -o ComfyUI/models/vae/flux2-vae.safetensors \
  https://huggingface.co/Comfy-Org/flux2-dev/resolve/main/split_files/vae/flux2-vae.safetensors

ダウンロード後のフォルダー構成は次のようになります。

ComfyUI/
└── models/
    ├── diffusion_models/
    │   └── flux-2-klein-9b-fp8.safetensors
    ├── text_encoders/
    │   └── qwen_3_8b_fp8mixed.safetensors
    └── vae/
        └── flux2-vae.safetensors

サイズの異なるエンコーダーを混在させないでください。4B のワークフローは qwen_3_4b.safetensors、9B のワークフローは Qwen3 8B エンコーダーを使います。

ステップ 2:テキストから画像生成のワークフローを組む

いちばん簡単なのは組み込みテンプレートを使う方法です。ComfyUI でテンプレートブラウザーを開き、Flux.2 Klein 9B Text to Image(image_flux2_text_to_image_9b)を読み込みます。テンプレートの JSON は Comfy-Org の workflow_templates リポジトリで公開されているので、実行前に中身を確認できます。

グラフを構成するノード

ノード役割主な設定
UNETLoader(Load Diffusion Model)Klein 本体を読み込むflux-2-klein-9b-fp8.safetensors
CLIPLoaderQwen3 エンコーダーを読み込むtype は flux2
VAELoaderFLUX.2 VAE を読み込むflux2-vae.safetensors
CLIPTextEncodeポジティブプロンプトをエンコードプロンプト
EmptyFlux2LatentImage空の潜在画像を作成幅と高さ(例:1024x1024)
Flux2Schedulerシグマスケジュールを生成ステップ数、幅、高さ
CFGGuiderガイダンスを適用CFG 値
KSamplerSelectサンプラーを選択euler
RandomNoiseシードを設定再現性のため固定
SamplerCustomAdvancedサンプリングを実行入力のみ
VAEDecode → SaveImageデコードして保存ファイル名の接頭辞

標準の 9B テンプレートは Base 版を 20 ステップ・CFG 5 で読み込みます。UNETLoader を蒸留版に切り替えたら、Flux2Scheduler を 4 ステップ、CFGGuider を 1.0 に変更してください。これは蒸留版のモデルカードや ComfyUI の蒸留版編集テンプレートと同じ設定です。蒸留版に Base 向けの設定を残すと、時間を無駄にするうえ、画像が焼けたような仕上がりになることがあります。

推奨設定

設定蒸留版 9BBase 9B
ステップ数420(ComfyUI テンプレート)〜50(モデルカード例)
CFG / guidance1.04.0〜5.0
サンプラーeulereuler
解像度まず 1024x1024 からまず 1024x1024 から
シードプロンプト調整中は固定プロンプト調整中は固定

Flux2Scheduler の幅と高さは潜在画像のサイズと揃えてください。公式テンプレートは両者を同じ幅・高さの値から接続しているので、自作のグラフや正方形以外のサイズでも同じ方法で配線しましょう。

動作確認用のプロンプト

Klein は自然言語の説明をよく理解するので、被写体、場所、ライティング、描画したい文字などを含む完全な文でプロンプトを書くのがおすすめです。

A vintage motorcycle parked outside a 1950s roadside diner at dusk, neon sign reading "OPEN LATE", wet asphalt reflecting pink and teal light, 35mm photo, shallow depth of field

数秒で 1 枚目が出力され、看板の文字が読めればインストールは成功です。FLUX 系全般に使えるプロンプト構成のヒントは、FLUX 3 プロンプトガイドも参考にしてください。

ステップ 3:画像編集のワークフローを組む

Klein は同じモデルで編集も行えるため、Kontext のような編集専用モデルを別途用意する必要はありません。ComfyUI には 9B 用の編集テンプレートが 2 つあります。image_flux2_klein_image_edit_9b_distilled と image_flux2_klein_image_edit_9b_base です。

編集グラフで追加されるノード

追加ノード役割
LoadImage元画像または参照画像を読み込む
ImageScaleToTotalPixels画像を約 1 メガピクセルにリサイズ
GetImageSizeリサイズ後のサイズを潜在画像とスケジューラーに渡す
VAEEncode参照画像を潜在表現に変換
ReferenceLatent参照の潜在表現をコンディショニングに付与
ConditioningZeroOutゼロ化したネガティブコンディショニングを作成

参照の潜在表現はポジティブプロンプトとゼロ化したネガティブ側の両方に付与され、どちらも CFGGuider に入ります。GetImageSize が EmptyFlux2LatentImage と Flux2Scheduler を制御するため、出力は 1 枚目の参照画像のアスペクト比を引き継ぎます。

単一参照の編集

画像を 1 枚読み込み、シーン全体ではなく変更したい点だけを書きます。蒸留版の編集テンプレートは 4 ステップ・CFG 1 なので、自分の編集でもこの設定から始めましょう。

Change the jacket to deep red leather, keep the face, pose, background and lighting unchanged

複数参照の編集

2 枚以上の画像を使う場合、テンプレートは画像ごとに ReferenceLatent をポジティブ側とネガティブ側の両方に連結します。プロンプトでは画像を順番で指定します。

Place the white handbag from image 2 on the woman's shoulder in image 1, match the soft window light of image 1

BFL のドキュメントでは、同社 API 経由の Klein は最大 4 枚の参照画像に対応するとされています(FLUX.2 概要)。ローカルのグラフでも、参照画像が増えるほどメモリ消費が増え、処理も遅くなります。

トラブルシューティングと低 VRAM 対策

よくあるエラーと対処法

症状考えられる原因対処法
テンプレートがない、赤い "missing node" が表示されるComfyUI が古く FLUX.2 ノードに未対応ComfyUI を更新し、必要なら Nightly 版を使う
9B ファイルのダウンロードで 401 / 403ゲート付きリポジトリで、ライセンス未同意またはトークンなしHugging Face でライセンスに同意し、read トークンを渡す
テキストエンコーダー読み込み時に shape / size 不一致9B に 4B 用エンコーダーを使用、または CLIP type の誤りQwen3 8B エンコーダーを使い、CLIPLoader の type を flux2 にする
CUDA out of memoryBF16 の重み、または高解像度FP8 の重みを使い、1024x1024 から始め、他の GPU アプリを閉じる
蒸留版でぼやける・焼けたような画像になるBase 向け設定(20 ステップ以上、CFG 4〜5)4 ステップ・CFG 1.0 に変更
Base 版でノイズが残る・描き切れないステップ数が少なすぎる20〜50 ステップにする
編集が参照画像を無視するReferenceLatent がコンディショニングに未接続ポジティブ側とネガティブ側の両方に接続

低 VRAM チェックリスト

  • まず FP8 の重みを使いましょう。BFL によれば VRAM を最大 40% 削減でき、対応する RTX GPU なら NVFP4 でさらに削減できます。
  • テキストエンコーダーはフル精度ではなく fp8mixed 版を使います。
  • --lowvram を付けて ComfyUI を起動すると、GPU が埋まったときにモデルの一部がシステム RAM にオフロードされます。
  • 巨大なサイズで直接サンプリングせず、1024x1024 以下で生成してからアップスケールします。
  • バッチサイズは 1 にし、編集グラフの参照画像の枚数を減らします。
  • それでも 9B が収まらない場合、ComfyUI の計測では 4B 蒸留版が 8.4GB で動作しています。

python main.py --lowvram

Diffusers で Klein 9B を動かす

ノードグラフより Python が好みなら、モデルカードに Diffusers の例があります。Diffusers の開発版が必要です。

pip install git+https://github.com/huggingface/diffusers.git
import torch
from diffusers import Flux2KleinPipeline

pipe = Flux2KleinPipeline.from_pretrained(
    "black-forest-labs/FLUX.2-klein-9B", torch_dtype=torch.bfloat16
)
pipe.enable_model_cpu_offload()  # offloads idle parts to CPU to save VRAM

image = pipe(
    prompt="A cat holding a sign that says hello world",
    height=1024,
    width=1024,
    guidance_scale=1.0,
    num_inference_steps=4,
    generator=torch.Generator("cuda").manual_seed(0),
).images[0]
image.save("flux-klein.png")

Base 9B を使う場合は、リポジトリを black-forest-labs/FLUX.2-klein-base-9B に替え、そのモデルカードの例どおり guidance_scale=4.0、num_inference_steps=50 を指定します。

ホスト型 FLUX.2 Pro / Flex を選ぶべきケース

ローカルの Klein は、高速な試行錯誤、プライベートな実験、LoRA 作業に最適です。一方で、9B の商用利用権、安定した稼働、GPU 1 枚では足りない処理量が必要な場合は不便になります。

ローカル Klein 9B とホスト型 FLUX.2 の比較

要件ローカル Klein 9BAPIMart のホスト型 FLUX.2
ハードウェア自分の GPU(BF16 で約 29GB)不要
モデルの商用利用BFL の商用ライセンスが必要オープンウェイトのライセンスではなく API の利用規約に従う
セットアップComfyUI、モデルファイル、更新作業API キー 1 つ
参照画像BFL の記載では Klein は最大 4 枚1 リクエストあたり最大 8 枚
ステップ・ガイダンスの制御完全に可能Flex のみ(steps 1〜50、guidance 1.5〜10)
出力サイズGPU 次第最大 4MP
カスタム LoRA可能(Base 版)不可
コストハードウェアと電気代画像単位の課金。最新料金はモデルページを参照

ホスト型モデルの選び方

APIMart では /v1/images/generations エンドポイントで 3 つの FLUX.2 モデル ID を利用できます。日常的な本番用途でバランスのよい flux-2-pro、ステップ数やガイダンスを調整したいとき(文字組みの多いポスターなど)の flux-2-flex、速度より最高品質を優先する flux-2-max です。料金は出力解像度の区分と参照画像の枚数で決まるので、予算を組む前に FLUX.2 のモデルページを確認してください。

curl --request POST \
  --url https://api.apimart.ai/v1/images/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "flux-2-flex",
    "prompt": "Minimal poster with the headline SUMMER SALE and a small line reading 50% OFF",
    "resolution": "2K",
    "size": "3:4",
    "steps": 50,
    "guidance": 6.5
  }'

この呼び出しは非同期で、data[0].task_id が返ります。status が completed になるまで GET https://api.apimart.ai/v1/tasks/{task_id} をポーリングし、result.images から画像 URL を取得します。参照画像で編集する場合は、公開 URL を最大 8 つ image_urls に渡します。リトライやストレージを含む本番向けの実装パターンは 開発者向け FLUX 画像ワークフローガイドを、別の高速なオープンモデルとの速度・VRAM 比較は Z-Image Turbo vs Flux をご覧ください。

現実的なハイブリッド運用

多くのチームは、ローカルの Klein でプロンプトや LoRA を詰め、最終成果物や顧客向けの画像はホスト型 FLUX.2 で生成しています。平易な説明文で書いたプロンプトは両者の間でそのまま使えることが多く、書き直しはほとんど必要ありません。

よくある質問

FLUX.2 Klein 9B と Klein Base 9B の違いは何ですか?

Klein 9B はステップ蒸留されており、4 ステップ・guidance 1.0 で生成できるため、ほぼリアルタイムの生成が可能です。Klein Base 9B は非蒸留の基盤モデルで、20〜50 ステップが必要ですが出力の多様性が高く、ファインチューニングや LoRA 学習の出発点として推奨されています。

FLUX.2 Klein 9B は商用利用できますか?

別途契約がない限り、モデル自体の商用利用はできません。9B は 2 種類とも FLUX Non-Commercial License で、モデルの利用は非商用目的に限られます。BFL は bfl.ai/licensing で商用ライセンスを提供しています。ライセンスには、いくつかの例外を除き出力物は商用を含むあらゆる目的に使えるとありますので、全文を確認してください。セルフホストで商用利用したい場合は、Apache 2.0 の Klein 4B が選択肢になります。

FLUX.2 Klein 9B に必要な VRAM はどのくらいですか?

モデルカードではフル精度で約 29GB とされており、RTX 4090 以上で CPU オフロードを併用する構成が目安です。BFL によれば FP8 で最大 40%、NVFP4 で最大 55% メモリ使用量を削減できますが、9B FP8 の正確な VRAM 値は公式に確認されていません。16GB 以下の GPU なら 4B のほうが無難です。

ComfyUI ではステップ数と CFG をどう設定すればよいですか?

蒸留版 9B は 4 ステップ・CFG 1.0、サンプラーは euler です。Base 9B は ComfyUI テンプレートが 20 ステップ・CFG 5、Hugging Face の例が 50 ステップ・guidance 4.0 です。どちらも 1024x1024 から始めてください。

画像編集には別のモデルが必要ですか?

不要です。1 つの Klein モデルでテキストから画像生成、単一参照編集、複数参照編集をすべて処理できます。ComfyUI ではテキストから画像生成のグラフに LoadImage、VAEEncode、ReferenceLatent ノードを追加するか、公式の編集テンプレートを読み込みます。

APIMart で FLUX.2 Klein は使えますか?

使えません。APIMart が提供しているのはホスト型の FLUX.2 Pro・Flex・Max で、Klein は含まれません。オープンウェイトのライセンス管理より API 呼び出しを選びたい場合、最大 8 枚の参照画像が必要な場合、適切なローカル GPU がない場合には、有力な代替手段になります。

今後の注目ポイント

Klein はコミュニティで急速に広がっており、Hugging Face のページにはすでに多数のアダプター、ファインチューニングモデル、量子化版が並んでいます。ComfyUI テンプレートの更新、新しい量子化ウェイト、BFL のライセンス変更は、GPU で動かせる範囲や製品に組み込める範囲を左右するので注視しておきましょう。ワークロードが 1 台のマシンを超える場合や明確な商用条件が必要な場合は、スケールさせる前に同じプロンプトをホスト型 FLUX.2 Pro や Flex で試してみてください。

タグ#FLUX.2 Klein#FLUX.2#ComfyUI#local AI image generation#image editing#open-weight models

APIMart チームについて

APIMart チームは、AI でプロダクトを開発する開発者向けに、モデル解説・比較・料金分析を執筆しています。APIMart なら 1 つの API で 500 以上のチャット・画像・動画モデルを利用でき、本記事で紹介したモデルをリリース前に比較検証できます。

次は試してみましょう

モデルマーケットで使いたいモデルを選ぶ

APIMart のモデルマーケットでチャット、画像、動画モデルを試し、統一 API でモデルの能力をすばやく体験できます。

チャットモデル画像モデル動画モデル
モデルマーケットを見る