如何在阿里云快速启动Stable Diffusion轻松玩转AI绘画

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 阿里云计算巢提供了Stable Diffusion快速部署及下载自定义模型功能,使用者不需要自己下载代码,不需要自己安装复杂的依赖,不需要了解Git、Python、Docker等技术,只需要在控制台图形界面点击几下鼠标就可以快速启动Stable Diffusion服务进行绘画,非技术同学也能轻松搞定。

阿里云计算巢提供了Stable Diffusion快速部署及下载自定义模型功能,使用者不需要自己下载代码,不需要自己安装复杂的依赖,不需要了解Git、Python、Docker等技术,只需要在控制台图形界面点击几下鼠标就可以快速启动Stable Diffusion服务进行绘画,非技术同学也能轻松搞定。

什么是Stable Diffusion

Stable Diffusion Web UI 是一个基于 Stable Diffusion 的基础应用,利用 gradio 模块搭建出交互程序,可以在低代码 GUI 中立即访问 Stable Diffusion。它支持文字生成图片,图片转图片,使用各种各样的模型来达到你想要的效果,还能训练自己的专属模型。本文向您介绍如何在阿里云上快速的启动stable-diffusion服务进行AI绘画。 先看效果

前提条件

  • 已开通阿里云账号

  • 确保账户余额超过100元

操作步骤

重要

使用阿里云资源,需要收费,请仔细阅读阿里云控制台的订单信息,然后再进行下一步操作。

  1. 登录阿里云计算巢控制台,进入Stable Diffusion服务创建界面,根据界面提示,填写相关参数(软件登录名及登录密码很重要,后面访问WebUI需要用到),填写完成点击确认订单。推荐选择按量付费方式,使用完将实例释放掉或按量付费实例节省停机模式以节省成本。

    (可选项)若想要将生成图片的结果(包括prompt等参数及生成的图片)存储到RDS,可以开启RDS插件功能。

重要

开启RDS插件配置功能,需要收费,请根据控制台提示进行选择。

image

参数说明

在创建服务实例的过程中,需要配置服务实例信息。下表介绍stable-diffusion服务实例输入参数的详细信息。

参数组

参数项

示例

说明

服务实例名称

test

实例的名称

地域

部署地域

新加坡

选中服务实例的地域,因为一些模型在国内无法下载访问,建议选择中国香港或海外地域

可用区配置

部署区域

可用区I

地域下的不同可用区域

付费类型配置

付费类型

按量付费 或 包年包月

ECS实例配置

实例类型

ecs.gn6i-c4g1.xlarge

实例规格,可以根据实际需求选择

ECS实例配置

实例密码

