Spaces:
Running
Running
File size: 3,029 Bytes
b7236f0 7d6469d 46c56a8 b7236f0 a29b766 7d6469d b7236f0 7d6469d 190bea1 7d6469d 190bea1 c0df2a4 7d6469d fa04110 a9366e7 7d6469d 07eca3d 2ba3409 7d6469d 2ba3409 a9366e7 7d6469d 17c773f a29b766 7d6469d b7236f0 a29b766 b7236f0 7d6469d b1d0d41 dbfbf51 b036a1c 5b847ce b1d0d41 17c773f b1d0d41 29433a1 b1d0d41 7d6469d |
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 |
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 = 1
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):
if model_str == 'NA':
return None
noise = str('') #str(randint(0, 99999999999))
return models_load[model_str](f'{prompt} {noise}')
with gr.Blocks() as demo:
with gr.Tab('The Dream'):
model_choice2 = gr.Dropdown(models, label = 'Choose a model from the 686 available!', value = models[0], filterable = False)
txt_input2 = gr.Textbox(label = 'Your prompt:')
max_images = 6
gen_button2 = gr.Button('Generate up to 6 images in up to 3 minutes total')
stop_button2 = gr.Button('Stop', variant = 'secondary', interactive = False)
gen_button2.click(lambda s: gr.update(interactive = True), None, stop_button2)
gr.HTML(
"""
<div style="text-align: center; max-width: 1200px; margin: 0 auto;">
<div>
<body>
<div class="center"><p style="margin-bottom: 10px; color: #000000;">Scroll down to see more images.</p>
</div>
</body>
</div>
</div>
"""
)
with gr.Column():
num_images = gr.Slider(1, max_images, value = 1, step = 1, label = 'Number of images')
output2 = [gr.Image(label = '') for _ in range(1)]
for i, o in enumerate(output2):
num_models = num_images
img_i = gr.Number(i, visible = False)
num_images.change(lambda i, n: gr.update(visible = (i < n)), [img_i, num_images], o, show_progress = False)
gen_event2 = gen_button2.click(lambda i, n, m, t: gen_fn(m, t) if (i < n) else None, [img_i, num_images, model_choice2, txt_input2], o)
stop_button2.click(lambda s: gr.update(interactive = False), None, stop_button2, cancels = [gen_event2])
with gr.Row():
gr.HTML(
"""
<div class="footer">
<p> Based on the <a href="https://huggingface.co/spaces/derwahnsinn/TestGen">TestGen</a> Space by derwahnsinn, the <a href="https://huggingface.co/spaces/RdnUser77/SpacIO_v1">SpacIO</a> Space by RdnUser77 and Omnibus's Maximum Multiplier!
</p>
"""
)
demo.queue(concurrency_count = 200)
demo.launch() |