首先阅读启动web.py的源码:
parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)
parser.add_argument("--ckpt",type=str, default="models/ldm/stable-diffusion-v1/model.ckpt",help="path to checkpoint of model",)
parser.add_argument("--cli",type=str,help="don't launch web server, take Python function kwargs from this file.", default=None)
parser.add_argument("--config",type=str, default="configs/stable-diffusion/v1-inference.yaml",help="path to config which constructs model",)
parser.add_argument("--defaults",type=str,help="path to configuration file providing UI defaults, uses same format as cli parameter", default='configs/webui/webui.yaml')
parser.add_argument("--esrgan-cpu", action='store_true',help="run ESRGAN on cpu", default=False)
parser.add_argument("--esrgan-gpu",type=int,help="run ESRGAN on specific gpu (overrides --gpu)", default=0)
parser.add_argument("--extra-models-cpu", action='store_true',help="run extra models (GFGPAN/ESRGAN) on cpu", default=False)
parser.add_argument("--extra-models-gpu", action='store_true',help="run extra models (GFGPAN/ESRGAN) on cpu", default=False)
parser.add_argument("--gfpgan-cpu", action='store_true',help="run GFPGAN on cpu", default=False)
parser.add_argument("--gfpgan-dir",type=str,help="GFPGAN directory", default=('./src/gfpgan'if os.path.exists('./src/gfpgan')else'./GFPGAN'))# i disagree with where you're putting it but since all guidefags are doing it this way, there you go
parser.add_argument("--gfpgan-gpu",type=int,help="run GFPGAN on specific gpu (overrides --gpu) ", default=0)
parser.add_argument("--gpu",type=int,help="choose which GPU to use if you have multiple", default=0)
parser.add_argument("--grid-format",type=str,help="png for lossless png files; jpg:quality for lossy jpeg; webp:quality for lossy webp, or webp:-compression for lossless webp", default="jpg:95")
parser.add_argument("--inbrowser", action='store_true',help="automatically launch the interface in a new tab on the default browser", default=False)
parser.add_argument("--ldsr-dir",type=str,help="LDSR directory", default=('./src/latent-diffusion'if os.path.exists('./src/latent-diffusion')else'./LDSR'))
parser.add_argument("--n_rows",type=int, default=-1,help="rows in the grid; use -1 for autodetect and 0 for n_rows to be same as batch_size (default: -1)",)
parser.add_argument("--no-half", action='store_true',help="do not switch the model to 16-bit floats", default=False)
parser.add_argument("--no-progressbar-hiding", action='store_true',help="do not hide progressbar in gradio UI (we hide it because it slows down ML if you have hardware accleration in browser)", default=False)
parser.add_argument("--no-verify-input", action='store_true',help="do not verify input to check if it's too long", default=False)
parser.add_argument("--optimized-turbo", action='store_true',help="alternative optimization mode that does not save as much VRAM but runs siginificantly faster")
parser.add_argument("--optimized", action='store_true',help="load the model onto the device piecemeal instead of all at once to reduce VRAM usage at the cost of performance")
parser.add_argument("--outdir_img2img",type=str, nargs="?",help="dir to write img2img results to (overrides --outdir)", default=None)
parser.add_argument("--outdir_imglab",type=str, nargs="?",help="dir to write imglab results to (overrides --outdir)", default=None)
parser.add_argument("--outdir_txt2img",type=str, nargs="?",help="dir to write txt2img results to (overrides --outdir)", default=None)
parser.add_argument("--outdir",type=str, nargs="?",help="dir to write results to", default=None)
parser.add_argument("--port",type=int,help="choose the port for the gradio webserver to use", default=7860)
parser.add_argument("--precision",type=str,help="evaluate at this precision", choices=["full","autocast"], default="autocast")
parser.add_argument("--realesrgan-dir",type=str,help="RealESRGAN directory", default=('./src/realesrgan'if os.path.exists('./src/realesrgan')else'./RealESRGAN'))
parser.add_argument("--realesrgan-model",type=str,help="Upscaling model for RealESRGAN", default=('RealESRGAN_x4plus'))
parser.add_argument("--save-metadata", action='store_true',help="Store generation parameters in the output png. Drop saved png into Image Lab to read parameters", default=False)
parser.add_argument("--share-password",type=str,help="Sharing is open by default, use this to set a password. Username: webui", default=None)
parser.add_argument("--share", action='store_true',help="Should share your server on gradio.app, this allows you to use the UI from your mobile app", default=False)
parser.add_argument("--skip-grid", action='store_true',help="do not save a grid, only individual samples. Helpful when evaluating lots of samples", default=False)
parser.add_argument("--skip-save", action='store_true',help="do not save indiviual samples. For speed measurements.", default=False)
parser.add_argument('--no-job-manager', action='store_true',help="Don't use the experimental job manager on top of gradio", default=False)
parser.add_argument("--max-jobs",type=int,help="Maximum number of concurrent 'generate' commands", default=1)
可以看出–gpu默认是0,如果有多张卡我们可以指定某个卡进行操作。
另外:所以启动注意事项:如果是docker启动那么可以
docker run -d –gpus ‘“device=2”’
另外注意启动模式:
if["${RUN_MODE}" = "OPTIMIZED"]; then
echo"Running OPTIMIZED mode"
RUN_ARGS="--gfpgan-cpu --esrgan-cpu --optimized"
elif ["${RUN_MODE}" = "OPTIMIZED-TURBO"]; then
echo"Running OPTIMIZED-TURBO mode"
RUN_ARGS="--gfpgan-cpu --esrgan-cpu --optimized-turbo"
elif ["${RUN_MODE}" = "GTX16"]; then
echo"Running GTX16 mode"
RUN_ARGS="--precision full --no-half --gfpgan-cpu --esrgan-cpu --optimized"
elif ["${RUN_MODE}" = "GTX16-TURBO"]; then
echo"Running GTX16-TURBO mode"
RUN_ARGS="--precision full --no-half --gfpgan-cpu --esrgan-cpu --optimized-turbo"
elif ["${RUN_MODE}" = "FULL-PRECISION"]; then
echo"Running FULL-PRECISION mode"
RUN_ARGS="--precision full --precision=full --no-half"elseecho"Running default mode"
fi
本文转载自: https://blog.csdn.net/zhaohaiyuan123/article/details/127447490
版权归原作者 千年板蓝根 所有, 如有侵权,请联系我们删除。
版权归原作者 千年板蓝根 所有, 如有侵权,请联系我们删除。