如何在你的电脑上运行Stable Diffusion以生成AI图像

文章目录

  • 安装Git
  • 安装Miniconda3
  • 下载Stable Diffusion的GitHub仓库和最新的Checkpoint
  • 如何用Stable Diffusion制作图像
  • 命令中的论据是什么意思?

如何在你的电脑上运行Stable Diffusion以生成AI图像

要在你的PC上本地运行Stable Diffusion,请从GitHub下载Stable Diffusion和HuggingFace.co的最新检查点,并安装它们。然后使用Miniconda在一个特殊的python环境中运行稳定扩散。

人工智能(AI)艺术目前风靡一时,但大多数AI图像生成器都在云端运行。Stable Diffusion则不同–你可以在你自己的PC上运行它,并生成你想要的许多图像。以下是你如何在Windows上安装和使用Stable Diffusion的方法。

什么是Stable Diffusion?

Stable Diffusion是一个开源的机器学习模型,它可以从文本生成图像,根据文本修改图像,或在低分辨率或低细节的图像上填充细节。它已经在数十亿张图片上进行了训练,可以产生与你从DALL-E 2和MidJourney中得到的结果相当的效果。它由Stability AI开发,于2022年8月22日首次公开发布

Stable Diffusion不像一些AI图像生成器那样有一个整洁的用户界面(还没有),但它有一个极其宽松的许可证,而且–最重要的是–它在你自己的PC(或Mac)上完全免费使用。

试试我们的指南,在你的PC上用图形界面运行Stable Diffusion

不要被Stable Diffusion目前以命令行界面(CLI)运行的事实所吓倒。启动和运行它是非常简单的。如果你能双击一个可执行文件并在一个盒子里输入,你可以在几分钟内让它运行。

在你的电脑上运行Stable Diffusion你需要什么?

Stable Diffusion不会在你的手机或大多数笔记本电脑上运行,但它可以在2022年的普通游戏电脑上运行。以下是相关要求:

  • 一个拥有至少6GB的VRAM的GPU(这包括大多数现代NVIDIA GPU)
  • 硬盘或固态硬盘上有10GB(左右)的存储空间
  • Miniconda3安装程序
  • 来自GitHub的Stable Diffusion文件
  • 最新的检查点(截至本文撰写时为1.4版,但1.5版应很快发布)
  • Git安装程序
  • Windows 8, 10, 或 11(Stable Diffusion也可以在Linux和macOS上运行)

如果你没有硬件,可以考虑使用一个基于网络的AI图像生成器。你甚至可以在网上运行Stable Diffusion的演示

如何在Windows上安装和运行Stable Diffusion

你需要两件软件:Git和Miniconda3。

注意:Git和Miniconda3都是由知名机构制作的安全程序。只要你从本文链接的官方来源下载,就不需要担心它们会有恶意软件。

安装Git

Git是一种工具,允许开发者管理他们正在开发的软件的不同版本。他们可以在一个中央存储库中同时维护他们正在开发的软件的多个版本,并允许其他开发人员为该项目做出贡献。

如果你不是一个开发者,Git提供了一个访问和下载这些项目的便捷方式,这就是我们在这个案例中要使用的方式。从Git网站下载Windows x64安装程序,然后运行它来安装Git。

在安装程序运行时,会有几个选项提示你选择–让它们保持默认设置。有一个选项页,”Adjusting Your PATH Environment”,特别重要。它必须被设置为 “Git From the Command Line And Also From 3rd-Party Software”。

安装Git

安装Miniconda3

Stable Diffusion使用了一些不同的Python库。如果你对Python了解不多,不用太担心这个问题–只要说,这些库只是你的计算机可以用来执行特定功能的软件包,比如转换图像,或者做复杂的数学运算。

Miniconda3基本上是一个便利工具。它可以让你下载、安装和管理稳定扩散所需的所有库,而不需要非常多的人工干预。它也是我们实际使用Stable Diffusion的方式。

前往Miniconda3的下载页面,点击 “Miniconda3 Windows 64-bit” 来获取最新的安装程序。

