TopArtModels / app.py
DiffusionArtco's picture
Update app.py
7b95f1c
raw
history blame
2.05 kB
import gradio as gr
import requests
from PIL import Image
from io import BytesIO
import base64
api_url = "https://5cb20b40-572c-426f-9466-995256f9b6eb.id.repl.co/generate_image"
def generate_image(model="Dreamlike Diffusion", prompt="", seed=0, negative_prompt="", sampler="k_dpmpp_2s_a", steps=50):
data = "?model=" + model + "&prompt=" + prompt + "&seed=" + str(seed) + "&negative_prompt=" + negative_prompt + "&sampler=" + sampler + "&steps=" + str(steps)
response = requests.post(api_url + data, timeout=400)
if response.status_code == 200:
img_base64 = response.json()["url"]
img_bytes = base64.b64decode(img_base64)
img = Image.open(BytesIO(img_bytes))
return img
else:
return None
inputs = [
gr.inputs.Dropdown(['Deliberate', 'Dreamlike Diffusion', 'Dreamshaper', 'Elden Ring Diffusion', 'Epic Diffusion', 'Experience', 'FaeTastic', 'Inkpunk Diffusion', 'Kenshi', 'Mega Merge Diffusion', 'Midjourney Diffusion', 'Midjourney PaintArt', 'ModernArt Diffusion', 'Movie Diffusion', 'NeverEnding Dream', 'PRMJ', 'ProtoGen', 'RealBiter', 'RCNZ Gorilla With A Brick', 'RPG', 'Seek.art MEGA', 'Samdoesarts Ultmerge', 'Seek.art MEGA', 'Unstable Ink Dream', 'Van Gogh Diffusion', 'VinteProtogenMix' ], label="Model", default="Dreamlike Diffusion"),
gr.inputs.Textbox(label="Prompt"),
gr.inputs.Number(label="Seed", default=0),
gr.inputs.Textbox(label="Negative Prompt", default=""),
gr.inputs.Dropdown(["k_lms", "k_heun", "k_euler", "k_euler_a", "k_dpm_2", "k_dpm_2_a", "DDIM", "k_dpm_fast", "k_dpm_adaptive", "k_dpmpp_2m", "k_dpmpp_2s_a", "k_dpmpp_sde"], label="Sampler", default="k_dpmpp_2s_a"),
gr.inputs.Number(label="Steps", default=50)
]
outputs = gr.outputs.Image(label="Generated Image", type="pil")
interface = gr.Interface(generate_image, inputs, outputs, title="PhotoGen 3.0",
description="<center>The best Realistic Photo Generation Models in one place.</center>",
examples=[])
interface.launch()