|
|
| import gradio as gr |
| import torch |
| |
| from diffusers import StableDiffusionPipeline |
| from diffusers.models import AutoencoderKL |
| from diffusers import StableDiffusionPipeline |
|
|
|
|
|
|
|
|
| def generate(prompt, negative_prompts, samples, steps,scale, seed, width, height): |
|
|
| pipeline = StableDiffusionPipeline.from_pretrained("jayparmr/icbinp", use_auth_token="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", torch_dtype=torch.float16) |
| pipeline.to("cuda") |
| |
| generator = torch.Generator(device="cuda").manual_seed(int(seed)) |
| |
| images_list = pipeline( |
| [prompt] * samples, |
| negative_prompt= [negative_prompts] * samples, |
| num_inference_steps=steps, |
| guidance_scale=scale, |
| generator=generator, |
| width=width, |
| height=height |
| ) |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| print("stop gen") |
| images = [] |
| print(images_list) |
| for i, image in enumerate(images_list["images"]): |
| images.append(image) |
| return images |
|
|
| block = gr.Blocks() |
|
|
| with block: |
| with gr.Group(): |
| with gr.Box(): |
| with gr.Row().style(equal_height=True): |
| text = gr.Textbox( |
| label="Enter your prompt", |
| show_label=False, |
| max_lines=1, |
| placeholder="Enter your prompt", |
| ) |
| negative_text = gr.Textbox( |
| value="", |
| label="Enter your negative prompt", |
| show_label=False, |
| max_lines=1, |
| placeholder="Enter your negative prompt", |
| ) |
| btn = gr.Button("Generate image") |
| gallery = gr.Gallery( |
| label="Generated images", show_label=False, elem_id="gallery", width = 512 |
| ).style(columns=[2], rows=[2], object_fit="contain", height="auto") |
|
|
|
|
| with gr.Row(elem_id="advanced-options"): |
| samples = gr.Slider(label="Images", minimum=1, maximum=4, value=1, step=1) |
| steps = gr.Slider(label="Steps", minimum=1, maximum=500, value=100, step=1) |
| width = gr.Slider(label="width", minimum=1, maximum=2048, value=512, step=1) |
| height = gr.Slider(label="height", minimum=1, maximum=2048, value=512, step=1) |
| scale = gr.Slider( |
| label="Guidance Scale", minimum=0, maximum=50, value=7.5, step=0.1 |
| ) |
| seed = gr.Slider( |
| label="Seed", |
| minimum=0, |
| maximum=2147483647, |
| step=1 |
| ) |
| text.submit(generate, inputs=[text,negative_text, samples, steps, scale, seed, width, height], outputs=gallery) |
| btn.click(generate, inputs=[text,negative_text, samples, steps, scale, seed, width, height], outputs=gallery) |
| |
| |
| block.launch() |