基于 Amazon EC2 快速部署 Stable Diffusion WebUI + chilloutmax 模型

自2023年以来,AI绘图已经从兴趣娱乐逐渐步入实际应用,在众多的模型中,作为闪耀的一颗明星,Stable diffusion已经成为当前最多人使用且效果最好的开源AI绘图软件之一。Stable Diffusion Web UI 是由AUTOMATIC1111 开发的基于 Stable Diffusion AI 模型的 AI 图片处理工具,支持文生图、图生图。 该Web UI提供了一个图形化的操作界面,用户无需编写任何代码即可使用Stable Diffusion的所有功能。而且用户可以将自己的Stable Diffusion模型部署在个人电脑、工作站或服务器上,无需复杂的配置。

然而尽管可以用纯CPU或低端GPU跑Stable Diffusion WebUI,但是速度非常慢,30秒就能算好的图,配置不够的话往往要算10分钟以上。今天给电脑配置不够和不想安装sd占用太多资源的同学带来一篇解决方案:通过Amazon EC2 快速部署 Stable Diffusion WebUI + chilloutmax 模型。

一、创建 Amazon EC2 实例

Amazon EC2 是亚马逊云科技提供的亚马逊弹性计算云服务器,其提供最广泛、最深入的计算平台,拥有最新的处理器、存储、网络、操作系统和购买模型,以帮助最好地满足工作负载的需求。其具有以下主要特点:

  1. 弹性:EC2允许用户根据业务需求快速、灵活地调整计算资源。用户可以根据需要增加或减少服务器的数量,实现无缝的扩展或缩减。

  2. 多样化选择:亚马逊云科技提供了多种类型的EC2实例,包括通用型、计算优化型、内存优化型和存储优化型等,以满足不同的计算、内存、存储和网络需求。

  3. 安全性:EC2提供了多层次的安全措施,包括网络隔离、数据加密、身份认证等,保护用户的数据和应用程序免受恶意攻击和数据泄露的风险。

  4. 可靠性:EC2利用亚马逊全球的数据中心网络,提供高可用性和故障转移能力。

  5. 易用性:EC2与亚马逊云科技其他服务深度集成,支持简单的Web界面管理和API调用,方便用户操作和管理。

首先进入亚马逊云科技海外区官网页面:亚马逊云科技,开始创建 Amazon EC2 实例。亚马逊云科技目前提供了Amazon EC2每月750小时试用套餐,该套餐包括了Linux、RHEL、SLES, t2.micro 或 t3.micro实例、 Windows t2.micro 或 t3.micro 以及公网 IPv4 地址使用时间。

进入控制台页面后,搜索Amazon EC2:

点击EC2 Dashboard开始启动实例:

推荐使用 G4dn 机型(NVIDIA T4 GPU,16 GiB 显存)或者 G5 机型(NVIDIA A10G GPU,24 GiB 显存),地区最好选择美国地区,下载安装模型速度快,镜像选择Ubuntu的镜像,并且附带GPU 驱动,例如:Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.0.1,磁盘选择挂盘100G

然后进入实例控制台,单击网络与安全-安全组,选择创建新的安全组:

并且点击Add Rule(添加规则),开放TCP,并将源设定为0.0.0.0/0,最后 点击右下角的创建安全组。

成功创建好实例并配置好安全组后就可以开始部署了!

二、快速部署 Stable Diffusion WebUI + chilloutmax 模型

回到 Amazon EC2 控制台,登录或者通过使用公网ip+22端口进行SSH 登录,然后在刚刚创建好的实例中打开命令行输入以下指令,首先安装wget、git、python3、libgl1、libglib2.0-0等宝,然后克隆stable-diffusion-webui仓库:

sudo apt install wget git python3 python3-venv libgl1 libglib2.0-0 git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

如果下载比较慢的话,也可以直接在github上下载,Stable Diffusion WebUI的官方仓库为:https://github.com/AUTOMATIC1111/stable-diffusion-webui

下载好stable-diffusion-webui的代码后,然后下载 chilloutmix 模型,cd进入 stable-diffusion-webui/models/stable-diffusion 文件夹,通过如下命令行下载 chilloutmix 模型到该目录下。

 

cd stable-diffusion-webui/models/Stable-diffusion wget -O chilloutmix_NiPrunedFp32.safetensors https://civitai.com/api/download/models/9475

ChilloutMix 模型是基于 Stable Diffusion模型微调后的模型。它在生成真实东亚女性人像方面表现较强,但对于男性、2.5D、景观、二次元等类型的直出图稍显不足,可能需要结合其他 LoRA 模型进行尝试。此外,ChilloutMix 模型与较多真实人物如名人、明星等的 LoRA 模型适配较好。不过其存在手指畸形、裸露肌肤部分随机黑点等问题。

其次进行LoRA 扩展安装,最新版本的 WebUI 已经内置了 LoRA,只需要单独安装 Additional Network 这个扩展即可,在 WebUI 界面的 Extensions 页面,使用 Install from URL 安装,https://github.com/kohya-ss/sd-webui-additional-networks.git

