File size: 3,354 Bytes
b6b08f6 3353a40 af2f25b 477a5c9 4b9f915 477a5c9 3353a40 f9a8fb9 477a5c9 af2f25b 8646ee7 a2ffcba 4b9f915 6a0cf2a 4b9f915 c4e54fe 4b9f915 59afa4a 4b9f915 59afa4a 4b9f915 59afa4a 4b9f915 0c3fab1 ce5cc4a a2ffcba ae7a8b1 0c3fab1 50b441f 0c3fab1 ae7a8b1 a2ffcba ae7a8b1 184a373 ae7a8b1 5a5ad3c 184a373 b6eb1a4 184a373 b6eb1a4 184a373 cead56a e540908 4b9f915 184a373 ae7a8b1 09b07b1 ae7a8b1 7f7245b 4b9f915 ae7a8b1 fb3a074 5a5ad3c 8646ee7 af2f25b |
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 |
import gradio as gr
import requests
import os
import random
import time
name2 = "runwayml/stable-diffusion-v1-5"
models=[
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
gr.Interface.load(f"models/{name2}"),
]
o = os.getenv("P")
def ac():
def clear(v):
if int(v) != 0:
v = 0
else:
v = 0
pass
return gr.update(value=0)
def start():
stamp = time.time()
return gr.update(value=stamp),gr.update(value=0)
def end(stamp):
ts = stamp + 6
ti = time.time()
if ti > ts and stamp != 0:
t=gr.update(value=1)
print("Cancelling")
else:
t=gr.update(value=0)
print("Passing")
pass
return t
c1=0
def im_fn(put,fac="",val=None,h=None):
if h == o:
if int(val) != 0:
rn = random.randint(0, 19)
model=models[rn]
put = f"{put}{fac}"
fac = f"{fac} "
print (rn)
c1+=1
if c1<4:
vv=1
elif c1>=4:
vv=0
c1=0
return model(put),fac,vv
elif int(val)==0:
return None,"",0
elif h != o:
return(None,"")
def cl_fac():
return "",0,None,None,None,None
with gr.Blocks() as b:
with gr.Row():
put = gr.Textbox()
btn1 = gr.Button()
with gr.Row():
out1 = gr.Image()
out2 = gr.Image()
with gr.Row():
out3 = gr.Image()
out4 = gr.Image()
with gr.Row(visible=False):
h=gr.Textbox("Q")
t_state=gr.Number()
t_switch=gr.Textbox(value=0)
fac_b = gr.Textbox(value="",visible=False)
fac_c = gr.Textbox(value=0)
fac_d = gr.Textbox(value=1)
b0=btn1.click(cl_fac,None,[fac_b,fac_c,out1,out2,out3,out4],show_progress=False)
b1=btn1.click(start,None,[t_state,t_switch])
sta = t_state.change(end,t_state,t_switch,every=1)
b2=btn1.click(im_fn,[put,fac_b,fac_d,h],[out1,fac_b,fac_c])
b3=out1.change(im_fn,[put,fac_b,fac_c,h],[out2,fac_b,fac_c])
b4=out2.change(im_fn,[put,fac_b,fac_c,h],[out3,fac_b,fac_c])
b5=out3.change(im_fn,[put,fac_b,fac_c,h],[out4,fac_b,fac_c])
t_switch.change(clear,t_switch,t_switch, cancels=[sta,b1,b2,b3,b4,b5])
b.queue(concurrency_count=100).launch(show_api=False)
ac() |