0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Gradioを使ってSDXL TURBOのリアルタイム変更テキストから画像を実装してみたよ。

Posted at

SDXL TURBOとGradioを使ってWebインターフェースを作ってみました。

SDXL Turbo以下のサイトでも試すことができるのですが、微妙な調整などができないので、自分で作りました。まだ、調整段階なのでパラメーターの調整などはできないのですが、これもインターフェースからできるようにする予定です。

Gradio

今回はGradioというアプリケーションを使って作成しました。
すごく簡単にWebインターフェースが作れます。

どんなのができた?

実際に作ったのはこれ。

このプロンプトとともに画像がパッパッって変わっていく様子が良いですね。結構、これはこれで使えるなと思います。

それではコード。

コード

今回はGoogle colabでGPUを使っています。というのも前回のようにCPUだと、画像の変更に時間がかかってしまい、SDXL-Turboのいい所が使えなくなってしまうからです。

インストール

以下をインストールします。Google colabでは前に”!”を付けます。

pip install diffusers transformers accelerate --upgrade
pip install gradio
pip install Pillow

コード

import gradio as gr
import gradio as gr
from diffusers import AutoPipelineForImage2Image
import torch
from PIL import Image

# Diffusers パイプラインを初期化
pipe = AutoPipelineForText2Image.from_pretrained("stabilityai/sdxl-turbo", torch_dtype=torch.float16, variant="fp16")
pipe.to("cuda")

# プロンプトに基づいて画像を生成する関数
def generate_image(prompt):
    image = pipe(prompt=prompt, num_inference_steps=1, guidance_scale=0.0).images[0]
    return image

iface = gr.Interface(
    fn=generate_image,
    inputs=gr.Textbox(label="Promopt"), # 入力ラベルの変更
    outputs=gr.Image(label="Image"), # 出力ラベルの変更
    title="SDXL Turbo", # インターフェースのタイトル
    live=True
)

iface.launch()

num_inference_steps=1
これはモデルが画像生成のために行う推論ステップの数です。数値が小さい(この場合は1)と、生成プロセスが速くなりますが、生成される画像の品質は影響を受ける可能性があります。

guidance_scale=0.0
これはモデルがプロンプトに従う度合いを決定するパラメータです。0.0の値は、プロンプトへの従順性がないことを意味し、モデルはより自由に画像を生成することになります。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?