Generated by Manus
Stable Diffusion WebUI (AUTOMATIC1111) 启动参数详细列表
本文档提供了 Stable Diffusion WebUI (AUTOMATIC1111) 的启动参数的详细说明,包括每个参数的作用、默认值、可能造成的影响以及已弃用参数的版本信息。
目录
环境变量
环境变量可以通过编辑 webui-user.bat (Windows) 或 webui-user.sh (Linux/Mac) 文件来设置。
| 参数名 | 描述 | 默认值 | 影响 |
|---|---|---|---|
| PYTHON | 设置Python可执行文件的自定义路径 | 系统默认 | 影响使用哪个Python解释器运行WebUI |
| VENV_DIR | 指定虚拟环境的路径 | venv | 特殊值-表示不创建虚拟环境直接运行脚本 |
| COMMANDLINE_ARGS | 主程序的额外命令行参数 | 无 | 可在此设置所有命令行参数,影响WebUI的所有方面 |
| IGNORE_CMD_ARGS_ERRORS | 设置为任意值使程序在遇到意外命令行参数时不退出 | 无 | 提高启动容错性,避免因参数错误导致程序无法启动 |
| REQS_FILE | 包含依赖项的requirements.txt文件名 | requirements_versions.txt | 影响安装哪些依赖包及其版本 |
| TORCH_COMMAND | 安装PyTorch的命令 | 无 | 影响PyTorch的安装方式和版本 |
| INDEX_URL | pip的–index-url参数 | 无 | 影响依赖包的下载源 |
| TRANSFORMERS_CACHE | transformers库下载和保存CLIP模型相关文件的路径 | 无 | 影响模型文件的存储位置 |
| CUDA_VISIBLE_DEVICES | 在多GPU系统上选择用于实例的GPU | 无 | 控制使用哪个GPU,例如使用次要GPU时设为”1” |
| SD_WEBUI_LOG_LEVEL | 日志详细程度 | INFO | 支持Python内置logging模块支持的任何有效日志级别 |
| SD_WEBUI_CACHE_FILE | 缓存文件路径 | cache.json | 如果未设置,默认为根目录中的cache.json |
| SD_WEBUI_RESTAR | 由启动脚本设置的值,通知WebUI重启功能可用 | 无 | 影响重启功能的可用性 |
| SD_WEBUI_RESTARTING | 表示WebUI当前是否正在重启或重新加载的内部值 | 无 | 设为1禁用自动启动浏览器,设为0即使在重启时也启用自动启动 |
配置类参数
这些参数用于配置WebUI的基本设置和行为。
| 参数名 | 值 | 默认值 | 描述 | 影响 |
|---|---|---|---|---|
| -h, –help | 无 | False | 显示帮助信息并退出 | 显示所有可用参数的帮助信息 |
| –exit | 无 | 无 | 安装后终止 | 仅执行安装步骤,不启动WebUI |
| –data-dir | DATA_DIR | ./ | 存储所有用户数据的基本路径 | 影响所有数据文件的存储位置 |
| –models-dir | MODELS | None | 存储模型的基本路径;覆盖–data-dir | 专门控制模型文件的存储位置,在v1.10.0版本中通过PR #15742添加 |
| –config | CONFIG | configs/stable-diffusion/v1-inference.yaml | 构建模型的配置路径 | 影响模型的构建方式 |
| –ckpt | CKPT | model.ckpt | Stable Diffusion模型检查点的路径 | 指定的检查点将被添加到检查点列表并加载 |
| –ckpt-dir | CKPT_DIR | None | 包含Stable Diffusion检查点的目录路径 | 影响可用模型的加载位置 |
| –no-download-sd-model | 无 | False | 即使未找到模型也不下载SD1.5模型 | 防止自动下载默认模型 |
| –do-not-download-clip | 无 | False | 即使检查点中不包含CLIP模型也不下载 | 防止自动下载CLIP模型 |
模型路径相关参数
这些参数用于指定各种模型和资源的路径。
| 参数名 | 值 | 默认值 | 描述 | 影响 |
|---|---|---|---|---|
| –vae-dir | VAE_PATH | None | 变分自编码器模型路径 | 影响VAE模型的加载位置 |
| –vae-path | VAE_PATH | None | 用作VAE的检查点 | 指定使用的VAE模型 |
| –gfpgan-dir | GFPGAN_DIR | GFPGAN/ | GFPGAN目录 | 影响GFPGAN模型的加载位置 |
| –gfpgan-model | GFPGAN_MODEL | 无 | GFPGAN模型文件名 | 指定使用的GFPGAN模型 |
| –codeformer-models-path | CODEFORMER_MODELS_PATH | models/Codeformer/ | 包含codeformer模型文件的目录路径 | 影响Codeformer模型的加载位置 |
| –gfpgan-models-path | GFPGAN_MODELS_PATH | models/GFPGAN | 包含GFPGAN模型文件的目录路径 | 影响GFPGAN模型的加载位置 |
| –esrgan-models-path | ESRGAN_MODELS_PATH | models/ESRGAN | 包含ESRGAN模型文件的目录路径 | 影响ESRGAN模型的加载位置 |
| –bsrgan-models-path | BSRGAN_MODELS_PATH | models/BSRGAN | 包含BSRGAN模型文件的目录路径 | 影响BSRGAN模型的加载位置 |
| –realesrgan-models-path | REALESRGAN_MODELS_PATH | models/RealESRGAN | 包含RealESRGAN模型文件的目录路径 | 影响RealESRGAN模型的加载位置 |
| –scunet-models-path | SCUNET_MODELS_PATH | models/ScuNET | 包含ScuNET模型文件的目录路径 | 影响ScuNET模型的加载位置 |
| –swinir-models-path | SWINIR_MODELS_PATH | models/SwinIR | 包含SwinIR和SwinIR v2模型文件的目录路径 | 影响SwinIR模型的加载位置 |
| –ldsr-models-path | LDSR_MODELS_PATH | models/LDSR | 包含LDSR模型文件的目录路径 | 影响LDSR模型的加载位置 |
| –dat-models-path | DAT__MODELS_PATH | models/DAT | 包含DAT模型文件的目录路径 | 影响DAT模型的加载位置 |
| –lora-dir | LORA_DIR | models/Lora | 包含Lora网络的目录路径 | 影响Lora模型的加载位置 |
| –clip-models-path | CLIP_MODELS_PATH | None | 包含CLIP模型文件的目录路径 | 影响CLIP模型的加载位置 |
| –embeddings-dir | EMBEDDINGS_DIR | embeddings/ | 用于文本反转的嵌入目录 | 影响嵌入模型的加载位置 |
| –textual-inversion-templates-dir | TEXTUAL_INVERSION_TEMPLATES_DIR | textual_inversion_templates | 包含文本反转模板的目录 | 影响文本反转模板的加载位置 |
| –hypernetwork-dir | HYPERNETWORK_DIR | models/hypernetworks/ | 超网络目录 | 影响超网络模型的加载位置 |
界面和网络相关参数
这些参数用于配置WebUI的界面和网络连接设置。
| 参数名 | 值 | 默认值 | 描述 | 影响 |
|---|---|---|---|---|
| –localizations-dir | LOCALIZATIONS_DIR | localizations/ | 本地化目录 | 影响界面语言文件的加载位置 |
| –styles-file | STYLES_FILE | styles.csv | 样式文件的路径或通配符路径,允许多个条目 | 影响可用样式的加载 |
| –ui-config-file | UI_CONFIG_FILE | ui-config.json | 用于UI配置的文件名 | 影响UI配置的保存和加载 |
| –no-progressbar-hiding | 无 | False | 不在gradio UI中隐藏进度条 | 影响UI中进度条的显示方式 |
| –ui-settings-file | UI_SETTINGS_FILE | config.json | 用于UI设置的文件名 | 影响UI设置的保存和加载 |
| –allow-code | 无 | False | 允许从Web UI执行自定义脚本 | 启用代码执行功能,可能带来安全风险 |
| –share | 无 | False | 为gradio使用share=True,使UI可通过他们的站点访问 | 生成可公开访问的链接 |
| –listen | 无 | False | 使用0.0.0.0作为服务器名称启动gradio,允许响应网络请求 | 允许局域网内其他设备访问 |
| –port | PORT | 7860 | 使用指定的服务器端口启动gradio | 更改WebUI的访问端口 |
| –hide-ui-dir-config | 无 | False | 在UI中隐藏目录配置 | 简化界面,隐藏高级配置选项 |
| –freeze-settings | 无 | False | 禁用编辑所有设置 | 防止用户修改设置 |
| –freeze-settings-in-sections | 无 | False | 通过指定逗号分隔的部分名称列表禁用编辑设置部分 | 选择性地锁定某些设置部分 |
| –freeze-specific-settings | 无 | False | 通过指定逗号分隔的设置名称列表禁用编辑单个设置 | 选择性地锁定特定设置 |
| –theme | 无 | Unset | 使用指定主题打开Web UI(light或dark) | 更改界面主题 |
| –gradio-auth | GRADIO_AUTH | None | 设置gradio身份验证,格式为username:password | 添加访问密码保护 |
| –gradio-auth-path | GRADIO_AUTH_PATH | None | 设置gradio身份验证文件路径,与–gradio-auth一起使用 | 从文件加载认证信息 |
| –disable-console-progressbars | 无 | False | 不输出进度条到控制台 | 简化控制台输出 |
| –enable-console-prompts | 无 | False | 使用txt2img和img2img生成时将提示打印到控制台 | 在控制台显示更多信息 |
| –api | 无 | False | 使用API启动Web UI | 启用API功能 |
| –api-auth | API_AUTH | None | 设置API身份验证,格式为username:password | 添加API访问保护 |
| –api-log | 无 | False | 启用所有API请求的日志记录 | 记录API使用情况 |
| –nowebui | 无 | False | 仅启动API,不启动UI | 轻量级运行模式 |
| –ui-debug-mode | 无 | False | 不加载模型以更快地调试UI | 加速UI开发调试 |
| –device-id | DEVICE_ID | None | 选择默认CUDA设备 | 指定使用的GPU设备 |
| –administrator | 无 | False | 管理员权限 | 启用额外的管理功能 |
| –cors-allow-origins | CORS_ALLOW_ORIGINS | None | 允许的CORS源,逗号分隔列表 | 控制跨域访问权限 |
| –cors-allow-origins-regex | CORS_ALLOW_ORIGINS_REGEX | None | 允许的CORS源,单个正则表达式 | 通过正则表达式控制跨域访问 |
| –tls-keyfile | TLS_KEYFILE | None | 部分启用TLS,需要与–tls-certfile一起使用 | 配置HTTPS加密 |
| –tls-certfile | TLS_CERTFILE | None | 部分启用TLS,需要与–tls-keyfile一起使用 | 配置HTTPS加密 |
| –disable-tls-verify | 无 | False | 启用时,禁用验证自签名证书 | 简化TLS配置 |
| –server-name | SERVER_NAME | None | 设置服务器主机名 | 更改服务器标识 |
| –gradio-allowed-path | 无 | None | 添加路径到Gradio的allowed_paths,使其可能为某些文件提供服务 | 扩展可访问的文件路径 |
| –subpath | SERVER_SUB_PATH | 为gradio自定义子路径,与反向代理一起使用 | 配置子路径访问 |
性能优化相关参数
这些参数用于优化WebUI的性能和资源使用。
| 参数名 | 值 | 默认值 | 描述 | 影响 |
|---|---|---|---|---|
| –xformers | 无 | False | 为交叉注意力层启用xformers | 显著提升性能和内存效率 |
| –force-enable-xformers | 无 | False | 无论验证代码认为是否可行,都启用xformers | 强制启用xformers,可能导致问题 |
| –xformers-flash-attention | 无 | False | 使用Flash Attention启用xformers,提高可重现性 | 仅适用于SD2.x或变体 |
| –opt-sdp-attention | 无 | False | 启用PyTorch 2.0中的缩放点积注意力层优化 | 提升性能 |
| –opt-sdp-no-mem-attention | False | None | 启用内存效率更高的缩放点积注意力层优化 | 降低内存使用但可能影响生成速度 |
| –opt-split-attention | 无 | False | 强制启用Doggettx的交叉注意力层优化 | 仅适用于启用CUDA的系统 |
| –opt-split-attention-invokeai | 无 | False | 强制启用InvokeAI的交叉注意力层优化 | 当CUDA不可用时回退到CPU |
| –opt-split-attention-v1 | 无 | False | 启用旧版交叉注意力层优化 | 当没有足够VRAM时使用 |
| –opt-sub-quad-attention | 无 | False | 启用内存高效的子二次交叉注意力层优化 | 降低内存使用 |
| –sub-quad-q-chunk-size | SUB_QUAD_Q_CHUNK_SIZE | 1024 | 子二次交叉注意力层使用的查询块大小 | 调整性能和内存使用平衡 |
| –sub-quad-kv-chunk-size | SUB_QUAD_KV_CHUNK_SIZE | None | 子二次交叉注意力层使用的KV块大小 | 调整性能和内存使用平衡 |
| –sub-quad-chunk-threshold | SUB_QUAD_CHUNK_THRESHOLD | None | 子二次交叉注意力优化使用的VRAM百分比阈值 | 控制优化触发条件 |
| –opt-channelslast | 无 | False | 启用替代布局,可能在某些Nvidia卡上加速 | 对Tensor核心卡(SM75及更高)有效 |
| –disable-opt-split-attention | 无 | False | 强制禁用交叉注意力优化 | 在优化导致问题时使用 |
| –disable-nan-check | 无 | False | 不检查生成的潜在空间是否有nans | 允许在没有检查点的情况下使用 |
| –use-cpu | {all, sd, interrogate, gfpgan, bsrgan, esrgan, scunet, codeformer} | None | 将CPU用作torch设备进行指定模块 | 在没有GPU时使用CPU运行 |
| –use-ipex | 无 | False | 将Intel XPU用作torch设备 | 在Intel硬件上优化性能 |
| –no-half | 无 | False | 不将模型切换到半精度 | 提高精度但增加内存使用 |
| –precision | {full, half, autocast} | autocast | 以此精度评估 | 控制计算精度 |
| –no-half-vae | 无 | False | 不将VAE切换到半精度浮点数 | 解决某些VAE问题 |
| –upcast-sampling | 无 | False | 上采样。不使用–no-half时,可能会产生更好的高分辨率结果 | 提高采样质量 |
| –medvram | 无 | False | 启用Stable Diffusion模型优化以节省VRAM | 牺牲一些性能来降低VRAM使用 |
| –medvram-sdxl | 无 | False | 为SDXL模型启用–medvram优化 | 专为SDXL模型优化VRAM使用 |
| –lowvram | 无 | False | 启用Stable Diffusion模型优化以节省大量VRAM | 大幅降低VRAM使用,但速度很慢 |
| –lowram | 无 | False | 将Stable Diffusion权重加载到VRAM而不是RAM | 降低RAM使用但可能影响性能 |
| –disable-model-loading-ram-optimization | 无 | False | 禁用在加载模型时优化RAM使用的优化 | 在优化导致问题时使用 |
其他功能参数
这些参数用于控制WebUI的其他功能和行为。
| 参数名 | 值 | 默认值 | 描述 | 影响 |
|---|---|---|---|---|
| –autolaunch | 无 | False | 启动后在默认浏览器中打开Web UI URL | 自动打开浏览器 |
| –skip-torch-cuda-test | 无 | False | 不检查CUDA是否正常工作 | 跳过CUDA测试加速启动 |
| –skip-install | 无 | False | 跳过包安装 | 加速启动过程 |
| –loglevel | 无 | None | 日志级别:CRITICAL、ERROR、WARNING、INFO、DEBUG | 控制日志详细程度 |
| –log-startup | 无 | False | 启动参数:将启动时发生的情况记录到日志文件 | 记录启动过程 |
| –api-server-stop | 无 | False | 启用服务器停止/重启API | 允许通过API控制服务器 |
| –timeout-keep-alive | int | 30 | 设置timeout_keep_alive | 控制连接保持时间 |
| –ngrok | NGROK | None | ngrok authtoken,替代–share | 使用ngrok提供公共访问 |
| –ngrok-region | NGROK_REGION | us | ngrok运行的区域 | 控制ngrok服务器位置 |
| –ngrok-options | NGROK_OPTIONS | None | 传递给ngrok的选项,JSON格式 | 自定义ngrok配置 |
| –update-check | 无 | None | 启动时通知Web UI版本更新 | 检查更新 |
| –update-all-extensions | 无 | None | 启动时拉取所有扩展的最新更改 | 自动更新扩展 |
| –reinstall-xformers | 无 | False | 强制重新安装xformers | 解决xformers问题 |
| –reinstall-torch | 无 | False | 强制重新安装torch | 解决torch问题 |
| –tests | TESTS | False | 运行测试以验证webui功能 | 验证安装 |
| –no-tests | 无 | False | 即使指定了–tests也不运行测试 | 禁用测试 |
| –dump-sysinfo | 无 | False | 启动参数:将系统信息转储到sysinfo.txt文件(不包括扩展、选项) | 生成系统信息 |
| –disable-all-extensions | 无 | False | 禁用所有非内置扩展的运行 | 排除扩展问题 |
| –disable-extra-extensions | 无 | False | 禁用所有扩展的运行 | 最小化运行环境 |
| –skip-load-model-at-start | 无 | False | 如果与–nowebui一起使用,则在启动时不加载模型 | 加速API启动 |
| –use-textbox-seed | 无 | False | 使用文本框输入种子而不是随机按钮 | 更改种子输入方式 |
| –disable-safe-unpickle | 无 | False | 禁用检查PyTorch模型是否包含恶意代码 | 跳过安全检查 |
| –no-gradio-queue | 无 | False | 禁用gradio队列,使网页使用HTTP请求而不是websockets | 在旧版本中是默认行为 |
| –no-hashing | 无 | False | 禁用SHA-256哈希检查,以帮助加载性能 | 加速模型加载 |
| –skip-version-check | 无 | False | 不检查torch和xformers的版本 | 跳过版本兼容性检查 |
| –skip-python-version-check | 无 | False | 不检查Python版本 | 允许使用非推荐版本 |
| –unix-filenames-sanitization | 无 | False | 允许文件名中的任何符号,除了标准Unix保留字符 | 可能与操作系统冲突 |
| –filenames-max-length | int | 128 | 生成图像的文件名最大长度,超过将被截断 | 控制文件名长度 |
| –no-prompt-history | 无 | False | 禁用读取提示历史记录生成功能 | 不使用path/params.txt |
已弃用的参数
这些参数已被弃用,在当前版本中不再有效果。
| 参数名 | 弃用版本/PR | 描述 | 状态 |
|---|---|---|---|
| –max-batch-count | PR #16119 | 批处理数量限制 | 已弃用,不再有效果 |
| dont_fix_second_order_samplers_schedule | PR #16061 | 二阶采样器调度设置 | 已弃用,该设置已被移除 |
| –show-negative-prompt | 未明确指定 | 显示负面提示 | 已弃用,不再有效果 |
| –deepdanbooru | 未明确指定 | DeepDanbooru相关功能 | 已弃用,不再有效果 |
| –unload-gfpgan | 未明确指定 | 卸载GFPGAN模型 | 已弃用,不再有效果 |
| –gradio-img2img-tool | 未明确指定 | Gradio图像到图像工具 | 已弃用,不再有效果 |
| –gradio-inpaint-tool | 未明确指定 | Gradio修复工具 | 已弃用,不再有效果 |
| –gradio-queue | 未明确指定 | Gradio队列 | 已弃用,不再有效果 |
| –add-stop-route | 未明确指定 | 添加停止路由 | 已弃用,不再有效果 |
参数使用方法
Windows
在Windows系统上,可以通过编辑webui-user.bat文件来设置环境变量和命令行参数:
set PYTHON= |
Linux/Mac
在Linux或Mac系统上,可以通过编辑webui-user.sh文件来设置环境变量和命令行参数:
export PYTHON="python3" |
常见参数组合示例
低VRAM配置(适用于4GB VRAM的GPU):
--medvram --opt-split-attention --disable-nan-check
极低VRAM配置(适用于2GB VRAM的GPU):
--lowvram --opt-split-attention-v1 --disable-nan-check --no-half-vae
CPU运行模式(无GPU):
--use-cpu all --precision full --no-half --skip-torch-cuda-test
网络共享配置(允许局域网访问):
--listen --port 7860
公共访问配置(通过互联网访问):
--share --gradio-auth username:password
性能优化配置(高端GPU):
--xformers --opt-channelslast --no-half-vae
API服务器配置(仅API,无UI):
--nowebui --api --api-auth username:password
开发调试配置:
--api-log --enable-console-prompts --loglevel DEBUG
注意事项
- 某些参数组合可能会相互冲突,例如同时使用
--medvram和--lowvram - 性能优化参数的效果取决于您的硬件配置
- 安全相关参数(如
--allow-code)可能会带来安全风险 - 已弃用的参数在当前版本中不再有效果,建议不要使用
- 某些参数可能会在未来版本中被弃用或更改,请关注官方更新
GitHub Discussions