AI 文生图快速入门教程:让 Stable Diffusion 更易于上手

Stable Diffusion 是一个强大的 AI 图像生成工具,但它可能会消耗大量资源。在本指南中,我们将学习如何使用 AUTOMATIC1111 的 Stable Diffusion WebUI 来设置它。同时,我们将在 DigitalOcean GPU Droplet 云服务器上运行它,通过 H100 GPU 来提供最好的计算性能。而且通过 DIgitalOcean 的 GPU 云服务器可以让这个开发过程变得足够简单,即使你不是技术专家,也不用担心——只需跟随操作即可轻松实现!

准备工作

  • 注册一个 DigitalOcean 云服务的账户。
  • 在 DigitalOcean 后台开启一台 GPU Droplet 服务器。GPU Droplet 目前处于早期申请制阶段,但你可以卓普云官网申请。目前 GPU Droplet 可提供配置了 H100, A100, A6000, A4000 几种型号 GPU 的服务器。
  • 熟悉 Linux 命令行。
  • 安装 Git 和 Python 3.10。

为什么使用 GPU Droplet?

技术上讲,Stable Diffusion 可以在 CPU 上运行,但速度较慢。而在 GPU 上运行可以显著提高性能——DigitalOcean 的 GPU Droplet 采用的是 NVIDIA H100,你可以按需申请实例——今天我们会启动一个 GPU Droplet 来实现本教程。

步骤 1:设置 GPU Droplet

1、创建一个 GPU Droplet

登录到你的 DigitalOcean 账户,创建一个新的 Droplet,并选择一个包含 GPU Plan(可以理解为套餐配置)。一个基本 GPU 计划(Basic GPU Plan)应该足以进行图像生成。

2、添加一个新用户(推荐)

出于安全原因,最好不要对所有事情都使用 root 用户:创建一个新用户会更好:

adduser do-shark
usermod -aG sudo do-shark
su do-shark
cd ~/

步骤 2:安装依赖项

登录进去后,更新 Droplet 并安装必要的工具:

sudo apt update
sudo apt install -y wget git python3 python3-venv

步骤 3:克隆 Stable Diffusion 仓库

从 GitHub 克隆此仓库:

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui

步骤 4:配置并运行 Stable Diffusion

设置一个 Python 虚拟环境

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
### Rebuild xFormers with CUDA SupportTo take advantage of GPU acceleration, you’ll need to rebuild xFormers with CUDA support. This step ensures your environment is optimized for performance:### Modifying `webui-user.sh` to Enable Public Access via Gradio and APITo ensure that you can get a publicly accessible link via Gradio, enable the GPU acceleration by formers, and enable the backend API, follow these steps to modify the `webui-user.sh` file.- Open the `webui-user.sh` file using a text editor:```bashnano webui-user.sh

在其他命令之前添加以下行:

export COMMANDLINE_ARGS="--share --api --xformers"

保存并关闭文件。在 nano 中,可以通过按 CTRL + X,然后输入 Y 确认,最后按 Enter 来完成。

pip uninstall xformers
pip install xformers --extra-index-url https://download.pytorch.org/whl/nightly/cu118

可选步骤:从 Direct Link 安装模型

如果你有模型下载链接,你可以使用 wget 命令轻松安装。以下是如何下载并安装 SDXL 模型的方法:

wget -O models/Stable-diffusion/stable-diffusion-xl.safetensors "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors"
This command downloads the SDXL model and saves it in the `models/Stable-diffusion/ directory` with the filename `stable-diffusion-xl.safetensors`. Once the download is complete, the model will be ready for use in your Stable Diffusion setup.Open your browser and go to `http://your_droplet_ip:7860` to access the interface.![sd-portal](https://doimages.nyc3.cdn.digitaloceanspaces.com/006Community/Stable-Diffusion-GPU-Droplet/sd-portal.png)### Optional: Monitor GPU Utilization with `gpustat`If you want to monitor your GPU utilization while running Stable Diffusion, you can use a tool called `gpustat`. This tool gives you real-time information about your GPU usage, including memory, temperature, and current load.To install and use `gpustat`, follow these steps:Install `gpustat` using `pip`:```bashpip install gpustat

安装后,你可以通过运行以下命令来监控你的 GPU 利用率:

gpustat --color -i 1

运行 WebUI

现在,是时候启动 Stable Diffusion WebUI 了。运行以下命令以启动界面,启用 Gradio 分享、xFormers 用于 GPU 加速以及 API 访问:

./webui.sh --share --xformers --api --enable-insecure-extension-access

WebUI 运行后,打开你的浏览器并访问 https://[HASHING].gradio.live 来使用界面。请注意,此链接将在 72 小时后过期。

使用 CivitAI 浏览器扩展安装模型

运行 web-ui.sh 脚本后,你可以按照以下步骤通过 CivitAI 浏览器扩展安装模型:

1、导航到 WebUI 中的“Extensions”标签页。

2、转到“Available”子标签页。

3、点击标有“Load from”的橙色按钮,从仓库中加载可用的扩展。

4、在搜索栏中输入“CivitAI Browser+”并点击安装按钮。

5、安装完成后,转到“Installed”子标签页。

6、点击“Apply and restart UI”以激活扩展。

7、点击重启按钮后,由于重新启动,你的控制台可能会在“Reloading”处停止。从终端点击新的 https://[HASHING].gradio.live 链接。

WebUI 重新启动后,你将看到一个名为“CivitAI Browser+”的新标签页。这个扩展让你能够轻松地从 CivitAI 搜索和安装模型。

针对本教程,让我们在 CivitAI Browser+ 标签页中搜索“Western Animation”并安装它。选择带有超人缩略图的那个。我们将在速成课程的下一部分使用这个模型,通过文本到图像(txt2img)生成图像。

Stable Diffusion 提示应该如何写?

Stable Diffusion 是一个强大的 AI 图像生成工具,它使用正面提示和负面提示来指导 AI 创建特定图像。本教程将向你展示如何编写与海洋生物相关的提示,以及如何使用负面提示在 Stable Diffusion WebUI 中提高你的图像质量。

如何编写提示

提示是生成图像的核心部分。正面提示告诉 AI 你想要看到的内容,而负面提示有助于排除不需要的元素。以下是一些与海洋生物相关的示例,向你展示如何编写提示。

1、编写正面提示

编写提示时,使用英语描述你想要生成的内容。你可以使用简单的句子或逗号分隔的关键词来描述特征。以下是一些与海洋生物相关的示例:

生成一只在珊瑚礁上游泳的海龟:

a sea turtle swimming over a coral reef

或者简化成关键词:

sea turtle, swimming, coral reef, ocean

生成一群五颜六色的鱼:

colorful fish, swimming in the ocean, school of fish, tropical fish

2、使用负面提示

负面提示有助于排除不需要的元素,特别是在生成多张图像时。以下是一些常见的负面提示,以避免低质量或错误的结果:

lowres, bad anatomy, blurry, text, error, cropped, worst quality, jpeg artifacts, watermark, signature, low quality, worst quality

你还可以添加你不希望出现在海洋生物图像中的特定元素,比如人类角色或建筑物:

nsfw, weapon, blood, human, car, city, building

如何在 Stable Diffusion 中使用 txt2image

Stable Diffusion WebUI 的 txt2image 功能支持文生图。以下是如何使用它:

1、输入正面和负面提示:在左侧文本框中,输入与海洋生物相关的提示,例如:

colorful fish, coral reef, underwater, ocean, vibrant colors

对于负面提示,排除不需要的元素:

lowres, bad anatomy, text, blurry, weapon, human

2、选择采样方法:尝试使用“DPM++ 2M SDE Heun”,或“Euler a”作为采样方法。

3、设置图像尺寸和步骤:将宽度和高度设置为1024x512,采样步骤设置为30。你还可以选择“Hires. fix”默认值来改善图像的细节,这甚至可能对海洋生物有所帮助。

4、生成图像:点击右上角的“Generate”按钮开始生成图像。完成后,你可以根据需要保存或调整图像。

常见语法和扩展

Stable Diffusion WebUI 提供了不同的语法以提高图像生成的精确度。以下是一些有用的语法:

  • 注意力/强调:使用括号 ( ) 来强调提示中的某些元素。例如,要突出海豚的颜色:

dolphin, ((blue)), ocean, swimming

  • 提示切换:你可以在生成过程中使用这种语法切换提示:

shark : whale : 10] swimming in the ocean

