在Google Colab中搭建免费使用的Stable Diffusion程序!
作为已开源的AI绘画程序,在撰写本文时,Stable Diffusion应该是最好的 AI 文本到图像生成程序之一。
关于Stable Diffusion有一些值得注意的事情:
与其他图像生成软件相比,它可以非常快速地生成高质量、连贯且美丽的图像,而且消耗的资源要少得多。
它背后的团队非常开放和透明,他们更在乎赋予普通人使用最尖端技术的权利。
即使Stable Diffusion也有付费的会员,但他们已经将它提供开源给了公众,我们即可以通过huggingface.co免费使用在线版,还可以通过 Google Colab 使用 Hugging Face 中的 Stable Diffusion,这都是免费的,应该是我们想使用最全功能的主要方法。
其他非常相似的程序还包括Dall-E 2,midjourney和Disco Diffusion。
在本教程中,我们将开始使用 Google Colab 上的Stable Diffusion。我们不会深入探讨更多细节,我们只想生成我们的第一张图像。希望这会让您有信心开始使用 Google Colab 生成图像。
您无需了解任何有关编程的知识即可学习本教程,我们将简单地运行一些代码,观察结果并尝试了解发生了什么,当然如果你是一个熟练的开发者,以下内容对你来说就非常简单了。
简而言之, Google Colab是一个基于云的编码环境。用户不必担心设置任何基础设施,就可以在 Google 的服务器上执行代码。
Google Colab 乍一看可能有点吓人,但它真的很容易使用。您可以通过单击 Colab 中的每个代码块,然后点击左侧的“播放”按钮来运行它。我们并不一定要理解它的含义,使用过Disco Diffusion程序的朋友应该已经很熟悉操作过程了。
下面是本文的内容目录:
第 1 步:在 Hugging Face 上创建一个帐户
第 2 步:将 Stable Diffusion Colab Notebook 复制到您的 Google Drive
第 3 步:确保您使用的是 GPU
第 4 步:运行第一个单元格
第 5 步:连接到huggingface
第 6 步:请求访问 Hugging Face 的Stable Diffusion存储库
第 7 步:运行第五个单元以下载所需文件
第 8 步:生成我们的第一个图像
故障排除
HTTPError:403 客户端错误:url 被禁止
结论
第 1 步:在 Hugging Face 上创建一个帐户
我们将从 Hugging Face 下载 Stable Diffusion。为此,我们需要注册一个他们的帐户。简单来说,Hugging Face 是一个用于处理不同模型的存储库,类似于 Stable Diffusion,除了它具有许多有用的功能。模型基本上就像一个可以学习自己做事的计算机程序。
这个过程非常简单。只需访问 https://huggingface.co/join 并像往常一样创建一个帐户,然后检查您的电子邮件以确认它。
第 2 步:将 Stable Diffusion Colab Notebook 复制到您的 Google Drive
接下来,就像我们需要编辑的任何其他人编写的 Google Doc 一样,首先访问 Stable Diffusion Google Colab 并转到File > Save a copy in Drive。
这会打开一个新选项卡,并将笔记本保存到您的驱动器中。只是现在它被命名为带有Stable Diffusion的副本,你可以重命名任何你想要的名字。保存后会提示你在新窗口打开你自己的副本,将原来的Colab关闭即可,确保你是在自己的Stable Diffusion Google Colab中运行下面的操作。
第 3 步:确保您使用的是 GPU
要运行 Stable Diffusion,我们需要确保我们的 Google Colab 使用的是GPU。为此,在菜单中转到Runtime > Change runtime type。
硬件加速器下将出现一个带有下拉菜单的小窗口 ,我们会在那里看到并选择 GPU。
点击保存,我们可以继续。
第 4 步:运行第一个单元格
现在我们可以在 Stable Diffusion colab 中运行第一个单元格。只需将鼠标悬停在其中的每一个上, 就会出现一个播放按钮。只需单击它并等待它完成。当一个单元格完成时,它将显示一个 绿色复选标记。
您可以看到每个单元格的上方都有其功能的描述。
如果出现类似“此笔记本需要高内存”的信息,只需单击确定。
第 5 步:连接到Hugging Face
运行第四个单元格。你会看到这样的东西:
这意味着我们需要使用 Hugging Face 进行身份验证。在该字段中,我们需要输入一个 令牌,就像密码一样。为此,请单击显示您的拥抱面孔令牌页面的链接,该页面会将您带到https://huggingface.co/settings/tokens.
假设您在前面已经创建好了一个帐户,您应该能够登录或显示已经登录。
单击 新令牌,您应该会看到如下所示的窗口。给它起个名字(仅供参考,随意取名字),并将 角色 设置为write
. 单击 生成令牌。
现在应该创建您的令牌。
Hugging Face Token Created 只需点击 Show附近的图标即可复制你的令牌,我们将返回 Google Colab 进行粘贴。
将其粘贴到令牌字段中后,单击Login。几秒钟后,您会看到类似这样的内容。忽略红色文字,如果您看到它,那么一切看起来都很好。
第 6 步:请求访问 Hugging Face Stable Diffusion存储库
我们需要同意一些条款才能访问稳定扩散。例如,我们同意与 Stable Diffusion 的作者分享我们的电子邮件和用户名。
为此,请访问https://huggingface.co/CompVis/stable-diffusion-v1-4,向下滚动一点,单击复选标记以接受条款,然后单击访问存储库以获取访问权限。
现在我们应该可以走了。
第 7 步:运行第五个单元以下载所需文件
接下来,我们将在 Stable Diffusion Pipeline下运行第五个单元,它将下载一些必要的组件。
继续运行下一个单元格,上面写着pipe = pipe.to("cuda")
:
第 8 步:生成我们的第一个图像
如果你已经走到这步,说明你干得非常漂亮!现在我们可以生成我们的第一个图像了。
在下一个单元格中,您可能已经在其下看到了图像,这是我们生成第一张图像的地方。
只需在引号中写下您想要转换为图像的文本,然后运行单元格。
在下面的例子中,我写了a protoss cityscape with advanced technology, inspired by the game starcraft, making heavy use of light and shadow to create a sense of mystery and foreboding. the city sprawling below is a mix of organic and inorganic, with swirling energy currents and strange crystalline structures, illustrated in a realistic and detailed style by wei wang, artstation
.
你应该得到你的第一张图像了!该图像生成应该在一分钟内完成。
一次生成多个图像
如果您希望同时生成多张图像。继续往下,再滚动一点,您将看到以下单元格。
找到,from PIL import Image
然后在下面的一个单元中编辑文本rows,cols的数值,
并运行它,即可生成多行多列的多个图像。
一次生成多个图像
故障排除
HTTPError:403 客户端错误:url 被禁止
如果你得到以下错误:
当您尝试从 Hugging Face 下载模型但不同意条款时会发生此错误。要解决此问题,只需按照步骤 6进行操作,我们同意条款并请求访问存储库。
其他错误
鉴于本文涉及到多个程序、服务、操作,非常容易发生错误,所以建议按步骤仔细操作,如果最终成功生成了图像,记得保存一下你的代码。
结论
恭喜!希望本指南能够帮助您使用架设在 Google Colab 上的 Stable Diffusion 生成您的第一张图像。从这里您可以继续探索 Google Colab 笔记本中的其他参数和内容,本文的目的仅是让您启动并运行以克服最初的障碍。
如果你运行成功了,记得随意打赏一下让我知道!