File size: 6,749 Bytes
6fef025
3c0b2e4
f5b8400
3c0b2e4
 
 
 
 
 
 
 
 
 
 
 
 
f5b8400
3c0b2e4
f5b8400
3c0b2e4
 
27170c1
f5b8400
 
3c0b2e4
 
 
27170c1
 
3c0b2e4
 
 
207433e
e79da81
3c0b2e4
 
 
 
 
 
 
 
 
 
 
 
3977ac5
3c0b2e4
 
 
 
 
 
3cd0dc8
3c0b2e4
 
 
 
 
 
 
 
 
654d3d1
3c0b2e4
27170c1
9eb6928
60432e5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6ce3c6d
 
 
 
 
 
 
 
a474365
 
 
 
 
 
 
 
 
9eb6928
 
 
3c0b2e4
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
100
101
102
103
104
105
106
107
108
109
110
111
112
import gradio as gr
from random import randint
from all_models import models
def load_fn(models):
    global models_load
    models_load = {}
    for model in models:
        if model not in models_load.keys():
            try:
                m = gr.load(f'models/{model}')
            except Exception as error:
                m = gr.Interface(lambda txt: None, ['text'], ['image'])
            models_load.update({model: m})
load_fn(models)
num_models = 6
default_models = models[:num_models]
def extend_choices(choices):
    return choices + (num_models - len(choices)) * ['NA']
def update_imgbox(choices):
    choices_plus = extend_choices(choices)
    return [gr.Image(None, label=m, visible=(m != 'NA')) for m in choices_plus]
def gen_fn(model_str, prompt, negative_prompt=None, image_style="Default"):
    if model_str == 'NA':
        return None
    modified_prompt = prompt
    if image_style != "Default":
        modified_prompt += f", {image_style}"
    if negative_prompt:
        modified_prompt += f", not {negative_prompt}"
    return models_load[model_str](modified_prompt)
