| from PIL import Image |
| import torch |
| import re |
| import gradio as gr |
| from diffusers import AutoPipelineForText2Image |
| from diffusers import AutoPipelineForImage2Image |
| from diffusers.utils import load_image, make_image_grid |
| pipeline_text2image = AutoPipelineForText2Image.from_pretrained("stabilityai/sdxl-turbo", torch_dtype=torch.float16, variant="fp16") |
| pipeline_image2image = AutoPipelineForImage2Image.from_pipe(pipeline_text2image).to("cuda") |
| pipeline_text2image = pipeline_text2image.to("cuda") |
|
|
|
|
| def text2img(prompt = "A cinematic shot of a baby racoon wearing an intricate italian priest robe.",guidance_scale=0.0, num_inference_steps=1): |
| image = pipeline_text2image(prompt=prompt, guidance_scale=guidance_scale, num_inference_steps=num_inference_steps).images[0] |
| return image |
|
|
| def img2img(image,prompt="A cinematic shot of a baby racoon wearing an intricate italian priest robe.", guidance_scale=0.0, num_inference_steps=1,strength=0.5): |
| init_image = load_image(image) |
| init_image = init_image.resize((512, 512)) |
| image = pipeline_image2image(prompt, image=init_image, strength=strength, guidance_scale=guidance_scale, num_inference_steps=num_inference_steps).images[0] |
| return image |
|
|
| gradio_app_text2img = gr.Interface( |
| fn=text2img, |
| inputs=[ |
| gr.Text(), |
| gr.Slider(0.0, 10.0, value=1,step=0.1), |
| gr.Slider(0.0, 100.0, value=1,step=1) |
| ], |
| outputs="image", |
| ) |
|
|
| gradio_app_img2img = gr.Interface( |
| fn=img2img, |
| inputs=[ |
| gr.Image(type='filepath'), |
| gr.Text(), |
| gr.Slider(0.0, 10.0, value=1,step=0.1), |
| gr.Slider(0.0, 100.0, value=1,step=1), |
| gr.Slider(0.0, 1.0, value=0.5,step=0.05) |
| ], |
| outputs="image", |
| ) |
|
|
| demo = gr.TabbedInterface([gradio_app_text2img,gradio_app_img2img], ["text2img","img2img"]) |
|
|
| if __name__ == "__main__": |
| demo.launch() |