下载Miniconda3

下载完毕后,双击可执行文件,开始安装。Miniconda3的安装比Git的安装涉及更少的点击页面,但你需要注意这个选项:

Miniconda3的安装

在点击下一步和完成安装之前,请确保你选择了 “All Users”。

在安装完Git和Miniconda3后,你会被提示重启电脑。我们发现这不是必须的,但如果你这样做也无妨。

下载Stable Diffusion的GitHub仓库和最新的Checkpoint

现在我们已经安装了前提软件,我们准备下载和安装Stable Diffusion。

首先下载最新的checkpoint–1.4版本接近5GB,所以可能需要一些时间。你需要创建一个账户来下载检查点,但他们只要求提供姓名和电子邮件地址。其他都是可选的。

下载最新的checkpoint

点击 “sd-v1-4.ckpt” 开始下载。

注意:另一个文件 “sd-v1-4-full-ema.ckpt” 可能会提供更好的结果,但它的大小大约是两倍。你可以使用其中一个。

文件 "sd-v1-4-full-ema.ckpt"

然后你需要从GitHub下载Stable Diffusion。点击绿色的 “Code” 按钮,然后点击 “Download ZIP”。或者,你也可以使用这个直接下载链接

下载Stable Diffusion

现在我们需要准备几个文件夹,在那里我们将解压Stable Diffusion的所有文件。点击 “开始” 按钮,在 “开始 “菜单搜索栏中输入 “miniconda3″,然后点击 “Open” 或点击回车。

开始菜单打开miniconda3

我们将使用命令行创建一个名为 “stable-diffusion “的文件夹。复制并粘贴下面的代码块到Miniconda3窗口,然后按回车键。

cd C:/
mkdir stable-diffusion
cd stable-diffusion

注意:几乎任何时候你把一个代码块粘贴到终端,比如Miniconda3,你都需要在最后按回车键来运行最后的命令。

如果一切顺利,你会看到像这样的东西:

保持Miniconda3窗口打开

保持Miniconda3窗口打开,我们马上就会再次需要它。

用你喜欢的文件归档程序打开从GitHub下载的ZIP文件 “stable-diffusion-main.zip”。如果没有的话,Windows也可以自己打开ZIP文件。在一个窗口中保持打开ZIP文件,然后打开另一个文件资源管理器窗口,导航到我们刚刚制作的 “C:\stable-diffusion “文件夹。

将ZIP文件中的文件夹 “stable-diffusion-main” 拖放到 “stable-diffusion” 文件夹中。

"stable-diffusion-main" 拖放到 "stable-diffusion" 文件夹

回到Miniconda3,然后在窗口中复制并粘贴以下命令:

cd C:\stable-diffusion\stable-diffusion-main
conda env create -f environment.yaml
conda activate ldm
mkdir models\ldm\stable-diffusion-v1

conda prompt

不要打断这个过程。有些文件大于一千兆字节,所以它可能需要一点时间来下载。如果你不小心中断了这个过程,你将需要删除环境文件夹,并再次运行 conda env create -f environment.yaml 。如果发生这种情况,导航到 “C:\Users\(Your User Account)\.conda\envs” 并删除 “ldm” 文件夹,然后运行前面的命令。

注意:那么,我们刚才做了什么?Python可以让你把编码项目分为 “Environments”。每个环境与其他环境是分开的,所以你可以把不同的 Python 库加载到不同的环境中,而不必担心版本冲突的问题。如果你在一台电脑上进行多个项目的工作,它是非常宝贵的。

我们运行的程序行创建了一个名为 “ldm” 的新环境,下载并安装了Stable Diffusion所需的所有Python库,激活了ldm环境,然后将目录改为一个新文件夹。

我们正在进行安装的最后一步。在文件资源管理器中导航到 “C:\stable-diffusion\stable-diffusion-main\models\ldm\stable-diffusion-v1″,然后复制并粘贴检查点文件(sd-v1-4.ckpt)到该文件夹。

