File size: 3,438 Bytes
b6b08f6 3353a40 af2f25b 477a5c9 4b9f915 477a5c9 f9a8fb9 477a5c9 af2f25b 8646ee7 a2ffcba 4b9f915 6a0cf2a 4b9f915 c4e54fe 4b9f915 59afa4a 4b9f915 59afa4a 4b9f915 59afa4a 4b9f915 9d3f500 a2ffcba 9d3f500 075ed3d 9d3f500 5cc94ec a2ffcba 075ed3d 184a373 ae7a8b1 9d3f500 5a5ad3c 184a373 b6eb1a4 184a373 b6eb1a4 184a373 cead56a e540908 4b9f915 184a373 ae7a8b1 5cc94ec ba94b6b 7f7245b 4b9f915 9d3f500 dae0775 f421cb2 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 |
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
def im_fn(put,fac="",fac_c=None,h=None):
if h == o:
if int(fac_c)==1:
rn = random.randint(0, 19)
model=models[rn]
put = f"{put}{fac}"
fac = f"{fac} "
print (rn)
return model(put),fac,1
elif int(fac_c)!=1:
return None,"",0
elif h != o:
return(None,"",0)
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)
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])
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,b2,b3,b4,b5])
b.queue(concurrency_count=100).launch(show_api=False)
ac() |