最后,cd进入stable-diffusion-webui文件夹,输入./webui.sh。通过自动化脚本完成安装。该步骤会自动安装webui所需的各依赖项,如gfpgan,k_diffusion等。实测完成全部安装大概需要10-20min。

运行起来后,会显示并给出地址及端口号,这样就成功使用Amazon EC2 快速部署 Stable Diffusion WebUI + chilloutmax 模型啦!通过在浏览器中导航到进入Webui后,选择 chilloutmax 模型(基于 sd 1.5 fine-tunning),填写样例 ,其中,Prompt表示正向提示词,用于指导AI生成图片的具体内容。Negative Prompt表示反向提示词,用于避免AI生成图片中的某些内容。Sampler表示选择生成图片的采样算法。Sampling Steps表示采样重复次数,影响图片生成质量。Restore Faces是一种人脸修复功能,使真人或二次元人脸更自然。Face Restoration Algorithm可以选择人脸修复算法。Code Former Weight Parameter调整修复算法的权重。

为了让图片生成得更加真实自然,调整的参数如下:Sampler: DPM++ SDE Karras;Sample Steps: 28;CFG scale: 8;Size: 512x768。最后点击Generate就可以生成了!

当然,我们在不使用的时候停止实例的运行,避免产生过多的费用。我们可以在亚马逊云科技控制台中停止实例并在再次需要时重新启动它,而不会丢失任何已安装的应用程序。

重新启动 EC2 实例后,我们可以通过 SSH 登录它并使用以下命令重新启动应用程序:

 

nohup bash stable-diffusion-webui/webui.sh --listen > log.txt

现在进入亚马逊云科技海外区官网页面:亚马逊云科技

除了免费的云服务器(Amazon EC2),亚马逊云科技还云存储(Amazon S3),负载均衡(Elastic Load Balancing),虚拟服务器VPS(Amazon Lightsail)、视频会议(Amazon Chime )等等100 余种云产品或服务免费试用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/21752.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣2090.半径为k的子数组平均值

力扣2090.半径为k的子数组平均值 accumulate函数&#xff1a;求一段和(起始迭代器&#xff0c;终止迭代器&#xff0c;初始值) class Solution {public:vector<int> getAverages(vector<int>& nums, int k) {int n nums.size();vector<int> res(n,-1…

Java密码复杂度实现

在Java中实现密码复杂度验证&#xff0c;通常需要考虑以下几个因素&#xff1a; 密码长度&#xff1b; 包含大写字母&#xff1b; 包含小写字母&#xff1b; 包含数字&#xff1b; 包含特殊字符&#xff08;可选&#xff09;。 以下是一个简单的Java类&#xff0c;用于验…

江苏服务器租用的优势有哪些?

随着互联网科技的快速发展&#xff0c;网络行业也逐渐开始兴起&#xff0c;而网络服务则离不开服务器的使用&#xff0c;那么江苏服务器租用对于其它地区来说都哪些优势呢&#xff1f; 江苏省是经济发展比较迅速的地区&#xff0c;所以江苏的企业对于网络方面的发展也是十分快速…

vue-cl-service不同环境运行/build配置

概述 在项目开发过程中&#xff0c;同一个项目在开发、测试、灰度、生产可能需要不同的配置信息&#xff0c;所以如果能根据环境的不同来设置参数很重要。 vue项目的vue-cl-service插件也支持不同环境的不同参数配置和打包。 实现 新建不同环境配置文件 vue项目中的配置文件以…

面向对象程序设计之从C到C++的初步了解

1. C语言 1. C的发展 C是从C语言发展演变而来的&#xff0c;首先是一个更好的C引入了类的机制&#xff0c;最初的C被称为“带类的C”1983年正式取名为C 从1989年开始C语言的标准化工作 于1994年制定了ANSIC标准草案 于1998年11月被国际标准化组织(ISO)批准为国际标准&#xf…

QT的窗口坐标和全局坐标

1、定义解释 窗口坐标&#xff1a;创建的窗口的坐标&#xff0c;以窗口左上角点为原点&#xff0c;横向往右为x轴正向&#xff0c;竖向往下为y轴正向。 全局坐标系&#xff1a;电脑屏幕的坐标系&#xff0c;以电脑屏幕左上角点为原点&#xff0c;横向往右为x轴正向&#xff0…

Ubuntu系统安装

目录 安装准备 安装步骤 虚拟机配置 系统安装 安装准备 Ubuntu系统镜像&#xff0c;虚拟机环境 虚拟机环境 使用的虚拟机软件为VMware Workstation 系统镜像 阿里镜像站&#xff1a;阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 (aliyun.com)https://developer.aliyun.com…

记一次使用mysql存储过程时,游标取值为空问题

call modify_collation(num,count_num) > 1146 - Table test.table_name doesnt exist > 时间: 0.009s 我在使用mysql存储过程时&#xff0c;打印时游标取值为空&#xff0c;报错找不到表。我的过程语句是这样的&#xff1a; drop procedure if exists modify_collation…

