Spaces:
Paused
Paused
File size: 2,705 Bytes
300339e dbb59b8 300339e 427b835 300339e 9d36776 427b835 300339e dbb59b8 300339e dbb59b8 300339e dbb59b8 9d36776 dbb59b8 300339e dbb59b8 300339e 9d36776 300339e 9d36776 300339e 9d36776 427b835 300339e ce4c1d3 300339e dbb59b8 300339e dbb59b8 300339e 427b835 300339e 427b835 300339e |
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 |
#!/usr/bin/env python
import gradio as gr
import torch
from app_canny import create_demo as create_demo_canny
from app_texnet import create_demo as create_demo_texnet
from model import Model
from settings import ALLOW_CHANGING_BASE_MODEL, DEFAULT_MODEL_ID, SHOW_DUPLICATE_BUTTON
DESCRIPTION = "# Material Authoring Demo v0.1. Under Construction"
if not torch.cuda.is_available():
DESCRIPTION += "\n<p>Running on CPU 🥶 This demo does not work on CPU.</p>"
# model = Model(base_model_id=DEFAULT_MODEL_ID, task_name="Canny")
model = Model(base_model_id=DEFAULT_MODEL_ID, task_name="texnet")
with gr.Blocks() as demo:
gr.Markdown(DESCRIPTION)
gr.DuplicateButton(
value="Duplicate Space for private use",
elem_id="duplicate-button",
visible=SHOW_DUPLICATE_BUTTON,
)
with gr.Tabs():
# with gr.Tab("Canny"):
# create_demo_canny(model.process_canny)
with gr.Tab("Texnet"):
create_demo_texnet(model.process_texnet)
with gr.Tab("Matnet"):
create_demo_texnet(model.process_texnet)
with gr.Accordion(label="Base model", open=False):
with gr.Row():
with gr.Column(scale=5):
current_base_model = gr.Text(label="Current base model")
with gr.Column(scale=1):
check_base_model_button = gr.Button("Check current base model")
with gr.Row():
with gr.Column(scale=5):
new_base_model_id = gr.Text(
label="New base model",
max_lines=1,
placeholder="stable-diffusion-v1-5/stable-diffusion-v1-5",
info="The base model must be compatible with Stable Diffusion v1.5.",
interactive=ALLOW_CHANGING_BASE_MODEL,
)
with gr.Column(scale=1):
change_base_model_button = gr.Button("Change base model", interactive=ALLOW_CHANGING_BASE_MODEL)
if not ALLOW_CHANGING_BASE_MODEL:
gr.Markdown(
"""The base model is not allowed to be changed in this Space so as not to slow down the demo, but it can be changed if you duplicate the Space."""
)
check_base_model_button.click(
fn=lambda: model.base_model_id,
outputs=current_base_model,
queue=False,
api_name="check_base_model",
)
gr.on(
triggers=[new_base_model_id.submit, change_base_model_button.click],
fn=model.set_base_model,
inputs=new_base_model_id,
outputs=current_base_model,
api_name=False,
concurrency_id="main",
)
if __name__ == "__main__":
demo.queue(max_size=20).launch() |