示例提示

1、生成一只水下的章鱼:

octopus, underwater, ocean, coral reef, vibrant colors

负面提示:

lowres, blurry, bad anatomy, text, human

2、生成一只跃出水面的海豚:

dolphin, jumping out of the water, ocean, sunset, splash, realistic

负面提示:

lowres, bad anatomy, blurry, text, car, building

3、生成一只在深水中游泳的鲨鱼:

shark, swimming, deep ocean, dark blue water, scary, realistic

负面提示:

lowres, bad anatomy, blurry, text, human, building

小结

这只是你使用 DigitalOcean 的 GPU Droplets 与 Stable Diffusion 创造生成式 AI 艺术之旅的开始。在即将推出的系列内容中,我们将更深入地探讨如何运行 Docker 化的 Stable Diffusion API 与搭载了 GPU 的 DigitalOcean Kubernetes,并探索与其他 DigitalOcean 产品一起使用的实际用例。敬请期待更多精彩的教程!

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

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

相关文章

虚拟硬盘数据恢复(vmdk、vdi、vhd等虚拟磁盘文件)

我们用的虚拟机有时候用着用着就启动不起来了,可能是操作系统启动扇区出了问题或者硬盘数据损坏。如果还有重要的数据文件在虚拟机里面,不要慌,一般只是操作系统的问题,硬盘里面的文件一般是不会丢失损坏的,即使磁盘有…

UE学习篇ContentExample解读------Blueprint_Communication-下

文章目录 总览描述批次阅览2.1 Using an Event Dispatcher function to call an event in the level Blueprint2.2 Binding an Event Dispatcher function to a custom event2.3 Binding an Event Dispathcer to a custom event on spawn3.1 Basic communication using a Bluep…

jQuery——函数的使用

1、作为一般函数调用:$ ( param ) ① 参数为函数:当 DOM 加载完成后,执行此回调函数 ② 参数为选择器字符串:查找所有匹配的标签,并将它们封装成 jQuery 对象 ③ 参数为 DOM 对象:将 DOM 对象封装成 jQu…

828华为云征文|华为云Flexus云服务器X实例Windows系统部署一键短视频生成AI工具moneyprinter

在追求创新与效率并重的今天,我们公司迎难而上,决定自主搭建一款短视频生成AI工具——MoneyPrinter,旨在为市场带来前所未有的创意风暴。面对服务器选择的难题,我们经过深思熟虑与多方比较,最终将信任票投给了华为云Fl…

SW - 将装配体保存成零件给其他装配体用

文章目录 SW - 将装配体保存成零件给其他装配体用概述笔记将子装配图另存为零件给其他装配图用打开另存后的零件图END SW - 将装配体保存成零件给其他装配体用 概述 想做一个散料飞达物料的布局图,初步想法是整一个装配体,然后出工程图标注上散料飞达料…

频谱分析仪:射频领域的多面手

频谱分析仪,作为射频领域的中心工具,其重要性不言而喻。它主要分为实时分析式和扫频式两大类,各自以其独特的方式在信号处理领域发挥着关键作用。实时分析式频谱仪能够即时捕获并分析非重复性、持续时间极短的信号,为科研人员提供…

Mybatis自定义TypeHandler,直接存储枚举类对象

在这篇文章中,我们已经知道如何使用枚举类直接接受前端的数字类型参数,省去了麻烦的转换。如果数据库需要保存枚举类的code,一般做法也是代码中手动转换,那么能不能通过某种机制,省去转换,达到代码中直接保…

C#知识|认识简单工厂的设计模式

哈喽,你好啊,我是雷工! 最近了解到一个概念信创,即信息技术应用创新产业,是国产化的一个阶段,为了实现信息技术自主可控,规避被外部卡脖子的风险; 随着信创产业的发展,逐…

