注:当前项目为 Serverless Devs 应用,由于应用中会存在需要初始化才可运行的变量(例如应用部署地区、服务名、函数名等等),所以不推荐直接 Clone 本仓库到本地进行部署或直接复制 s.yaml 使用,强烈推荐通过
s init
的方法或应用中心进行初始化,详情可参考部署 & 体验 。
使用serverless devs将stable-diffusion部署到阿里云函数计算上,支持模型自定义
使用该项目,您需要有开通以下服务:
服务 | 备注 |
---|---|
函数计算 FC | 对AIGC进行GPU推理计算 |
文件存储 NAS | 存储AIGC的模型, 新用户请先领取免费试用资源包https://free.aliyun.com/?product=9657388&crowd=personal |
推荐您拥有以下的产品权限 / 策略:
您还需要注意:
1.本项目支持自定义模型,并且提前预置了sd1.5的基础模型,自定义模型需要通过kodbox管理后台进行上传
2.项目依赖阿里云函数计算和阿里云文件存储Nas,这两款产品都会产生资费,请关注您的资源包使用情况和费用情况
3.项目部署成功之后确保模型加载完毕(左上角选择框有模型显示)再开始推理
4.项目初始启动有大约1分钟的白屏时间,这是服务完全冷启动的状态,请耐心等待
5.项目里面的插件安装推荐下载到本地再通过kodbox管理后台上传,因为网络关系,在线安装有失败的情况
免责声明:
- 该项目的构建镜像及应用模板完全开源,由社区开发者贡献,阿里云仅提供了算力支持;
- 项目使用的sd-webui镜像内容同步自开源社区,如遇软件使用问题可以去社区查看问题答案
- 🔥 通过 Serverless 应用中心 , 该应用。
- 通过 Serverless Devs Cli 进行部署:
- 安装 Serverless Devs Cli 开发者工具 ,并进行授权信息配置 ;
- 初始化项目:
s init fc-stable-diffusion-plus -d fc-stable-diffusion-plus
- 进入项目,并进行项目部署:
cd fc-stable-diffusion-plus && s deploy - y
使用该项目,您需要有开通以下服务:
服务 | 备注 |
---|---|
函数计算 FC | |
文件存储 NAS |
推荐您拥有以下的产品权限 / 策略:
本应用旨在帮助开发者实现将stable-diffusion-webui 开源应用部署到阿里云函数计算,并且提供动态管理模型插件等能力
- 安装 Serverless Devs Cli 开发者工具
npm install @serverless-devs/s -g
,并进行授权信息配置 ; - 初始化项目:
s init fc-stable-diffusion-plus -d fc-stable-diffusion-plus
- 进入项目,并进行项目部署:
cd fc-stable-diffusion-plus && s deploy - y
本地部署成功后使用部分参考应用中心部署方案配置管理后台系列操作
通过模版创建应用-> 人工智能选项卡-> AI数字绘画stable-diffusion自定义模板->立即创建
选择直接部署-> 杭州/北京/上海/深圳地域 -> 复制社区开发者准备好的容器镜像
- 杭州region: registry.cn-hangzhou.aliyuncs.com/serverlessdevshanxie/sd-auto-nas:v3
- 北京region: registry.cn-beijing.aliyuncs.com/serverlessdevshanxie/sd-auto-nas:v3
- 深圳region: registry.cn-shenzhen.aliyuncs.com/serverlessdevshanxie/sd-auto-nas:v3
- 上海region: registry.cn-shanghai.aliyuncs.com/serverlessdevshanxie/sd-auto-nas:v3
点击创建并部署默认环境
接下来什么都不需要操作,等待应用部署即可,约花费5-10分钟, 如果你是技术同学,可以展开看看我们提供的部署日志,观察部署过程
部署成功后得到两个域名 其中sd开头的是主服务,我们提前准备好了sd1.5的模型,并且增加了deforum插件(文生视频,请注意使用这部分汇能会产生更多的资费),您现在可以直接访问这个域名,操作生成图片或者视频。
admin开头的是我们的管理后台,如果您需要增加自己的模型或者安装更多的插件,接下来我们需要先配置一下管理后台,然后把模型上传上去 管理后台使用的是 可道云提供的 kod-box,对于你而言一路点点点,就可以 等初始化好之后,设置自己的登录账号和密码 之后进行登录 登录后在路径输入 /mnt/auto/sd 如果你熟悉sd-webui的目录的话,你可以看到对应的目录 接下来我们打开/mnt/auto/sd/models/Stable-diffusion/ ,然后点击上传->离线下载
您可以输入模型地址进行下载,除了下载,你也可以把本地的模型直接拖拽上传。 因为模型较大,下载时间预计花费5-15分钟,可以休息等待一下(如果提升出错可以忽略) 这里面如果您觉得上传模型太慢,可以尝试使用阿里云的OSS作为中转,先把模型上传到oss,然后将模型文件设置为公共读,复制地址,然后将地址中的基础URL修改成oss的内网域名,这样不会产生公网流浪费用。
模型下载完,我们可以打开sd的服务了重新选择加载模型,进行推理
如果您是一名开发同学,可以构建自己的镜像 基于https://github.com/AbdBarho/stable-diffusion-webui-docker/tree/master/services/AUTOMATIC1111这个项目,
社区准备了优化好的镜像,
- 增加deforum扩展的镜像: https://github.com/ai-app-with-serverless/fc-stable-diffusion-image/tree/master
- 仅包含api服务的镜像:https://github.com/ai-app-with-serverless/fc-stable-diffusion-image/tree/apionly
因为本身sd的模型较大,打包镜像后依然达到10G,函数计算拉起镜像冷启动时间会比较长,大概2-5分钟,我们提供了预加载界面,避免您长时间的白屏等待。
为了提升冷启动时间,我们提供了镜像加速服务,请关注控制台上的镜像加速状态,只有在ready才真正可用。
这个可能是因为模型本身还未加载,请注意查看左上角选择框里面包含模型内容,之后再操作。出图的时候会有一定的等待时间,这个是正常现象,耐心等待即可
GPU本身对算力资源消耗较大,我们默认提供的是按量付费的模式,当您不用的时候会自动释放资源,这样可以帮您减少资费消耗
需要自己上传
可以在进入admin后台管理地址之后在路径输入框输入 /mnt/auto/sd 然后进入models/Stable-diffusion 点击文件上传,选择”离线下载“并输入
您的模型地址
- 使用stable-diffusion-webui-docker 镜像本地镜像构建
- 将构建好的本地镜像托管到 阿里云容器镜像服务服务, 注意选择镜像服务的地域要跟函数计算部署的地域保持一致
您如果有关于错误的反馈或者未来的期待,您可以在 Serverless Devs repo Issues 中进行反馈和交流。如果您想要加入我们的讨论组或者了解 FC 组件的最新动态,您可以通过以下渠道进行:
微信公众号:serverless |
微信小助手:xiaojiangwh |
钉钉交流群:33947367 |