Stable Diffusion是一个开源的深度学习模型,能够以较低的计算需求和高效的性能根据文本提示生成对应的图像。阿里云基于Stable Diffusion,在其基础上封装了更加简洁易操作的UI,为您提供了AI模型应用Stable-Diffusion-WebUI(文中简称SD WebUI)。本文为您介绍如何通过EAS一键部署Stable-Diffusion-WebUI服务。
部署Stable Diffusion模型
进入模型在线服务页面。
登录PAI控制台。
在左侧导航栏单击工作空间列表,在工作空间列表页面中单击待操作的工作空间名称,进入对应工作空间内。
在工作空间页面的左侧导航栏选择模型部署>模型在线服务(EAS),进入模型在线服务(EAS)页面。
在模型在线服务(EAS)页面,单击部署服务,在自定义模型部署区域,单击自定义部署。
在新建服务页面,配置以下关键参数,其余参数取默认:
参数
示例值
说明
模型服务信息
服务名称
sdwebui_demo
自定义服务名称,在同一地域下全局唯一。
部署方式
镜像部署AI-Web应用
服务的部署方式。
镜像选择
镜像类型:PAI平台镜像
镜像名称:stable-diffusion-webui
镜像版本:4.2-standard
选择stable-diffusion-webui的镜像,本方案以部署镜像版本4.2-standard举例说明,您可以根据实际情况选择。
选中阅读并同意PAI服务专用协议。
运行命令
运行命令:
./webui.sh --listen --port 8000 --skip-version-check --no-hashing --no-download-sd-model --skip-prepare-environment --api --filebrowser
端口号:8000
完成上述配置后,系统将自动生成相应的运行命令,无需进行修改。
资源部署信息
资源组种类
公共资源组
选择用于部署和运行服务的资源。
资源配置方法
常规资源配置
本方案选择常规资源配置。
资源配置选择
资源类型:GPU
实例规格:ml.gu7i.c16m60.1-gu30
使用GPU类型,例如选择规格为ml.gu7i.c16m60.1-gu30,此规格在满足模型正常运行的条件下性价比高。
系统盘配置
额外系统盘:100 G
需额外配置的系统盘内存大小。
完成上述配置后,在对应配置编辑区域会自动生成对应的JSON文件。
单击部署,大约等待5分钟后即可完成模型部署。
启用Web应用并进行模型推理
单击上述步骤中已部署的模型服务方式列的查看Web应用。
进行模型推理验证。
在SD WebUI页面文生图页签中,输入正向提示词Prompt,例如
cute dog
,然后单击生成,即可完成AI绘图,效果图如下:
常见问题
图片生成速度慢怎么办?
在模型在线服务EAS页面,单击已部署的模型操作列的更新服务。
更新运行命令,开启Blade或xFormers进行模型服务加速。
加速方式
说明
Blade
由PAI平台提供的加速工具,在不同的图像尺寸和迭代步数下有不同的加速效果,最高可实现3.06倍的加速效果,为您的AIGC之旅带来更高性能和更低延时。
运行命令示例:
./webui.sh --listen --port=8000 --blade
xFormers
SD WebUI自带的开源加速工具,拥有更广泛的模型适配性。
运行命令示例:
./webui.sh --listen --port=8000 --xformers
单击更新。
如何挂载自己的模型及输出目录等内容
如果您自己在开源社区下载了模型或自己训练得到了LoRA或SD等模型要进行部署,或需要保存输出数据到您自己的OSS Bucket目录,或需要安装第三方插件等,您可以通过文件挂载方式实现。
创建OSS Bucket,详情请参见OSS控制台快速入门。
在模型在线服务EAS页面,单击已部署的模型操作列的更新服务。
在模型服务信息区域,单击填写模型配置,并配置运行命令。
参数
示例值
说明
模型配置
挂载类型:OSS挂载
OSS路径:步骤1中创建的路径,如
oss://bucket-test/data-oss/
挂载路径:
/code/stable-diffusion-webui/data-oss
是否只读:关闭
单击填写模型配置,选择OSS路径和挂载路径。
运行命令
运行命令:
./webui.sh --listen --port=8000 --data-dir data-oss
端口号:8000
在运行命令中增加参数:
--data-dir:配置为
data-oss
,即与挂载路径中最后一级目录一致。单击更新,PAI会自动在您配置的OSS空文件目录下创建如下目录结构。因此,建议您在服务启动成功后,再向指定的目录上传数据。
将已下载的或训练获得的模型上传到models目录下指定位置,然后单击目标服务操作列下的>重启服务,服务重启成功后,即可生效。
在SD WebUI页面切换模型,进行模型推理验证。
服务长时间卡住怎么办?
您可以先尝试重新打开SD WebUI界面或重启EAS服务来解决:
单击目标服务服务方式列下的查看Web应用,重新打开SD WebUI。
单击目标服务操作列下的>重启服务,重启EAS服务。
如果重启后长时间无法解决,则大概率是因为服务需要从外网下载模型或插件等内容导致。EAS默认不开公网,镜像可以离线启动,挂载模型也无需网络。但部分插件的使用,需要依赖从互联网下载相关内容。此时推荐您根据日志,找到模型或插件的下载路径,手动下载模型并上传到OSS进行挂载,详情请参见如何挂载自己的模型及输出目录等内容。如果仍需要连接互联网,请参见配置网络连通和公网连接及白名单配置进行公网连接配置。
如何多人同时使用一个SD WebUI出图?
本文部署的示例为单机版,仅支持单个人使用,多人使用会出现不兼容问题。当您需要企业级多人使用时,可以部署集群版SD WebUI,即在部署服务时,版本可选择为4.2-cluster-webui即可,同时建议多人使用时开启多个服务实例数,来保证AI绘画的出图速度和稳定性。
部署集群版SD WebUI后,有以下优势:
多个团队可以通过相同的URL访问应用,互不干扰。
支持多人共享一张卡,同时单一服务按照实际使用量进行弹性扩缩容,从而提高集群的使用率,实现降本增效的目的。
对接企业内部账号体系,按用户身份区分每个人的出图模型、图片成果和插件等。
如何将WebUI页面的默认语言切换为英文?
在SD WebUI页面单击设置。
在左侧导航栏单击用户界面,在右侧页面本地化区域,选择无。
在SD WebUI页面上方,单击保存设置,保存成功后单击重启前端。
重新刷新WebUI页面,即可切换为英文。
如何更方便地管理自己的文件系统?
在创建或更新服务时(已挂载OSS路径),运行命令中增加参数
--filebrowser
,例如./webui.sh --listen --port=8000 --blade --data-dir data-oss --filebrowser
。服务部署完成后,单击服务方式列下的查看Web应用。
在SD WebUI页面,单击FileBrowser页签。您可以直接查看文件系统,或进行上传、下载操作。
相关文档
EAS的部署原理介绍和使用流程,请参见EAS模型服务概述。
EAS提供了多种预置镜像用于快速部署社区模型和推理服务引擎,详情请参见服务部署:通用镜像。
EAS也支持一键部署基于ComfyUI和Stable Video Diffusion模型的AI视频生成Web应用,快速实现文本到视频的AI生成解决方案,详情请参见5分钟使用EAS一键部署AI视频生成应用。
- 本页导读 (1)