【电源专题】一体成型电感为什么需要注意耐压问题

对于电感,我们在电路上使用的很多,如升压、降压、滤波等电路中基本上使用到了电感。电感的种类有很多,电感从不同的角度会有不同的分类。如可以根据否屏蔽、工艺类型、磁性材料类型等可分为多类,这在文章:【分立元件】电感器(inductor)——简介中有做了一些简单的介绍。…

【Qt】之【项目】整理可参考学习的git项目链接(持续更新)

Tcp 通信相关 IM即时通讯设计 高并发聊天服务&#xff1a;服务器 qt客户端&#xff08;附源码&#xff09; - DeRoy - 博客园 未使用protobuf通讯协议格式 github&#xff1a;GitHub - ADeRoy/chat_room: IM即时通讯设计 高并发聊天服务&#xff1a;服务器 qt客户端 QT编…

Redis中大Key与热Key的解决方案

原文地址&#xff1a;https://mp.weixin.qq.com/s/13p2VCmqC4oc85h37YoBcg 在工作中Redis已经成为必备的一款高性能的缓存数据库&#xff0c;但是在实际的使用过程中&#xff0c;我们常常会遇到两个常见的问题&#xff0c;也就是文章标题所说的大 key与热 key。 一、定义 1.1…

python使用反射创建对象问题

在python中没有发现类似j ava可以使用全限定类名创建对象的方法。 例如&#xff1a;java可以使用Class.forName(全限定类名)这样就可以简单的创建一个对象了。 python中也可以使用反射方式创建对象&#xff0c;稍微比较复杂。 第一步&#xff1a;导入py文件模块 # test_valida…

THS6011启动控制台后无法使用https访问控制台(by yz+lqw)

原因&#xff1a; 6011相对于6010版本&#xff0c;多了一个ssl的开关&#xff0c;下图是6010版本的参考配置&#xff1a; 而6011版本下的conf目录下的http.yaml&#xff0c;里面的ssl开关&#xff0c;默认是关闭的&#xff0c;也就是enable:false. 所以需要把enable&#xf…

构建LangChain应用程序的示例代码:9、使用Anthropic API生成结构化输出的工具教程

使用Anthropic API生成结构化输出的工具 Anthropic API最近增加了工具使用功能。 这对于生成结构化输出非常有用。 ! pip install -U langchain-anthropic可选配置&#xff1a; import osos.environ[LANGCHAIN_TRACING_V2] true # 启用追踪 os.environ[LANGCHAIN_API_KEY…

echarts-series的x,y轴的规则

series的data与x,y轴的匹配规则 如果series的data为[1,2,3,4,5,6] 1.如果x,y轴都是类目轴&#xff0c;且data没有与x,y轴的值匹配上&#xff0c;则无效。 2.如果x,y轴都为类目,data中能够跟类目轴上的字符串对应上&#xff0c;轴&#xff0c;有效。 3.如果都为value.,则按数值…

实验四:基于System-Verilog的FPGA设计与仿真

实验四&#xff1a;基于System-Verilog的FPGA设计与仿真 实验目的&#xff1a; 学习和掌握System Verilog基本语法&#xff0c;在DE2-115开发板上重新设计之前做过的Verilog练习&#xff0c;如流水灯、全加器或者VGA显示、超声波测距 等&#xff0c;并完成 testbench 仿真。 …

定时开放防火墙端口,并自动关闭

限时开放端口脚本 manage_port.sh 使用说明 简介 manage_port.sh 是一个用于在 Linux 系统上临时开放并随后关闭指定端口的脚本。该脚本接受端口号和时间&#xff08;以分钟为单位&#xff09;作为参数&#xff0c;并根据系统自动检测使用 ufw 或 firewalld 防火墙来管理端口…

【贪心算法·哈夫曼编码问题】从定长编码和不定长编码讲到最小化带权路径长度和

一、问题介绍 1.1&#xff1a;编码问题 首先&#xff0c;我们知道&#xff0c;数字字符等任何数据的底层&#xff0c;都是以二进制&#xff08;0,1序列&#xff09;的方式存储在计算机内的。 对于“编码”其实就是那些能显示在计算机屏幕上的&#xff1a;不同字母、汉字、字…

半导体光子电学期末笔记2: 光子晶体 Photonic crystals

光子晶体概述 光子晶体定义和分类 [P4-5] 光子晶体是一种在一维、二维或三维空间内周期性排列的多层介质。这些结构通过在光子尺度上排列的重复单元&#xff0c;可以对光进行调控和控制。具体来说&#xff0c;光子晶体是指那些在空间上具有周期性排列的介质结构&#xff0c;它…

C++中的‘位’操作

目录 摘要 基本位操作 1. 按位与&#xff08;AND&#xff09;&&#xff1a; 2. 按位或&#xff08;OR&#xff09;|&#xff1a; 3. 按位异或&#xff08;XOR&#xff09;^&#xff1a; 4. 按位取反&#xff08;NOT&#xff09;~&#xff1a; 5. 左移&#xff08;Le…