FLUX 3 Imageは、Black Forest Labsが所有するReplicateモデルや複数のパートナーエンドポイントを通じて利用できます。4K出力に加え、最大10枚の参照画像を使った編集にも対応しています。一方、BFLの公式ドキュメントで中心的に扱われているのは現在もFLUX 3 Videoです。画像向けAPIはプロバイダーごとにスキーマ、制限、課金方法が異なるため、導入時は同じモデル名だけで判断しないことが重要です。
FLUX 3 Image APIは本当に使えるのか
FLUX 3 Image APIは利用できます。ただし、「公式」と呼ぶ範囲は明確にしておくべきです。最も確かな根拠は、Black Forest Labsが所有するReplicate上のblack-forest-labs/flux-3-imageの公開モデルです。テキストからの生成に加え、画像を渡すと編集モードに切り替わり、解像度として4kを指定できます。
| 2026年10月2日時点で確認した提供面 | 公開・稼働しているもの | 確認できること |
|---|---|---|
| Replicate上のBFL | black-forest-labs/flux-3-image | BFL所有モデル。テキスト生成、編集、4K、最大10枚の参照画像に対応 |
| falのパートナーエンドポイント | blackforestlabs/flux-3/edit-image | 商用編集エンドポイント。参照画像は1〜10枚、キューAPI、解像度ベースの課金 |
| Layer APIドキュメント | bfl-flux-3-image | 非同期のワークスペースAPIを通じた1K・2K・4K生成と編集 |
| BFL公式APIドキュメント | FLUX 3 Videoを掲載 | 確認時点で、同等の公式FLUX 3 Imageルートは掲載されていない |
flux3api.comとコミュニティ製ラッパー | 別事業者によるサードパーティサービス | 名前が一致するだけでは、BFL所有であることや現在のFLUX 3 Image対応は確認できない |
FLUX 3に関するBFLのヘルプ記事が説明しているのは動画モデルだけです。画像編集については、BFL所有のReplicateリストと各パートナーのエンドポイントが別途、利用可能性を裏付けています。
エンドポイントが登場する前、Redditユーザーのu/rerriはAPI先行のリリースを予想していました。
「API限定のFlux 3 Imageが先に登場しても驚かない」— r/StableDiffusionのu/rerri
実際の展開はこの予想に近いものです。ただし、APIで利用できることと、オープンウェイトが公開されていることは別の話です。
4Kと複数参照編集で、実際に何ができるのか
FLUX 3 Imageでは、出力解像度として4kを指定でき、最大10枚の参照画像を渡せます。ただし、どちらも人物の同一性、製品の細部、細かな文字まで必ず保持できることを意味するわけではありません。各プロバイダーが公開しているのは主に設定項目やサンプルであり、独立した品質スコアではないためです。
BFL所有のReplicate READMEでは、768sq、1k、1.5k、2k、4kを選択できます。参照ファイルはJPEG、PNG、GIF、WebPに対応し、最小256×256ピクセル、最大16メガピクセルです。aspect_ratio: autoを指定した場合、最初の参照画像が編集結果のアスペクト比を決めます。
falの編集スキーマは似ていますが、細部は同一ではありません。URLまたはデータURIを1〜10個受け付け、各入力画像は4メガピクセルまでです。512sqから4kまで指定でき、4Kでは数分かかる場合があると案内されています。参照画像の順番にも意味があり、image_urlsの最初の要素が「image 1」です。
| 項目 | Replicate | fal | 本番運用への影響 |
|---|---|---|---|
| 参照画像の最大数 | 10 | 10 | プロンプト内で各画像の番号を明示する |
| 入力画像の最大サイズ | 16 MP | 1枚あたり4 MP | プロバイダーへ送る前に検証する |
| 出力解像度 | 768sq、1K、1.5K、2K、4K | 512sq、768sq、1K、2K、4K | 検証なしで共通のenumを使い回さない |
| 自動アスペクト比 | 最初の参照画像を基準に決定 | 最初の参照画像を基準に決定 | 構図の基準にする画像を先頭に置く |
| 出力形式 | WebP、JPG、PNG | JPEG、PNG | 後段のファイル処理を正規化する |
| 4Kの遅延に関する説明 | 実測レイテンシーは未公開 | 数分かかる場合がある | インタラクティブなプレビュー処理から4Kを外す |
複数参照の編集では、各画像に役割を割り当ててください。ベース構図、被写体の同一性、製品、スタイルといった具合です。fal自身も、1回のリクエストで行う編集は1つに絞るよう推奨しています。「image 1をベースにし、image 2の製品だけに置き換える。手、カメラアングル、照明、背景は維持する」といった指示のほうが、衣装や文字組み、場所まで同時に変更する依頼より検証しやすくなります。
キュー型APIで組む実用的なワークフロー
本番環境のFLUX 3 Image APIは、生成を非同期ジョブとして扱うのが基本です。アプリケーション側で安定した入力URLを用意し、範囲を絞ったリクエストを送信します。プロバイダーから返されたリクエストIDを保存し、バックオフ付きで状態を確認。完了した出力は自社管理のストレージへコピーします。
以下の例では、falがドキュメントで公開しているエンドポイント識別子とリクエスト項目を使っています。ここで示すリクエストを今回の検証中に実行した、という意味ではありません。あくまで統合用のテンプレートです。
import os
import time
import requests
ENDPOINT = "https://queue.fal.run/blackforestlabs/flux-3/edit-image"
headers = {
"Authorization": f"Key {os.environ['FAL_KEY']}",
"Content-Type": "application/json",
}
payload = {
"prompt": (
"Use image 1 as the base. Replace only its package with the product "
"from image 2. Preserve the hands, camera angle, shadows, and background."
),
"image_urls": [
"https://cdn.example.com/base.jpg",
"https://cdn.example.com/product.png",
],
"resolution": "1k",
"aspect_ratio": "auto",
"output_format": "png",
"safety_tolerance": 2,
}
submitted = requests.post(ENDPOINT, headers=headers, json=payload, timeout=30)
submitted.raise_for_status()
job = submitted.json()
status_url = job["status_url"]
response_url = job["response_url"]
while True:
status = requests.get(status_url, headers=headers, timeout=30)
status.raise_for_status()
state = status.json().get("status")
if state == "COMPLETED":
break
if state in {"FAILED", "CANCELLED"}:
raise RuntimeError(status.text)
time.sleep(2)
result = requests.get(response_url, headers=headers, timeout=30)
result.raise_for_status()
print(result.json())
モデルページからリンクされているfalのキュー関連ドキュメントには、sync_modeも用意されています。ただし、4Kでは通常のHTTPリクエストのタイムアウトを超える可能性があるため、キュー実行をデフォルトにするほうが安全です。Layerはこの非同期契約をさらに明確にしており、送信時にHTTP 202、inference_id、推奨ポーリング間隔を返します。また、24時間再利用できる冪等性キーにも対応しているため、ネットワーク再試行による二重課金の防止に役立ちます。
トラフィックを流す前に、次の項目を確認しておきます。
- 1辺256ピクセル未満の画像を拒否し、選択したプロバイダーのメガピクセル上限を適用する。
- 配列の順序を維持し、
image 1、image 2のように画像番号を参照するプロンプトを生成する。 - 対応しているプロバイダーでは一意の冪等性キーを使う。対応していない場合は、再試行前にリクエストを保存する。
- ポーリング時間に上限を設け、アプリケーションのリクエストを開いたままにせず、保留状態を返す。
- ホスティング先の結果URLがアプリケーションの保持ポリシーと合わない可能性があるため、完了ファイルを管理下のストレージへコピーする。
- すべてのジョブについて、モデルID、プロバイダー、解像度、参照画像数、提示コスト、経過時間、モデレーション結果を記録する。
コストと品質をどう見極めるか
確認したページには解像度ごとの完全な料金表が掲載されていなかったため、厳密なコスト比較には限界があります。falは1Kについて、キャンペーン中は画像1枚あたり$0.024、終了後は$0.048になると案内していました。参照画像の枚数によって料金は変わらないとも説明しています。一方、2Kと4Kの正確な料金はモデルページに記載されていません。したがって、1Kの価格から4Kの予算を推測することはできません。
4Kを常に選ぶのではなく、次の2段階で運用するのが現実的です。
| 段階 | 解像度 | 目的 | 次の段階へ進める条件 |
|---|---|---|---|
| プロンプトと参照画像の検証 | 1K | 構図、同一性、製品形状、文字を確認する | 高コストな出力へ進む前に却下または修正する |
| 最終アセット | 2Kまたは4K | 承認済みの納品物を生成する | 配信先がその画素数を必要とする場合だけ昇格する |
高解像度で増えるのは画素数であって、編集の忠実度ではありません。1Kで崩れている編集結果を4Kにしても、失敗が大きくなるだけです。印刷物、看板レイアウト、大幅なトリミングなど、4Kが必要な承認済み編集に用途を限定しましょう。
アプリケーションの起動時には、最小限の有効なテストジョブを送るか、プロバイダーの料金情報を問い合わせて提示額を取得します。そのうえで、料金が返らない場合やジョブ予算を超える場合は4Kを無効化します。Layerの初期レスポンスにはestimated_price_creative_unitsが含まれる場合がありますが、公開モデルページにはドル換算の情報がありませんでした。Replicateの確認済みモデルページにも入力項目は記載されていましたが、固定価格はありません。これらはコード内で推測する数字ではなく、リリース前にアカウントのダッシュボードで解決すべき調達上の確認事項です。
エンドポイントは運用要件で選ぶ
プロバイダーは、アプリケーションが必要とする契約に合わせて選びます。モデルの所有者が同じ、あるいは名前が似ているからといって、スキーマまで互換になるわけではありません。
- Replicate:BFL所有モデルであることを重視し、すでにReplicateの予測ワークフローを使っているなら候補になります。今回確認した中では入力上限が16 MPと最も大きく、オプションでWeb/画像グラウンディングにも対応しています。
- fal:画像編集向けの明確な設定、キュー方式、公開された1K価格を重視するなら候補です。ただし入力上限は4 MPなので、早い段階での縮小処理が必要になります。
- Layer:ワークスペース管理、HTTP
202による明確な契約、ポーリングのヒント、24時間有効な冪等性を求める場合に向いています。予算を決める前に、Creative Unitsがドルにどう換算されるかを確認してください。
ドメイン名やリポジトリ名に「FLUX3」と書かれているだけで、プロバイダーをBFLと判断してはいけません。モデルID、所有者またはパートナー表記、現在有効なenum値、商用条件、そして低コストなリクエストが実際に成功することを確認しましょう。検索上位に表示されるAnil-matcha/Flux-3-Dev-APIラッパーは、確認時点でも画像ルートを「coming soon」としていました。一方、BFL所有のReplicateルートとfalのパートナールートは稼働していました。
本番リリース前のチェック項目
FLUX 3 Imageは、4Kや最大10枚の参照画像を含むAPIテストに適しています。ただし本番投入は、選択したエンドポイントが代表的な編集セットを1Kと最終解像度の両方で処理できることを確認してからにしてください。
| 確認項目 | 合格条件 |
|---|---|
| 出所 | BFL所有、または検証済みパートナーの正確なモデルIDである |
| 利用可能性 | ドキュメント上のルートではなく、実際の低コストリクエストが完了する |
| 参照画像の挙動 | 2枚、5枚、10枚の代表ケースで、入力順と役割ラベルが維持される |
| 品質 | 同一性、製品形状、文字、変更していない領域が定めたレビュー基準を満たす |
| コスト | 有効化したすべての解像度について、許容可能な価格が返る、または表示される |
| レイテンシー | キュー待ち時間と生成時間の実測値が、プレビューおよびバッチ処理の目標に収まる |
| 信頼性 | 再試行によって追跡不能な重複ジョブや課金が発生しない |
| ストレージ | プロバイダーのURLが失効したりポリシーが変わったりする前に、出力をコピーできる |
実務上のおすすめは、まず1K編集から始め、提示料金とレイテンシーを記録することです。2Kや4Kは承認済みの最終成果物に限って有効化します。これなら、FLUX 3 Imageで確認されている強力な機能を活用しながら、高解像度時の品質やコストについて未検証の前提を置かずに済みます。