roomGPT / app.py
RamAnanth1's picture
Update app.py
ded8e10
raw
history blame
1.81 kB
#!/usr/bin/env python
from __future__ import annotations
import os
import pathlib
import shlex
import subprocess
import gradio as gr
if os.getenv('SYSTEM') == 'spaces':
with open('patch') as f:
subprocess.run(shlex.split('patch -p1'), stdin=f, cwd='ControlNet')
base_url = 'https://huggingface.co/lllyasviel/ControlNet/resolve/main/annotator/ckpts/'
names = [
'body_pose_model.pth',
'dpt_hybrid-midas-501f0c75.pt',
'hand_pose_model.pth',
'mlsd_large_512_fp32.pth',
'mlsd_tiny_512_fp32.pth',
'network-bsds500.pth',
'upernet_global_small.pth',
]
for name in names:
command = f'wget https://huggingface.co/lllyasviel/ControlNet/resolve/main/annotator/ckpts/{name} -O {name}'
out_path = pathlib.Path(f'ControlNet/annotator/ckpts/{name}')
if out_path.exists():
continue
subprocess.run(shlex.split(command), cwd='ControlNet/annotator/ckpts/')
from app_depth import create_demo as create_demo_depth
from model import Model, download_all_controlnet_weights
DESCRIPTION = '# [ControlNet](https://github.com/lllyasviel/ControlNet)'
SPACE_ID = os.getenv('SPACE_ID')
MAX_IMAGES = 3
DEFAULT_NUM_IMAGES = min(MAX_IMAGES,1)
if os.getenv('SYSTEM') == 'spaces':
download_all_controlnet_weights()
DEFAULT_MODEL_ID = os.getenv('DEFAULT_MODEL_ID',
'runwayml/stable-diffusion-v1-5')
model = Model(base_model_id=DEFAULT_MODEL_ID, task_name='canny')
with gr.Blocks(css='style.css') as demo:
gr.Markdown(DESCRIPTION)
with gr.Tabs():
with gr.TabItem('Depth'):
create_demo_depth(model.process_depth,
max_images=MAX_IMAGES,
default_num_images=DEFAULT_NUM_IMAGES)
demo.queue(api_open=False).launch(file_directories=['/tmp'])