| import gradio as gr |
| import numpy as np |
| import random |
| import torch |
| from diffusers import StableDiffusion3Pipeline |
|
|
| |
| import os |
| print(os.getenv('HF_TOKEN')) |
|
|
| gr.load("models/stabilityai/stable-diffusion-3-diffusers") |
|
|
|
|
| with gr.Blocks(css=css) as demo: |
| |
| with gr.Column(elem_id="col-container"): |
|
|
| with gr.Row(): |
| |
| prompt = gr.Text( |
| label="Prompt", |
| show_label=False, |
| max_lines=4, |
| placeholder="Enter your prompt", |
| container=False, |
| ) |
| |
| run_button = gr.Button("Run", scale=0) |
| |
| result = gr.Image(label="Result", show_label=False) |
|
|
| with gr.Accordion("Advanced Settings", open=False): |
| |
| negative_prompt = gr.Text( |
| label="Negative prompt", |
| max_lines=1, |
| placeholder="Enter a negative prompt", |
| visible=False, |
| ) |
| |
| seed = gr.Slider( |
| label="Seed", |
| minimum=0, |
| maximum=MAX_SEED, |
| step=1, |
| value=0, |
| ) |
| |
| randomize_seed = gr.Checkbox(label="Randomize seed", value=True) |
| |
| with gr.Row(): |
| |
| width = gr.Slider( |
| label="Width", |
| minimum=256, |
| maximum=MAX_IMAGE_SIZE, |
| step=32, |
| value=1024, |
| ) |
| |
| height = gr.Slider( |
| label="Height", |
| minimum=256, |
| maximum=MAX_IMAGE_SIZE, |
| step=32, |
| value=1024, |
| ) |
| |
| with gr.Row(): |
| |
| guidance_scale = gr.Slider( |
| label="Guidance scale", |
| minimum=0.0, |
| maximum=10.0, |
| step=0.1, |
| value=2.0, |
| ) |
| |
| num_inference_steps = gr.Slider( |
| label="Number of inference steps", |
| minimum=1, |
| maximum=12, |
| step=1, |
| value=4, |
| ) |
| |
| |
| run_button.click( |
| fn = infer, |
| inputs = [prompt, negative_prompt, seed, randomize_seed, width, height, guidance_scale, num_inference_steps], |
| outputs = [result] |
| ) |
|
|
| demo.queue().launch() |