复制和粘贴

等待文件传输完毕,右击 “sd-v1-4.ckpt”,然后点击 “Rename”。在突出显示的框中输入 “model.ckpt”,然后点击回车键来改变文件名。

注意:如果你运行的是Windows 11,你不会在右键菜单中看到 “重命名”。有一个图标,看起来像一个微型的文本字段,而不是。

model名称

就这样了–我们完成了。我们现在已经准备好实际使用Stable Diffusion了。

如何使用Stable Diffusion

我们创建的ldm环境是必不可少的,你需要在任何时候激活它来使用Stable Diffusion。在Miniconda3窗口中输入 conda activate ldm ,然后点击 “Enter”。左边的(ldm)表示ldm环境已经激活。

注意:你只需要在打开Miniconda3时输入该命令。只要你不关闭窗口,ldm环境将保持激活状态。

激活ldm

然后我们需要把目录(也就是 cd 命令)改为 “C:\stable-diffusion\stable-diffusion-main”,然后我们才能生成任何图像。粘贴cd C:\stable-diffusion\stable-diffusion-main到命令行。

如何用Stable Diffusion制作图像

我们将调用一个脚本,txt2img.py,它允许我们将文本提示转换成512×512的图像。这里有一个例子。试试这个,以确保一切工作正常:

python scripts/txt2img.py --prompt "a close-up portrait of a cat by pablo picasso, vivid, abstract art, colorful, vibrant" --plms --n_iter 5 --n_samples 1

你的控制台会在产生图片时给你一个进度指示。

产生结果的控制台

该命令将产生五张猫图片,都位于 “C:\stable-diffusion\stable-diffusion-main\outputs\txt2img-samples\samples”。

gato

它并不完美,但它明显类似于巴勃罗-毕加索的风格,就像我们在提示中指定的那样。你的图像应该看起来相似,但不一定相同。

任何时候你想改变生成的图像,你只需要改变 --prompt后面的双引号中包含的文字。

提示:不要每次都重写整行文字。使用方向键移动文本光标,只需替换提示符即可。

python scripts/txt2img.py --prompt "YOUR, DESCRIPTIONS, GO, HERE" --plms --n_iter 5 --n_samples 1

假设我们想生成一个在魔法森林中戴着魔法师帽子的、看起来很真实的地鼠。我们可以试试这个命令:

python scripts/txt2img.py --prompt "a photograph of a gopher wearing a wizard hat in a forest, vivid, photorealistic, magical, fantasy, 8K UHD, photography" --plms --n_iter 5 --n_samples 1

鼠类

这真的很简单–只要尽可能具体地描述你想要的东西。如果你想要逼真的东西,确保包括与逼真图像有关的术语。如果你想得到某个特定艺术家的风格的启发,请指明该艺术家。

Stable Diffusion也不限于肖像和动物,它也可以产生引人注目的风景。

产生引人注目的风景

命令中的论据是什么意思?

Stable Diffusion有大量的设置和参数,你可以提供这些参数来定制你的结果。这里包括的几个参数基本上是确保Stable Diffusion能够在普通游戏电脑上运行所必需的。

  • –plms — 指定图像的采样方式。如果你想查看数学,有一篇关于它的论文
  • –n_iter — 指定你想为每个提示生成的迭代次数。5是一个不错的数字,可以看到你得到什么样的结果。
  • –n_samples — 指定将被生成的样本数量。默认是3,但大多数计算机没有足够的VRAM来支持。除非你有特别的原因要改变它,否则请坚持使用1。

当然,Stable Diffusion有很多不同的参数,你可以实现这些参数来调整你的结果。运行 python scripts/txt2img.py --help 可以得到一个详尽的参数列表,你可以使用这些参数。

要得到好的结果,需要大量的试验和错误,但这至少是乐趣的一半。确保你写下或保存参数和描述,以返回你喜欢的结果。如果你不想自己做所有的实验,在Reddit(和其他地方)有越来越多的社区致力于交流图片和产生它们的提示。

微海报