设置实例密码。长度8,30个字符,必须包含三项(大写字母、小写字母、数字、()`!@#$%^&*-+={}[]:;'<>,.?/ 中的特殊符号)

登录信息

软件登录名

admin

设置软件登录名,默认为admin

登录信息

软件登录名密码

设置软件登录密码

网络配置

专有网络IPv4网段

192.168.0.0/16

VPC的ip地址段范围

网络配置

交换机子网网段

192.168.0.0/24

交换机子网网段

登录信息

软件登录名

admin

软件登录名称

登录信息

软件登录密码

设置实例密码。长度830个字符,必须包含三项(大写字母、小写字母、数字、()`!@#$%^&*-+={}[]:;'<>,.?/ 中的特殊符号)

RDS插件配置

开启RDS插件

true

是否开启RDS插件,默认开启,如不需要可关闭

RDS实例配置

实例规格

mysql.n2.medium.1

RDS数据库实例规格,根据实际需求选择(优惠ing)

RDS实例配置

实例存储

20

RDS数据库存储空间,默认20GB(优惠ing)

RDS实例配置

数据库账号

rdsuser

RDS数据库的访问账号名

RDS实例配置

数据库密码

RDS数据库的访问密码,可登录数据库查看AI数据

  1. 勾选我已阅读并同意《计算巢服务协议》,点击"立即创建"按钮。

  2. 查看部署进度。 点击去列表页查看,可以看到刚刚创建的服务实例以及服务部署进度。

  3. 访问stable-diffusion 等待状态变为"已部署"后,点击详情,进入对应的服务实例后,可以在页面上获取Endpoint以访问服务。 点击Endpoint后面的链接,输入第1步设置的软件登录名及密码。

  1. 完成验证后即可访问:

下载模型

  1. 以某模型网站提供的模型为例,首先此模型网站,找到自己想要下载的模型(预览图左上角显示模型的类型)。

    说明

    如果下载模型失败,建议选择香港或海外地域重试。

  1. 点击一个模型预览图进入详情页,找到Download按钮点击右键,复制链接地址:

  1. 在计算巢控制台点击运维管理,点击“下载模型”,输入相关参数(选择模型或预览图、模型类型、下载方式、文件类型,输入模型名称): CHECKPOINT模型示例: Lora模型示例:

    注意:CHECKPOINT、LORA、VAE三种方式不需要输入存储目录,其他模型可在模型类型选择“OTHER”, 自行修改文件存储目录: 参数输入完成后,点击下一步。

  2. 点击创建,开始下载。 等待下载完成(等待过程中也可以继续下载其他模型),当执行状态变为成功,表示已经下载完成。

  3. 此时可以登录到WebUI加载下载的模型。 CHECKPOINT模型示例: 点击上面的刷新按钮,就可以看到我们刚刚下载的CHECKPOINT模型了。 Lora模型:点击右面Lora按钮,然后点击Refresh,此时就可以看到我们刚刚下载的Lora模型了。在这里我们可以看到,直接下载模型的没有预览图的,此时可以通过上述下载方式自行上传一张图片到模型文件中,这里以上传本地文件的Lora模型预览图为例。依次点击确定、创建,等待执行状态变为成功。再次点击Refresh,可以看到,预览图也已经加载出来啦!

如何节约成本

ECS节约成本

GPU资源费用较高,使用完毕后可以通过下述两种方式来节省成本:

  1. 若只是暂时不使用了可以在运维管理页面选择关机(节省停机模式)【确保前面快速启动步骤1中选择的是按量付费类型】,此时部分资源会被回收并停止收费,以降低相关费用、节约使用成本,下次使用再进行开机,操作如下:

注意:此模式可能关机再开机后公网IP可能发生变化,若原IP地址访问不了可在详情-资源选项中查看IP地址进行访问。 关机: 图片 1.png等待关机结束: 开机: 等待开机结束:

  1. 若彻底不再使用了可以直接将服务实例删除,后续就不会再产生费用

高级功能

API访问

通过计算巢创建的Stable Diffusion默认开启了API访问,您可以通过API调用来更好地集成我们的服务。 通过上述步骤4中获取的Endpoint+/docs# 可以看到所有可访问的API列表,如访问 http://48.xxx.xx.163:8080/docs# 可以看到

image

以下是一个通过Python调用Stable Diffusion API的示例:

import requests
import io
import base64
from PIL import Image, PngImagePlugin

if __name__ == '__main__':
    url = "http://48.xxx.xx.163:8080"
    payload = {
        "prompt": "puppy dog",
        "steps": 5
    }
    token = "admin:password"
    encoded_token = base64.b64encode(token.encode("utf-8")).decode("utf-8")
    headers = {
        "Content-Type": "application/json",
        "Authorization": f'Basic {encoded_token}'
    }
    response = requests.post(url=f'{url}/sdapi/v1/txt2img', json=payload, headers=headers)
    r = response.json()
    for i in r['images']:
        image = Image.open(io.BytesIO(base64.b64decode(i.split(",", 1)[0])))
        png_payload = {
            "image": "data:image/png;base64," + i
        }
        response2 = requests.post(url=f'{url}/sdapi/v1/png-info', json=png_payload)
        pnginfo = PngImagePlugin.PngInfo()
        pnginfo.add_text("parameters", response2.json().get("info"))
        image.save('output.png', pnginfo=pnginfo)

更多API访问信息可查看API访问向导了解

启用RDS持久化AI数据

好不容易生成的prompt和图片还有参数, 都是关键数据不能丢。可以启用RDS持久化AI数据功能,将这些关键数据持久化存储在RDS中,以便后续更加方便的查询和使用这些数据, RDS数据库服务在数据可靠性和可用性上都有高保障。 配置步骤: 前提:需要保证快速启动步骤1中开启了RDS插件

  1. 在webui界面勾选 Save to DB(勾选即代表需要将AIGC的相关数据都持久化存储到RDS中)

  2. 指定数据库名 Database Name(默认值 stable_diffusion),指定表名 Table Name(默认 generated_images)

  3. 点击 Generate,图片生成完毕后,结果自动存储至 RDS

    image

现在这些关键数据已经保存到RDS了,接下来我们看一下如何查询刚刚保存的数据,一共有两种方式:

  1. 通过服务界面查询数据。启用RDS插件之后,会有一个额外的 Images 页面,其中会显示已经保存到RDS的图片以及相应的参数。点击 Refresh 刷新列表,点击 Download 将图片下载到本地

    image
  2. 还可以直接连接到RDS数据库查询数据。连接方式如下:

    SD"服务资源"中点击RDS

    image

    筛选出RDS实例,点击实例ID跳转到RDS详情页:

    image

    点击"登录数据库", 输入之前创建时RDS MySQL的登录名和密码:

    imageimage

    找到存放在RDS里的AIGC默认的库表: stable_diffusion.generated_images。

CREATE TABLE `generated_images` (
  `id` int PRIMARY KEY AUTO_INCREMENT,     /*id*/
  `prompt` text,													 /*图片生成的 prompt */
  `negative_prompt` text,									 /*图片生成的 negative_prompt */
  `steps` varchar(255) DEFAULT NULL,       /*图片生成的 steps */
  `seed` varchar(255) DEFAULT NULL,        /*图片生成的 seed */
  `sampler` varchar(255) DEFAULT NULL,     /*图片生成的 sampler */
  `cfg_scale` varchar(255) DEFAULT NULL,   /*图片生成的 cfg_scale */
  `size` varchar(255) DEFAULT NULL,        /*图片生成的 size,例如 512x512 */
  `model_hash` varchar(255) DEFAULT NULL,  /*图片生成的 model 的 hash 值 */
  `model` varchar(255) DEFAULT NULL,       /*图片生成的 model */
  `image_base64` mediumtext,               /*图片数据,base64格式 */
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

了解更多

  • 本文通过计算巢服务完成了StableDiffusion的快速部署,什么是计算巢服务?

    计算巢是一个开放给企业应用服务商、IT集成服务商、交付服务商、管理服务提供商(以上都统称为服务商)和最终用户的服务管理PaaS平台。服务商能通过计算巢服务更好地在阿里云上部署服务、交付服务及管理服务。最终用户能通过计算巢管理在阿里云上订阅的各类服务商提供的服务。计算巢为服务商和用户提供了更高效、便捷、安全的服务使用体验。点击计算巢服务官方文档了解更多。

  • 本文通过运维编排服务完成了模型的快速下载,什么是运维编排服务?

    运维编排服务(简称OOS)是全面、免费的云上自动化运维平台,提供运维任务的管理和执行。典型使用场景包括:事件驱动运维,批量操作运维,定时运维任务,跨地域运维等,也可提供重要运维场景的审批、通知等功能。点击运维编排服务官方文档了解更多。

参考资料

计算巢服务官方文档

运维编排服务官方文档

用户反馈

感谢您对我们产品的使用和支持!我们非常重视用户的反馈,现诚邀您填写计算巢Stable Diffusion用户反馈问卷填写大概需要花费您5分钟。非常欢迎您给我们提意见,产品团队会认真评估每一条建议,后续为您提供更好的服务!

相关实践学习
2048小游戏
基于计算巢&ECS云服务器快速部署,带您畅玩2048小游戏。
相关文章
|
8天前
|
人工智能 运维 Kubernetes
阿里云容器服务AI助手2.0 - 新一代容器智能运维能力
2024年11月,阿里云容器服务团队进一步深度融合现有运维可观测体系,在场景上覆盖了K8s用户的全生命周期,正式推出升级版AI助手2.0,旨在更好地为用户使用和运维K8S保驾护航。
|
11天前
|
机器学习/深度学习 存储 人工智能
2024阿里云AI交出答卷,全球领先!
2024阿里云AI交出答卷,全球领先!
61 9
2024阿里云AI交出答卷,全球领先!
|
12天前
|
存储 人工智能 数据管理
|
11天前
|
人工智能 云计算
官宣!阿里云成为总台春晚云计算AI独家合作伙伴
官宣!阿里云成为总台春晚云计算AI独家合作伙伴
157 22
|
10天前
|
机器学习/深度学习 人工智能 安全
阿里云先知安全沙龙(武汉站) ——AI赋能软件漏洞检测,机遇, 挑战与展望
本文介绍了漏洞检测的发展历程、现状及未来展望。2023年全球披露的漏洞数量达26447个,同比增长5.2%,其中超过7000个具有利用代码,115个已被广泛利用,涉及多个知名软件和系统。文章探讨了从人工审计到AI技术的应用,强调了数据集质量对模型性能的重要性,并展示了不同检测模型的工作原理与实现方法。此外,还讨论了对抗攻击对模型的影响及提高模型可解释性的多种方法,展望了未来通过任务大模型实现自动化漏洞检测与修复的趋势。
|
5天前
|
存储 人工智能 数据管理
媒体声音|专访阿里云数据库周文超博士:AI就绪的智能数据平台设计思路
在生成式AI的浪潮中,数据的重要性日益凸显。大模型在实际业务场景的落地过程中,必须有海量数据的支撑:经过训练、推理和分析等一系列复杂的数据处理过程,才能最终产生业务价值。事实上,大模型本身就是数据处理后的产物,以数据驱动的决策与创新需要通过更智能的平台解决数据多模处理、实时分析等问题,这正是以阿里云为代表的企业推动 “Data+AI”融合战略的核心动因。
|
5天前
|
人工智能 运维 监控
阿里云Milvus产品发布:AI时代云原生专业向量检索引擎
随着大模型和生成式AI的兴起,非结构化数据市场迅速增长,预计2027年占比将达到86.8%。Milvus作为开源向量检索引擎,具备极速检索、云原生弹性及社区支持等优势,成为全球最受欢迎的向量数据库之一。阿里云推出的全托管Milvus产品,优化性能3-10倍,提供企业级功能如Serverless服务、分钟级开通、高可用性和成本降低30%,助力企业在电商、广告推荐、自动驾驶等场景下加速AI应用构建,显著提升业务价值和稳定性。
|
12天前
|
弹性计算 人工智能 自然语言处理
云工开物:阿里云弹性计算走进高校第2期,与北京大学研一学生共探AI时代下的应用创新
阿里云高校合作、弹性计算团队​于北京大学,开展了第2届​【弹性计算进校园】​交流活动。
|
7天前
|
人工智能 Cloud Native 数据管理
数据+AI融合趋势洞察暨阿里云OpenLake解决方案发布
Forrester是全球领先的市场研究与咨询机构,专注于新兴技术在各领域的应用。本文探讨如何加速现代数据管理,推动人工智能与客户业务的融合创新。面对数据标准缺乏、多云环境复杂性、新兴业务场景及过多数据平台等挑战,Forrester提出构建AI就绪的数据管理基石,通过互联智能框架、全局数据管理和DataOps、端到端数据管理能力、AI赋能的数据管理以及用例驱动的策略,帮助企业实现数据和AI的深度融合,提升业务价值并降低管理成本。
|
12天前
|
机器学习/深度学习 新零售 人工智能
基于阿里云AI购物助手解决方案的深度评测
阿里云推出的AI购物助手解决方案,采用模块化架构,涵盖智能对话引擎、商品知识图谱和个性化推荐引擎。评测显示其在智能咨询问答、个性化推荐和多模态交互方面表现出色,准确率高且响应迅速。改进建议包括提升复杂问题理解、简化推荐过程及优化话术。总体评价认为该方案技术先进,应用效果好,能显著提升电商购物体验并降低运营成本。
52 0