英文原文:https://blog.runpod.io/how-to-get-stable-diffusion-set-up-with-comfyui-on-runpod/
Automatic1111 是Stable Diffusion的标志性前端,具有用户友好的设置,已让数百万人享受到人工智能艺术的乐趣。任何人都可以启动 A1111 pod 并开始生成图像,无需任何经验或培训。选项的布局都很直观,您只需单击“Generate”按钮即可开始。
但是,如果我告诉您还有另一个前端可以为您提供更大的灵活性,甚至可以让您创建自己的多步骤工作流程,该怎么办?如果您想通过简单的按钮单击来完成一代又一代的操作,该怎么办?
解决这个问题的方法是 ComfyUI,它既可以被视为一种编程方法,也可以被视为一种前端。尽管乍一看它看起来很吓人,但只需花一点时间了解其细节,您就可以像专业人士一样将节点连接在一起。
使用 RunPod ComfyUI 模板进行设置
我们已经设置了 ComfyUI 模板供您使用!您所需要做的就是在启动 Pod 时选择此模板。我建议选择一个具有 16GB 左右 RAM 的 Pod 来进行实验。一旦您习惯了并想要生成更大的图像,可能值得提高 Pod 的规格。
检查默认工作流程和并行提示
当您第一次启动 Pod 时,您会立即注意到一些不同的情况。您会注意到,它不是 A1111 的一成不变的性质,而是一系列通过意大利面条相互连接的节点:
您首先会注意到的是,尽管它看起来完全不同,但您也可以像 A1111 一样使用 ComfyUI。如果您只想添加一个提示,然后单击“队列提示”来获取图像,您完全可以做到这一点。
不同之处在于能够创建额外的节点和步骤来以 A1111 中非常手动的方式自动化流程。例如,如果您想生成图像并将其发送到 img2img,则需要手动复制并发送过来,单击下一个选项卡,然后重新生成,谁愿意做所有这些工作?
首先,请注意字符串如何连接节点。您有一个模型加载器和两个提示框 - 但请注意,一个字符串连接到 KSampler 节点的“positive”引线,另一个字符串连接到“negative”引线。该逻辑构成了 ComfyUI 操作的基础。要记住的一个关键点是,如果一条引线全部大写,那么它可以一次连接到多个其他节点,而小写引线仅接受一对一连接。因此,例如,您可以将文本提示发送到多个采样器,但不能让采样器接受多个正向和负向提示。
请注意,如果您选择的话,您可能可以在同一工作流程中运行多个图像生成项目。通过多个提示和连接到同一模型的多个采样器,您可以在同一过程中生成多个图像。或者,如果您对其中一个感到满意并希望继续处理另一个,您可以在工作流程结束时断开图像引线,以便它只生成另一个图像。您甚至可能有多个模型加载器同时处理不同的图像。
那么更复杂的设置呢?
好吧,SDXL 有一个refiner,我相信您现在正在问 - 我们如何实现它?尽管 SDXL 在没有refiner的情况下也能正常工作(如上所示),但您确实需要使用refiner模型来充分利用模型。
请遵守以下工作流程(您可以从 comfyanonymous 下载该工作流程,只需将图像拖到您的 Comfy UI 工作流程中即可实现。)
虽然这看起来比基本设置有点繁忙(部分是由于所有额外的注释),但您可以看到您可以一次加载多个模型,并将它们通过两个不同的采样器路由到 VAE 自动编码器,最后路由到保存的图像。这样你就可以得到“evening sunset scenery blue sky nature, glass bottle with a galaxy in it”的提示,并最终得到这样的图像:
因为 ComfyUI 工作区只是 .json 文件,所以它们可以轻松地编码在 PNG 图像中,类似于 TavernAI 卡,您只需将图像拖到工作区中,它就会自动为您构建工作区。如果您想亲自尝试一下,请务必访问上面的链接来亲自获取图像。 Comfyanonymous 还提供了 A1111 中其他几个功能的工作流程示例,例如 LoRA、img2img 等。