Spaces:
Runtime error
Runtime error
import gradio as gr | |
from diffusers import StableDiffusionPipeline | |
import torch | |
import os | |
# Hugging Faceのトークン | |
HUGGING_FACE_TOKEN = os.getenv("token") | |
# モデルのロード | |
def load_model(): | |
model_id = "soiz1/hololive-diffusion" | |
pipe = StableDiffusionPipeline.from_pretrained( | |
model_id, | |
use_auth_token=HUGGING_FACE_TOKEN | |
) | |
pipe.to("cuda" if torch.cuda.is_available() else "cpu") | |
return pipe | |
# 画像生成関数 | |
def generate_image(prompt, num_inference_steps, guidance_scale): | |
try: | |
result = pipe(prompt, num_inference_steps=num_inference_steps, guidance_scale=guidance_scale) | |
return result.images[0] | |
except Exception as e: | |
return f"エラーが発生しました: {e}" | |
# Gradioインターフェースの定義 | |
pipe = load_model() | |
with gr.Blocks() as demo: | |
gr.Markdown("## Hololive Diffusion 画像生成") | |
with gr.Row(): | |
with gr.Column(): | |
prompt = gr.Textbox(label="プロンプト", placeholder="例: かわいい猫のイラスト") | |
num_inference_steps = gr.Slider(1, 100, value=50, step=1, label="推論ステップ数") | |
guidance_scale = gr.Slider(1, 20, value=7.5, step=0.1, label="ガイダンススケール") | |
generate_button = gr.Button("画像生成") | |
with gr.Column(): | |
output_image = gr.Image(label="生成された画像") | |
generate_button.click( | |
fn=generate_image, | |
inputs=[prompt, num_inference_steps, guidance_scale], | |
outputs=[output_image] | |
) | |
# アプリの実行 | |
demo.launch() | |