[附源码]宠物领养管理系统+SpringBoot

今天带来一款优秀的项目:宠物领养管理系统源码 。 系统采用的流行的前后端分离结构,内含功能包括"管理端",“用户领养端”,“宠物管理”,“权限登录”等功能。 如果您有任何问题,也请联系小编&a…

高密原型验证系统解决方案(上篇)

0 引言 随着当今 SoC 设计规模的快速膨胀,仅仅靠几 颗当代最先进的 FPGA 已经无法满足原型验证的需求。简单的增加系统的容量,会遇到系统时钟复位同 步,设计分割以及高速接口和先进 Memory控制器 IP 验证等多重困难。此时,一个商用…

解决docker目录内存不足扩容处理

当我们使用docker时,经常会创建新镜像和新容器,在新容器中又会安装各种包,这些东西不是虚拟的,而是实实在在存于我们的磁盘中,默认在/var/lib/docker中,这个目录是属于系统盘的,而系统盘的空间往…

Spring Boot房屋租赁平台:现代化解决方案

1 绪论 1.1 研究背景 中国的科技的不断进步,计算机发展也慢慢的越来越成熟,人们对计算机也是越来越更加的依赖,科研、教育慢慢用于计算机进行管理。从第一台计算机的产生,到现在计算机已经发展到我们无法想象。给我们的生活改变很…

OpenHarmony标准系统mipi摄像头适配

OpenHarmony标准系统mipi摄像头适配 本文档以rk3568为例,讲述如何在OpenHarmony 标准系统rk设备上适配mipi摄像头。 开发环境 OpenHarmony标准系统4.1rrk3568设备摄像头ov5648,ov8858 文档约定:4.1r_3568为OpenHarmony标准系统源码根目录 1.适配准备:得…

DAMODEL丹摩智算平台实践CogVideoX

文章目录 前言 一、平台账号注册并登录 二、部署CogVideoX (一)简介 (二)部署 1. 创建实例 2. 配置环境和依赖 3.预制模型与配置文件 三、开始运行 总结 前言 该文章主要记录DAMODEL丹摩智算平台实践过程与心得体会&…

virtualbox中的网络模式,网络设置,固定IP

virtualbox关于网络设置的文档:https://www.virtualbox.org/manual/topics/networkingdetails.html#networkingdetails DHCP Dynamic Host Configuration Protocol:动态主机配置协议,是专门用来给网络中的节点分发IP地址,确保每…

如何开发数字药店与医保购药APP:技术架构与实现细节

本文将深入探讨数字药店与医保购药APP的技术架构及其实现细节,帮助开发者更好地理解该领域的技术需求。 一、技术架构概述 数字药店与医保购药APP的技术架构通常可以分为以下几个层次: 1.前端层: -用户界面 -用户体验 2.中间层&#xff…

尚品汇-自动化部署-Jenkins的安装与环境配置(五十六)

目录: 自动化持续集成 (1)环境准备 (2)初始化 Jenkins 插件和管理员用户 (3)工作流程 (4)配置 Jenkins 构建工具 自动化持续集成 互联网软件的开发和发布&#xf…

善康医药上市梦终止:持续亏损1.77亿现金流为负,预估值超50亿存疑

《港湾商业观察》施子夫 6月29日,深圳善康医药科技股份有限公司(以下简称,善康医药)披露第一轮审核问询函的回复意见。 9月24日,因善康医药及其保荐人国金证券股份有限公司撤回发行上市申请,上交所终止科…

微信小程序开发第八课

一 公告 1.1 微信小程序端 #js###const api require("../../config/settings.js") Page({data: {noticeList: [{title: 公告标题1,create_time: 2024-04-25,content: 公告内容描述1,公告内容描述1,公告内容描述1。, // 可以根据实际情况添加…

Spring 核心

Spring 核心 这篇文章,我们换个思路来学习,来践行一下以始为终,以面试题为引来重温一下Spring,毕竟孔子曾说,“温故而知新,可以为师矣。” ,可以通过这个链接看看有哪些常见的面试题 Spring 面…