Spaces:
Running
on
Zero
Running
on
Zero
| import gradio as gr | |
| import numpy as np | |
| import random | |
| from diffusers import DiffusionPipeline | |
| from diffusers import StableDiffusionXLPipeline, DPMSolverSinglestepScheduler | |
| import torch | |
| pipe = StableDiffusionXLPipeline.from_pretrained("sd-community/sdxl-flash", torch_dtype=torch.float16, variant="fp16").to("cuda") | |
| pipe.scheduler = DPMSolverSinglestepScheduler.from_config(pipe.scheduler.config, timestep_spacing="trailing") | |
| def generate_image(prompt, negative_prompt): | |
| # Run the diffusion model to generate an image | |
| output = pipe(prompt, negative_prompt, num_inference_steps=7, guidance_scale=3.5) | |
| return output.images[0] | |
| prompt = gr.Textbox(label = "Prompt", info = "Describe the subject, the background and the style of image", placeholder = "Describe what you want to see", lines = 2) | |
| negative_prompt = gr.Textbox(label = "Negative prompt", placeholder = "Describe what you do NOT want to see", value = "Ugly, malformed, noise, blur, watermark") | |
| gr_interface = gr.Interface( | |
| fn=generate_image, | |
| inputs=[prompt, negative_prompt], | |
| outputs="image", | |
| title="Real-time Image Generation with Diffusion", | |
| description="Enter a prompt to generate an image", | |
| theme="soft" | |
| ) | |
| # Launch the Gradio app | |
| gr_interface.launch() |