yuan2023's picture
Duplicate from carloscar/stable-diffusion-webui-controlnet-docker
9d98e56
import os
import subprocess
import sys
def on_start():
print("---------------")
print("Running script './on_start.sh' to download models ...")
print("---------------")
result = subprocess.run("./on_start.sh", shell=True, env=os.environ)
if result.returncode != 0:
raise RuntimeError(f"Error executing ./on_start.sh [exit code: {result.returncode}]")
def start():
on_start()
print("---------------")
print(f"Launching {'API server' if '--nowebui' in sys.argv else 'Web UI'} with arguments: {' '.join(sys.argv[1:])}")
print("---------------")
import webui # type: ignore # noqa
if '--nowebui' in sys.argv:
webui.api_only()
else:
webui.webui()
if __name__ == "__main__":
import torch
if not torch.cuda.is_available():
sys.argv.extend(["--precision", "full", "--no-half", "--use-cpu", "SD", "BSRGAN", "ESRGAN", "SCUNet", "CodeFormer", "--all"])
else:
sys.argv.extend(["--force-enable-xformers", "--xformers"])
start()