基于 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.mfbz.cn/a/675610.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【数字孪生平台】光幻示例解析

本文在线示例查看。更多精彩内容尽在数字孪生平台,关注公众号:sky的数孪技术,技术交流、源码下载请添加VX:digital_twin123 地形构建 我们目的要搭建一个中间平坦、两侧有凹凸山脉效果并且能够一直绵延不断的地形,接下来我们通过三个问题来进行分析。 采用什么样的几何图…

Vue——模板引用(不建议使用,了解)

文章目录 前言测试案例 前言 模板引用,在官方文档中也有很详细的描述。 虽然 Vue 的声明性渲染模型为你抽象了大部分对 DOM 的直接操作,但在某些情况下,我们仍然需要直接访问底层 DOM 元素。 个人理解为: 在vue中,依据…

Scrum团队在迭代中如何处理计划外的工作

认为 Scrum 团队不做计划其实是一个误区,实际上很多 Scrum 团队在冲刺计划会议以及在细化工作项时均会进行详细规划。此外,他们还会创建一个路线图,以便显示他们在多个冲刺中的计划。 Scrum 团队需要经常进行计划,以便在不断变化…

本地 Java API 访问云上 HDFS 集群的问题与解决

前言 这篇文章默认是已经在云上配置好了 Haoop 集群,因此本文主要是记录一些可能会出现错误的地方。 如果还不会配置 Hadoop 集群,那么可以参考本专栏的另一篇文章:云上配置 Hadoop 集群详解 另外在进行本文的学习之前也建议先看看该文章&…

创意设计新伙伴:StartAI PSAI插件,让设计工作更轻松!

在设计的世界里,灵感与效率是设计师的双翼。但有时候,面对复杂的设计任务和紧迫的截止日期,即使是最富有经验的设计师也会感到力不从心。StartAI,一款革命性的PS AI设计插件。 StartAI:设计工作的加速器 StartAI是一款…

超分辨重建——SRGAN网络训练自己数据集与推理测试(详细图文教程)

💪 专业从事且热爱图像处理,图像处理专栏更新如下👇: 📝《图像去噪》 📝《超分辨率重建》 📝《语义分割》 📝《风格迁移》 📝《目标检测》 📝《暗光增强》 &a…

Linux——简单指令汇总

Linux,一般指GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯本纳第克特托瓦兹(Linus Benedict Torvalds)于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个…

笔记-python操作kafka实践

1、先看最简单的场景,生产者生产消息,消费者接收消息,下面是生产者的简单代码。 #!/usr/bin/env python # -*- coding: utf-8 -*- import json from kafka import KafkaProducerproducer KafkaProducer(bootstrap_serversxxxx:x)msg_dict …

浅测 长亭雷池 WAF “动态防护”

本文首发于 Anyeの小站 前言 雷池 WAF 社区版的更新速度是真快啊,几乎一周一个小版本,俩月一个大版本,攻城狮们真的狠啊,没法测了。 废话不多说,前两天看到了 这篇文章,对雷池的“动态防护”功能挺感兴趣…

二人订单共享模式:新零售电商盈利新秘诀

电商江湖日新月异,竞争如火如荼,如何脱颖而出,赢得消费者?二人订单共享模式,这是一种全新的商业模式,旨在打造爆款产品,迅速吸引大量客源,并激发消费者重复购买欲望。 首先&#xf…

期权懂带你懂50etf认沽期权和认购期权有什么区别?

今天带你了解期权懂带你懂50etf认沽期权和认购期权有什么区别?在金融市场中,期权是一种允许持有者在未来某个时间以特定价格买入或卖出基础资产的金融衍生品。 50etf认沽期权和认购期权有什么区别? 50ETF认沽期权和认购期权的主要区别在于它…

从报名到领证:软考高级【网络规划设计师】报名考试全攻略

本文共计10551字,预计阅读35分钟。包括七个篇章:报名、准考证打印、备考、考试、成绩查询、证书领取及常见问题。 不想看全文的可以点击目录,找到自己想看的篇章进行阅读。 一、报名篇 报名条件要求: 1.凡遵守中华人民共和国宪…

淘宝电商接口获取商品数据,该怎么获取?

淘宝电商接口(也称为淘宝开放平台API)允许开发者通过编程方式获取淘宝平台上的商品数据、订单数据等。然而,直接获取淘宝的商品数据并不是一件简单的事情,因为淘宝对API的使用有一定的限制和要求,包括权限申请、接口调…

项目-双人五子棋对战: websocket的讲解与使用 (1)

项目介绍 接下来, 我们将制作一个关于双人五子棋的项目, 话不多说先来理清一下需求. 1.用户模块 用户的注册和登录 管理用户的天梯分数, 比赛场数, 获胜场数等信息. 2.匹配模块 依据用户的天梯积分, 实现匹配机制. 3.对战模块 把两个匹配到的玩家放到同一个游戏房间中, 双方通…

线程进阶-2 ThreadLocal

一.简单说一下ThreadLocal 1.ThreadLocal是一个线程变量,用于在并发条件下,为不同线程提供相互隔离的变量存储空间。在多线程并发的场景下,每个线程往ThreadLocal中存的变量都是相互独立的。 2.基本方法 (1)set(Obj…

wms中对屏幕进行修改wm size设置屏幕宽高原理剖析

背景: 上面是正常屏幕1440x2960的屏幕大小,如果对display进行相关的修改,可以使用如下命令: adb shell wm size 1080x1920 得出如下的画面 明显看到差异就是屏幕上下有黑边了,那么下面就来调研这个wm size是怎么做的…

软件系统测试的定义和测试内容介绍

一、什么是软件系统测试? 软件系统测试是指对软件系统的功能、性能、可靠性、稳定性等方面进行全面检查和验证的过程。其目的是发现潜在的问题、缺陷和风险,并确保软件系统的质量和稳定性。 软件系统测试可以分为多个阶段,包括单元测试、集成测试、系…

《深入浅出C语言:从基础到指针的全面指南》

1. 简介 C语言是一种通用的编程语言,广泛应用于系统编程、嵌入式系统和高性能应用程序。它由Dennis Ritchie在1972年开发,并且至今仍然非常流行。C语言以其高效、灵活和强大的功能著称,是许多现代编程语言的基础。 2. 基本语法 2.1 Hello, …

44-4 waf绕过 - CDN简介

一、CDN简介 CDN,即内容分发网络(Content Delivery Network),是建立在现有网络基础之上的智能虚拟网络。它依靠部署在各地的边缘服务器,并通过中心平台的负载均衡、内容分发和调度等功能模块,使用户可以就近获取所需内容,从而降低网络拥塞,提高用户访问响应速度和命中率…

servlet小项目与servlet续集

文章目录 servlet小项目与servlet续集,是结合上一次的案例进行升级,给项目新增了,增加员工,删除员工,查询具体员工 功能新增操作修改操作删除操作过滤器Cookie servlet小项目与servlet续集,是结合上一次的案例进行升级,给项目新增了,增加员工,删除员工,查询具体员工 功能 上一…