import os from subprocess import getoutput gpu_info = getoutput('nvidia-smi') os.system(f"pip install -q triton==2.0.0.dev20221120") if("A10G" in gpu_info): os.system(f"pip install -q https://github.com/camenduru/stable-diffusion-webui-colab/releases/download/0.0.15/xformers-0.0.15.dev0+4c06c79.d20221205-cp38-cp38-linux_x86_64.whl") elif("T4" in gpu_info): os.system(f"pip install -q https://github.com/camenduru/stable-diffusion-webui-colab/releases/download/0.0.15/xformers-0.0.15.dev0+1515f77.d20221130-cp38-cp38-linux_x86_64.whl") os.system( f"git clone https://{os.getenv('GITHUB_TOKEN_NAME')}:{os.getenv('GITHUB_TOKEN')}@github.com/IDEA-CCNL/taiyi-webui.git /home/user/app/stable-diffusion-webui") yaml_path = f"/home/user/app/stable-diffusion-webui/configs/{os.getenv('YAML_NAME')}" os.system(f"sed -i 's|your_path|{os.getenv('MODEL_NAME')}|g' {yaml_path}") os.system(f"sed -i 's|use_auth_token: False|use_auth_token: {os.getenv('HF_TOKEN')}|g' {yaml_path}") os.chdir("/home/user/app/stable-diffusion-webui") os.system(f"wget -q https://github.com/camenduru/webui/raw/main/env_patch.py -O /home/user/app/env_patch.py") os.system(f"sed -i '$a fastapi==0.90.0' /home/user/app/stable-diffusion-webui/requirements_versions.txt") os.system(f"sed -i -e '/import image_from_url_text/r /home/user/app/env_patch.py' /home/user/app/stable-diffusion-webui/modules/ui.py") os.system(f"sed -i -e '/(modelmerger_interface, \"Checkpoint Merger\", \"modelmerger\"),/d' /home/user/app/stable-diffusion-webui/modules/ui.py") os.system(f"sed -i -e '/(train_interface, \"Train\", \"ti\"),/d' /home/user/app/stable-diffusion-webui/modules/ui.py") os.system(f"sed -i -e '/extensions_interface, \"Extensions\", \"extensions\"/d' /home/user/app/stable-diffusion-webui/modules/ui.py") os.system(f"sed -i -e '/settings_interface, \"Settings\", \"settings\"/d' /home/user/app/stable-diffusion-webui/modules/ui.py") os.system( f'''sed -i -e "s/document.getElementsByTagName('gradio-app')\[0\].shadowRoot/!!document.getElementsByTagName('gradio-app')[0].shadowRoot ? document.getElementsByTagName('gradio-app')[0].shadowRoot : document/g" /home/user/app/stable-diffusion-webui/script.js''') os.system(f"sed -i -e 's/ show_progress=False,/ show_progress=True,/g' /home/user/app/stable-diffusion-webui/modules/ui.py") os.system(f"sed -i -e 's/shared.demo.launch/shared.demo.queue().launch/g' /home/user/app/stable-diffusion-webui/webui.py") os.system( f"sed -i -e 's/ outputs=\[/queue=False, &/g' /home/user/app/stable-diffusion-webui/modules/ui.py") os.system(f"sed -i -e 's/ queue=False, / /g' /home/user/app/stable-diffusion-webui/modules/ui.py") # ----------------------------Please duplicate this space and delete this block if you don't want to see the extra header---------------------------- os.system(f"wget -q https://raw.githubusercontent.com/GGGGGGXY/webui/master/header_patch.py -O /home/user/app/header_patch.py") os.system(f"sed -i -e '/demo:/r /home/user/app/header_patch.py' /home/user/app/stable-diffusion-webui/modules/ui.py") # --------------------------------------------------------------------------------------------------------------------------------------------------- # if "IS_SHARED_UI" in os.environ: if True: os.system(f"rm -rfv /home/user/app/stable-diffusion-webui/scripts/") os.system(f"wget -q https://github.com/camenduru/webui/raw/main/shared-config.json -O /home/user/app/shared-config.json") os.system(f"wget -q https://github.com/camenduru/webui/raw/main/shared-ui-config.json -O /home/user/app/shared-ui-config.json") ckpt_path = os.path.join("/home/user/app/stable-diffusion-webui/models/Stable-diffusion", os.path.split(os.getenv('MODEL_CKPT_URL'))[-1]) os.system(f"wget -q {os.getenv('MODEL_CKPT_URL')} -O {ckpt_path}") sr_ckpt = os.path.join("/home/user/app/stable-diffusion-webui", os.path.split(os.getenv('SR_CKPT'))[-1]) os.system(f"wget -q {os.getenv('SR_CKPT')} -O {sr_ckpt}") os.system( f"python launch.py --enable-insecure-extension-access --xformers --disable-console-progressbars --disable-safe-unpickle --enable-console-prompts --ui-config-file /home/user/app/shared-ui-config.json --ui-settings-file /home/user/app/shared-config.json --cors-allow-origins huggingface.co,hf.space --no-progressbar-hiding --ckpt={ckpt_path} --inpainting_sr_ckpt={sr_ckpt} --config={yaml_path}")