File size: 2,297 Bytes
6fef025 89c5f18 f5b8400 20cbff0 b21c027 20cbff0 6fef025 20cbff0 70ef948 20cbff0 6fef025 20cbff0 6fef025 f5b8400 20cbff0 6fef025 f5b8400 20cbff0 6177a01 6fef025 70ef948 bdcf524 70ef948 2feae84 a869544 20cbff0 a869544 2feae84 a869544 2feae84 a869544 70ef948 a869544 2feae84 a869544 20cbff0 a869544 5a044c1 a869544 20cbff0 5a044c1 26b4194 70ef948 5a044c1 |
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 |
import gradio as gr
from random import randint
from all_models import models
from datetime import datetime
now2 = 0
def get_current_time():
now = datetime.now()
now2 = now
current_time = now2.strftime("%Y-%m-%d %H:%M:%S")
ki = f'{current_time}'
return ki
def load_fn(models):
global models_load
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(randint(0, 9999))
return models_load[model_str](f'{prompt} {noise}')
def extend_choices(choices):
return choices
def make_me():
default_models = ['model1', 'model2']
num_models = len(models)
with gr.Row():
txt_input = gr.Textbox(label='Your prompt:', lines=3)
gen_button = gr.Button('Generate images')
stop_button = gr.Button('Stop', variant='secondary', interactive=False)
gen_button.click(lambda s: gr.update(interactive=True), [stop_button], stop_button)
stop_button.click(lambda s: gr.update(interactive=False), [stop_button], stop_button)
with gr.Row():
output = [gr.Image(label=m, min_width=250, height=250) 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], o)
stop_button.click(lambda s: gr.update(interactive=False), [stop_button], stop_button, cancels=[gen_event])
with gr.Accordion('Model selection'):
model_choice = gr.CheckboxGroup(models, label=f'{num_models} different models selected', 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()
js_code = """
console.log('ghgh');
"""
with gr.Blocks(css="div.float.svelte-1mwvhlq { position: absolute; top: var(--block-label-margin); left: var(--block-label-margin); background: none; border: none;}") as demo:
gr.Markdown("<script>" + js_code + "</script>")
make_me()
demo.queue(concurrency_count=200)
demo.launch() |