with gr.Blocks() as demo:
    with gr.Tab('The Dream'):
        txt_input = gr.Textbox(label='Your prompt:', lines=4, 
    value="beautiful sexy woman, big boobs at beach, relaxing, ethereal, dreamy, backlit, highly detailed, realistic lighting, sharp focus, rule of thirds, artgerm")
        with gr.Accordion("Advanced Settings", open=False) as advanced_settings:
            neg_prompt = gr.Textbox(label='Negative prompt (Optional):', placeholder='Enter undesirable attributes here', lines=2)
            image_style = gr.Dropdown(label='Select Style', choices=["Default", "Realistic", "Portrait", "Anime"], value="Default")
        gen_button = gr.Button('Generate up to 6 images in up to 2 minutes total')
        stop_button = gr.Button('Stop', variant='secondary', interactive=False)
        gen_button.click(lambda s: gr.update(interactive=True), None, stop_button, concurrency_limit=10)
        gr.HTML(
        """
            <div style="text-align: center; max-width: 1200px; margin: 0 auto;">
              <div>
                <body>
                <div class="center"><p style="margin-bottom: 10px; color: var(--body-text-color);">Scroll down to see more images and select models.</p>
                </div>
                </body>
              </div>
            </div>
        """
        )
        with gr.Row():
            output = [gr.Image(label=m, min_width=350) for m in default_models]
            current_models = [gr.Textbox(m, visible=False) for m in default_models]
            for m, o in zip(current_models, output):
                gen_event = gen_button.click(gen_fn, [m, txt_input, neg_prompt, image_style], o, concurrency_limit=10)
                stop_button.click(lambda s: gr.update(interactive=False), None, stop_button, cancels=[gen_event])
        with gr.Accordion('Model selection'):
            model_choice = gr.CheckboxGroup(models, label=f'Choose up to {num_models} different models from the best available!', value=default_models, interactive=True)
            model_choice.change(update_imgbox, model_choice, output)
            model_choice.change(extend_choices, model_choice, current_models)
        with gr.Row():
            gr.HTML(
            """
                <div class="footer">
                <p>
                Best AI Tools • 
    <a href="https://nudeai.beauty" target="_blank">Nude AI</a> • 
    <a href="https://uncensoredai.cc" target="_blank">Uncensored AI</a> • 
    <a href="https://aihentaigenerator.fun" target="_blank">AI Hentai Generator</a> • 
    <a href="https://stable-diffusion-hentai.aihentaigenerator.fun" target="_blank">Stable Diffusion Hentai</a> • 
    <a href="https://bingimagecreator.online" target="_blank">Bing Image Creator</a> • 
    <a href="https://nsfwaiart.art" target="_blank">NSFW AI Art</a> • 
    <a href="https://nsfw-ai-chatbot.online" target="_blank">NSFW AI Chatbot</a> • 
    <a href="https://nsfwai.world" target="_blank">NSFW AI Directory</a> • 
    <a href="https://aitoolsdirectory.online" target="_blank">AI Tools Directory</a> • 
    <a href="https://viggleai.live" target="_blank">Viggle AI</a> • 
    <a href="https://chatgpt4o.space" target="_blank">ChatGPT 4o Free</a> • 
    <a href="https://tdeecalculator.online" target="_blank">TDEE Calculator</a> • 
    <a href="https://calculatorapp.online" target="_blank">Calculator App</a> • 
    <a href="https://compoundinterestcalculator.site" target="_blank">Compound Interest Calculator</a> • 
    <a href="https://aistorygenerator.fun" target="_blank">AI Story Generator</a> • 
    <a href="https://llamaai.online" target="_blank">Free Online Llama AI</a> • 
    <a href="https://aiartfree.online" target="_blank">Free AI Art Generator</a> • 
    <a href="https://cekkhodam.co/" target="_blank">Cek Khodam</a> • 
    <a href="https://ai-detector.online" target="_blank">AI Detector</a> • 
    <a href="https://aicover.fun" target="_blank">AI Cover</a> • 
    <a href="https://flux-ai.online/" target="_blank">Flux AI Image Generator</a> • 
    <a href="https://bratgenerator.org" target="_blank">Brat Generator</a> • 
    <a href="https://aitextgenerator.live" target="_blank">AI Text Generator</a> • 
    <a href="https://blackmythwukong.buzz" target="_blank">Black Myth Wukong Guide</a> •
    <a href="https://booksummary.wiki" target="_blank">Book Summary</a> •
<a href="https://chatgptgratuit.chat" target="_blank">ChatGPT Gratuit</a> •
<a href="https://chatgptgratuito.online/" target="_blank">Chat GPT Gratuito</a> •
<a href="https://chatgtponline.com/" target="_blank">Chat GTP</a> •
<a href="https://gauthai.pro/" target="_blank">Gauth AI</a> •
<a href="https://bestrecipe.pro/" target="_blank">Best Recipe</a> •
<a href="https://cookie-clicker-unblocked.pro/" target="_blank">Cookie Clicker Unblocked</a> •
<a href="https://freakyfont.org/" target="_blank">Freaky Font</a> • 
<a href="https://chatgratuito.online" target="_blank">Chat Gratuito</a> •  
<a href="https://incrediboxsprunki.pro" target="_blank">Incredibox Sprunki</a> •  
<a href="https://motox3munblocked.pro" target="_blank">Moto X3M Unblocked</a> •  
<a href="https://parkourcivilization.pro" target="_blank">Parkour Civilization</a> •  
<a href="https://sledrider3d.com" target="_blank">Sled Rider 3D</a> •  
<a href="https://snow-rider-3d.pro" target="_blank">Snow Rider 3D</a> •  
<a href="https://sprunkigame.pro" target="_blank">Sprunki Game</a> •  
<a href="https://stickmanhookunblocked.pro" target="_blank">Stickman Hook Unblocked</a> •  
                </p>
            """
            )
demo.launch(max_threads=200)