在 Intel Silicon 上安装并运行
Stable Diffusion WebUI 支持(预览)
现在,使用英特尔® Distribution of OpenVINO™工具包,可以在英特尔CPU和GPU(集成和独立图形)等硬件上运行Stable Diffusion WebUI 。这是积极发展的预览支持,我们积极欢迎社区的反馈和贡献。
重要注意事项
为了在Windows上实现WebUI的最佳性能,请使用以下步骤启动webui-user.bat:
- 以管理员身份启动命令提示符
- cd到 stable-diffusion-webui 目录
- 运行webui-user.bat
OpenVINO加速脚本目前不支持某些功能:
- 雇佣修复
- 自定义脚本
- 带有SD v1.5的768x768
使用OpenVINO运行WebUI的说明:
OpenVINO支持通过自定义脚本提供。自定义脚本使用PyTorch的torch.compile功能和HuggingFace Diffusers库来提高性能。以下是入门说明:
Linux
## Make sure Python version is 3.10+
python -m venv sd_env
source sd_env/bin/activate
git clone https://github.com/openvinotoolkit/stable-diffusion-webui.git
cd stable-diffusion-webui
export PYTORCH_TRACING_MODE=TORCHFX
export COMMANDLINE_ARGS="--skip-torch-cuda-test --precision full --no-half --listen --share"
## Launch the WebUI
./webui.sh
- 通过运行
./webui.sh
启动WebUI后,按照此处的说明使用OpenVINO自定义脚本
窗口
git clone https://github.com/openvinotoolkit/stable-diffusion-webui.git
cd stable-diffusion-webui
- 在
stable-diffusion-webui
目录中,更新webui-user.bat
文件,使其看起来像下面
@echo off
set PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=--skip-torch-cuda-test --precision full --no-half
set PYTORCH_TRACING_MODE=TORCHFX
call webui.bat
- 通过运行
webui-user.bat
首次启动WebUI。它应该安装先决条件。 - 完成所有先决条件的安装后,使用
CTRL+C
终止WebUI。 - 将
--skip-prepare-environment
参数添加到webui-user.bat
文件中的COMMANDLINE_ARGS变量中。要从远程机器通过公共URL访问WebUI,请向COMMANDLINE_ARGS添加其他参数"--listen --share"
- 按照此处的说明安装额外的先决条件
- 通过运行再次启动WebUI
webui-user.bat
- 按照此处的说明使用OpenVINO自定义脚本
安装说明
先决条件
PyTorch
OpenVINO作为TarchDynamo后端集成在PyTorch中,可以使用“torch.compile”进行利用。TorchDynamo从PyTorch 2.0开始提供。
Linux:
使用从PyPi安装PyTorchpip install torch
窗户:
PyTorch尚未在Windows上正式支持torch.compile。然而,以下变通方法可用于利用Windows上的torch.compile功能:
- 从这里安装经过验证的PyTorch夜间轮文件(2.1.0.dev20230713)
- 在venv/Lib/site-packages/torch/_dynamo/eval_frames.py上更新文件
- 找到名为“check_if_dynamo_supported()”的函数,它看起来像这样(第484行):
def check_if_dynamo_supported():
if sys.platform == "win32":
raise RuntimeError("Windows not yet supported for torch.compile")
if sys.version_info >= (3, 11):
raise RuntimeError("Python 3.11+ not yet supported for torch.compile")
- 注释出此功能的前两行。它应该看起来像这样:
def check_if_dynamo_supported():
# if sys.platform == "win32":
# raise RuntimeError("Windows not yet supported for torch.compile")
if sys.version_info >= (3, 11):
`raise RuntimeError("Python 3.11+ not yet supported for torch.compile")
安装OpenVINO:
从Pypi安装:
带有torch.compile支持的OpenVINO现在可以在OpenVINO预发布包(版本:添加版本)中预览。从这里下载预发布软件包。使用命令从Pypi安装pip install --pre openvino
从源代码构建和安装:
OpenVINO也可以使用此处提供的说明从源代码构建
已知问题
- 将采样方法更改为DPM++或Karras方法会重新编译模型,因为它对图形进行了一些修改。建议为任何性能测量排除第一代图像的时间
- 常规Stable Diffusion 2.1目前在离散GPU上存在已知问题。请改用Stable Diffusion 2.1基础版本。