Black Forest Labs による: https://blackforestlabs.ai。 API のドキュメントは docs.bfl.ml にあります。
このリポジトリには、Flux 潜在整流フロー トランスフォーマーを使用してテキストから画像への変換と画像から画像への変換を実行するための最小限の推論コードが含まれています。
私たちは、Replicate、FAL、Mystic、Togetter と喜んで提携します。サービスを使用してモデルをサンプルできます。以下に関連リンクをリストします。
複製:
ファル:
ミスティック:
一緒に:
cd $HOME && git clone https://github.com/black-forest-labs/flux
cd $HOME /flux
python3.10 -m venv .venv
source .venv/bin/activate
pip install -e " .[all] "
以下の 3 つのモデルを提供しています。
FLUX1.1 [pro]
API経由でのみ利用可能FLUX.1 [pro]
API 経由でのみ利用可能FLUX.1 [dev]
ガイダンス蒸留バリアントFLUX.1 [schnell]
ガイダンスと段階蒸留バリアント名前 | ハグフェイスリポジトリ | ライセンス | md5sum |
---|---|---|---|
FLUX.1 [schnell] | https://huggingface.co/black-forest-labs/FLUX.1-schnell | apache-2.0 | a9e1e277b9b16add186f38e3f5a34044 |
FLUX.1 [dev] | https://huggingface.co/black-forest-labs/FLUX.1-dev | FLUX.1-dev 非商用ライセンス | a6bd8c16dfc23db6aee2f63a2eba78c0 |
FLUX.1 [pro] | 当社の API でのみ利用可能です。 | ||
FLUX1.1 [pro] | 当社の API でのみ利用可能です。 |
オートエンコーダーの重みも apache-2.0 でリリースされており、上記の 2 つの HuggingFace リポジトリのいずれかで見つけることができます。どちらのモデルでも同じです。
いずれかのデモを開始すると、ウェイトは HuggingFace から自動的にダウンロードされます。 FLUX.1 [dev]
をダウンロードするには、ログインする必要があります。こちらを参照してください。モデルの重みを手動でダウンロードした場合は、環境変数を使用してダウンロードされたパスを指定できます。
export FLUX_SCHNELL= < path_to_flux_schnell_sft_file >
export FLUX_DEV= < path_to_flux_dev_sft_file >
export AE= < path_to_ae_sft_file >
インタラクティブなサンプリング実行の場合
python -m flux --name < name > --loop
または、単一のサンプル実行を生成するには
python -m flux --name < name >
--height < height > --width < width >
--prompt " "
また、テキストから画像への変換と画像から画像への変換の両方を行うストリームライト デモも提供しています。デモは次の方法で実行できます。
streamlit run demo_st.py
インタラクティブな体験のための Gradio ベースのデモも提供しています。 Gradio デモを実行するには:
python demo_gr.py --name flux-schnell --device cuda
オプション:
--name
: 使用するモデルを選択します (オプション: "flux-schnell"、"flux-dev")--device
: 使用するデバイスを指定します (デフォルト: 使用可能な場合は「cuda」、使用できない場合は「cpu」)--offload
: 使用されていないときはモデルを CPU にオフロードします--share
: デモへの公開リンクを作成します開発モデルを使用してデモを実行し、パブリック リンクを作成するには:
python demo_gr.py --name flux-dev --share
FLUX.1 [schnell]
およびFLUX.1 [dev]
は ? と統合されています。ディフューザーライブラリー。ディフューザーと一緒に使用するには、次のようにインストールします。
pip install git+https://github.com/huggingface/diffusers.git
次に、 FluxPipeline
使用してモデルを実行できます。
import torch
from diffusers import FluxPipeline
model_id = "black-forest-labs/FLUX.1-schnell" #you can also use `black-forest-labs/FLUX.1-dev`
pipe = FluxPipeline . from_pretrained ( "black-forest-labs/FLUX.1-schnell" , torch_dtype = torch . bfloat16 )
pipe . enable_model_cpu_offload () #save some VRAM by offloading the model to CPU. Remove this if you have enough GPU power
prompt = "A cat holding a sign that says hello world"
seed = 42
image = pipe (
prompt ,
output_type = "pil" ,
num_inference_steps = 4 , #use a larger number if you are using [dev]
generator = torch . Generator ( "cpu" ). manual_seed ( seed )
). images [ 0 ]
image . save ( "flux-schnell.png" )
詳細については、ディフューザーのドキュメントをご覧ください。
私たちの API はモデルへのアクセスを提供します。これは、docs.bfl.ml に文書化されています。
このリポジトリでは、簡単な Python インターフェイスも提供します。これを使用するには、まず api.bfl.ml で API に登録し、新しい API キーを作成する必要があります。
API キーを使用するには、 export BFL_API_KEY=
を実行するか、 api_key=
パラメーターを介して指定します。また、上記のようにパッケージがインストールされていることも想定されます。
Pythonからの使用法:
from flux . api import ImageRequest
# this will create an api request directly but not block until the generation is finished
request = ImageRequest ( "A beautiful beach" , name = "flux.1.1-pro" )
# or: request = ImageRequest("A beautiful beach", name="flux.1.1-pro", api_key="your_key_here")
# any of the following will block until the generation is finished
request . url
# -> https:<...>/sample.jpg
request . bytes
# -> b"..." bytes for the generated image
request . save ( "outputs/api.jpg" )
# saves the sample to local storage
request . image
# -> a PIL image
コマンドラインからの使用法:
$ python -m flux.api --prompt= " A beautiful beach " url
https: < ... > /sample.jpg
# generate and save the result
$ python -m flux.api --prompt= " A beautiful beach " save outputs/api
# open the image directly
$ python -m flux.api --prompt= " A beautiful beach " image show