weifeng-chen's picture
update
2b8b583
raw
history blame
1.32 kB
import gradio as gr
from diffusers import StableDiffusionPipeline
# from PIL import Image
device="cpu"
model_id = "IDEA-CCNL/Taiyi-Stable-Diffusion-1B-Chinese-v0.1"
# pipe_img2img = StableDiffusionImg2ImgPipeline.from_pretrained(model_id, tokenizer=tokenizer, text_encoder=text_encoder, vae=vae, unet=unet).to(device)
pipe_text2img = StableDiffusionPipeline.from_pretrained(model_id).to(device)
def resize(w_val,l_val,img):
img = Image.open(img)
img = img.resize((w_val,l_val), Image.Resampling.LANCZOS)
return img
def infer(prompt, guide, steps, width, height):
image_list = pipe_text2img([prompt], guidance_scale=guide, num_inference_steps=steps, width=width, height=height)
images = []
for i, image in enumerate(image_list["sample"]):
images.append(image)
return image
gr.Interface(fn=infer, inputs=
[
# gr.Image(source="upload", type="filepath", label="原始图像"),
gr.Textbox(label = '提示词(prompt)'),
gr.Slider(2, 15, value = 7, label = '文本引导强度'),
gr.Slider(10, 30, value = 20, step = 1, label = '迭代次数'),
gr.Slider(256, 768, value = 512, step = 64, label = '宽度'),
gr.Slider(256, 768, value = 512, step = 64, label = '高度'),
],outputs='image').queue(concurrency_count=10).launch()