Maaz66's picture
Update app.py
e15e19a
import gradio as gr
import inspect
import warnings
from typing import List, Optional, Union
import requests
from io import BytesIO
from PIL import Image
import torch
from torch import autocast
from tqdm.auto import tqdm
from diffusers import StableDiffusionImg2ImgPipeline
from huggingface_hub import notebook_login
notebook_login()
device = "cuda"
model_path = "CompVis/stable-diffusion-v1-4"
pipe = StableDiffusionImg2ImgPipeline.from_pretrained(
model_path,
revision="fp16",
torch_dtype=torch.float16,
use_auth_token=True
)
pipe = pipe.to(device)
def predict(image_url, strength, seed):
seed= int(seed)
response = requests.get(image_url)
init_img = Image.open(BytesIO(response.content)).convert("RGB")
init_img = init_img.resize((768, 512))
generator = torch.Generator(device=device).manual_seed(seed)
with autocast("cuda"):
image = pipe(prompt="", init_image=init_img, strength=strength, guidance_scale=5, generator=generator).images[0]
return image
gr.Interface(
predict,
title = 'Image to Image using Diffusers',
inputs=[
gr.Textbox(label="image_url"),
gr.Slider(0, 1, value=0.05, label ="strength"),
gr.Number(label = "seed")
],
outputs = [
gr.Image()
]
).launch()