Skip to content

ShinguLari/stable-diffusion-xl-demo

 
 

Repository files navigation

title emoji colorFrom colorTo sdk sdk_version app_file pinned license
Stable Diffusion XL 0.9
🔥
yellow
gray
gradio
3.11.0
app.py
true
mit

StableDiffusion XL Gradio Demo

これはGradioのデモで Stable Diffusion XL 0.9をサポートします.このデモでは、BASEとRefinerのモデルをロードします。

This is forked from StableDiffusion v2.1 Demo. Refer to the git commits to see the changes.

Update:Google Colabに対応しています。T4でもColab上でこのデモを無料で実行できます。 Open In Colab

作例

左: SDXL 0.9. 右: SD v2.1.

チューニング無しで、SDXLはSD v2.1に比べてはるかに優れた画像を生成します!

作例 1

作例 2

作例 3

作例 4

作例 5

インストール

torch 2.0.1がインストールされている場合、次のファイルもインストールする必要があります。:

pip install accelerate transformers invisible-watermark "numpy>=1.17" "PyWavelets>=1.1.1" "opencv-python>=4.1.0.25" safetensors "gradio==3.11.0"
pip install git+https://github.com/huggingface/diffusers.git@sd_xl

起動

無料ですが、ウェイトにアクセスする必要がある。 submit a quick form ウェイトをロードするには2つの方法がある。ウェイトにアクセスした後、ローカルにcloneするか、このrepoでウェイトをロードするかです。

オプション 1

もし両方のreopをローカルでcloneした場合 (base, refiner) (以下に変えて下さい path_to_sdxl):

PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:512 SDXL_MODEL_DIR=/path_to_sdxl python app.py

オプション 2

huggingface hub からロードしたい場合は(以下をセットアップしてください HuggingFace access token):

PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:512 ACCESS_TOKEN=YOUR_HF_ACCESS_TOKEN python app.py

torch.compile サポート

torch.compileをオンにすると、全体的な推論が速くなります。しかしこれは最初の実行に若干のオーバーヘッドを追加することになります(つまり、最初の実行時にコンパイルを待つ必要があります)。

メモリを節約する

  1. app.pypipe.enable_model_cpu_offload()をオンにし、pipe.to("cuda")`をオフにする。
  2. enable_refiner`をFalseにしてRefinerをオフにする。
  3. 以下の方法を更に知るには メモリを節約し、物事をより速くする.

環境変数によるいくつかのオプション

  • SDXL_MODEL_DIRACCESS_TOKEN`: ローカルまたは HF hub から SDXL をロードする。
  • ENABLE_REFINER=true/false` Refinerをオン/オフする。(refiner 世代を絞り込む).
  • OUTPUT_IMAGES_BEFORE_REFINER=true/false リファイナーが有効な場合に有効。リファイナーステージ前後の画像を出力する。
  • SHARE=true/false 公開リンクを作成する(共有やコラボに便利)

If you enjoy this demo, please give this repo a star ⭐.

About

A gradio web demo for Stable Diffusion XL 0.9

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 56.3%
  • Jupyter Notebook 43.7%