File size: 5,499 Bytes
dca1c6a
ec0bf9c
c066480
 
b84f132
c066480
dca1c6a
84c3977
ec0bf9c
 
 
 
 
 
 
 
 
 
 
 
c066480
 
 
b84f132
 
c066480
b84f132
 
ec0bf9c
 
dca1c6a
 
 
 
 
5def6cc
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
dca1c6a
 
 
5592275
dca1c6a
628f17f
62c0a75
dca1c6a
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
import gradio as gr
import requests
import os
import base64
from PIL import Image


api_url = "https://codinglehrer.pythonanywhere.com/generate_image"

def generate_image(prompt, seed=0, negative_prompt="", model="Deliberate", sampler="k_dpmpp_2s_a", steps=50):
    data = {
        "prompt": prompt,
        "seed": seed,
        "negative_prompt": negative_prompt,
        "model": model,
        "sampler": sampler,
        "steps": steps
    }
    response = requests.post(api_url, data=data)
    if response.status_code == 200:
        # Decode the base64 image string
        img_bytes = base64.b64decode(response.json()["url"])
        
        # Open the image using Pillow
        img = Image.open(io.BytesIO(img_bytes))
        
        # Return the image object
        return img
    else:
        return None

inputs = [
    gr.inputs.Textbox(label="Prompt"),
    gr.inputs.Number(label="Seed", default=0),
    gr.inputs.Textbox(label="Negative Prompt", default=""),
    gr.inputs.Dropdown(['3DKX', 'Abyss OrangeMix', 'AbyssOrangeMix-AfterDark', 'ACertainThing',
    'AIO Pixel Art', 'Analog Diffusion', 'Anime Pencil Diffusion', 'Anygen',
    'Anything Diffusion', 'Anything v3', 'anything_v4_inpainting',
    'App Icon Diffusion', 'Arcane Diffusion', 'Archer Diffusion',
    'Asim Simpsons', 'A to Zovya RPG', 'Balloon Art', 'Borderlands', 'BPModel',
    'BubblyDubbly', 'Char', 'CharHelper', 'Cheese Daddys Landscape Mix',
    'ChilloutMix', 'ChromaV5', 'Classic Animation Diffusion', 'Clazy',
    'Colorful', 'Coloring Book', 'Comic-Diffusion', 'Concept Sheet',
    'Counterfeit', 'Cyberpunk Anime Diffusion', 'CyriousMix',
    'Dan Mumford Style', 'Darkest Diffusion', 'Dark Victorian Diffusion',
    'Deliberate', 'DGSpitzer Art Diffusion', 'Disco Elysium', 'DnD Item',
    'Double Exposure Diffusion', 'Dreamlike Diffusion',
    'dreamlike_diffusion_inpainting', 'Dreamlike Photoreal',
    'DreamLikeSamKuvshinov', 'Dreamshaper', 'DucHaiten',
    'DucHaiten Classic Anime', 'Dungeons and Diffusion', 'Dungeons n Waifus',
    'Eimis Anime Diffusion', 'Elden Ring Diffusion', "Elldreth's Lucid Mix",
    'Elldreths Retro Mix', 'Epic Diffusion', 'Eternos', 'Experience',
    'ExpMix Line', 'FaeTastic', 'Fantasy Card Diffusion', 'FKing SciFi',
    'Funko Diffusion', 'Furry Epoch', 'Future Diffusion', 'Ghibli Diffusion',
    'GorynichMix', 'Grapefruit Hentai', 'Graphic-Art',
    'GTA5 Artwork Diffusion', 'GuoFeng', 'Guohua Diffusion', 'HASDX',
    'Hassanblend', "Healy's Anime Blend", 'Hentai Diffusion', 'HRL', 'iCoMix',
    'Illuminati Diffusion', 'Inkpunk Diffusion', 'Jim Eidomode',
    'JWST Deep Space Diffusion', 'Kenshi', 'Knollingcase', 'Korestyle',
    'kurzgesagt', 'Laolei New Berry Protogen Mix', "Lawlas's yiff mix",
    'Liberty', 'Marvel Diffusion', 'Mega Merge Diffusion', 'Microcasing',
    'Microchars', 'Microcritters', 'Microscopic', 'Microworlds',
    'Midjourney Diffusion', 'Midjourney PaintArt', 'Min Illust Background',
    'ModernArt Diffusion', 'mo-di-diffusion', 'Moedel', 'MoistMix',
    'Movie Diffusion', 'NeverEnding Dream', 'Nitro Diffusion', 'Openniji',
    'OrbAI', 'Papercutcraft', 'Papercut Diffusion', 'Pastel Mix',
    'Perfect World', 'PFG', 'PIXHELL', 'Poison', 'Pokemon3D', 'PortraitPlus',
    'PPP', 'Pretty 2.5D', 'PRMJ', 'Project Unreal Engine 5', 'ProtoGen',
    'Protogen Anime', 'Protogen Infinity', 'Pulp Vector Art', 'PVC',
    'Rachel Walker Watercolors', 'Rainbowpatch', 'Ranma Diffusion',
    'RCNZ Dumb Monkey', 'RCNZ Gorilla With A Brick', 'RealBiter',
    'Realism Engine', 'Realistic Vision', 'Redshift Diffusion', 'Rev Animated',
    'Robo-Diffusion', 'Rodent Diffusion', 'RPG', 'Samdoesarts Ultmerge',
    'Sci-Fi Diffusion', 'SD-Silicon', 'Seek.art MEGA', 'Smoke Diffusion',
    'Something', 'Sonic Diffusion', 'Spider-Verse Diffusion',
    'Squishmallow Diffusion', 'stable_diffusion', 'stable_diffusion_2.1',
    'stable_diffusion_2_inpainting', 'Supermarionation', 'Sygil-Dev Diffusion',
    'Synthwave', 'SynthwavePunk', 'TrexMix', 'trinart', 'Trinart Characters',
    'Tron Legacy Diffusion', 'T-Shirt Diffusion', 'T-Shirt Print Designs',
    'Uhmami', 'Ultraskin', 'UMI Olympus', 'Unstable Ink Dream', 'URPM',
    'Valorant Diffusion', 'Van Gogh Diffusion', 'Vector Art', 'vectorartz',
    'Vintedois Diffusion', 'VinteProtogenMix', 'Vivid Watercolors',
    'Voxel Art Diffusion', 'waifu_diffusion', 'Wavyfusion', 'Woop-Woop Photo',
    'Xynthii-Diffusion', 'Yiffy', 'Zack3D', 'Zeipher Female Model',
    'Zelda BOTW'], label="Model", default="Deliberate"),
    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="filepath")

interface = gr.Interface(generate_image, inputs, outputs, title="<a href='https://huggingface.co/spaces/ImagineAI-Real/ImagineAI-Image-Generator'>ImagineAI-Real/ImagineAI Image Generator</a>", 
                         description="Enter a prompt, click Submit and wait a bit for your image.<br/>If taking too long, duplicate the space.<br>Like this if you like it :)", 
                         examples=[["A cat sitting on a chair"], 
                                   ["A landscape with mountains and a lake"], 
                                   ["A portrait of a woman with red hair"]])

interface.launch()