Stable-Diffusion-V1-5 与ComfyUI集成:可视化节点式工作流搭建详解

📅 发布时间:2026/7/7 0:02:55 👁️ 浏览次数:
Stable-Diffusion-V1-5 与ComfyUI集成:可视化节点式工作流搭建详解
Stable-Diffusion-V1-5 与ComfyUI集成可视化节点式工作流搭建详解如果你已经玩过Stable Diffusion的WebUI觉得它功能强大但操作逻辑有点“黑盒”或者想更精细地控制图像生成的每一步那么今天聊的这个组合可能会让你眼前一亮。简单来说就是把我们熟悉的Stable-Diffusion-V1-5模型接到一个叫ComfyUI的图形化界面里。这不再是简单的“文生图”按钮一点而是像搭积木一样用一个个节点Node把加载模型、编写提示词、采样解码、后期处理等步骤连接起来形成一个完全透明、可自定义的工作流。对于想深入研究图像生成原理或者需要构建稳定、可复用高级处理流程的朋友来说这种方式提供了前所未有的灵活性和控制力。接下来我就带你一步步看看怎么在星图GPU平台上部署好的环境里把这两者结合起来搭建属于你自己的可视化生成流水线。1. 为什么选择ComfyUI节点化工作流的魅力在开始动手之前我们先聊聊为什么值得花时间学习ComfyUI。它和常见的WebUI最大的不同在于其“节点式”的思维方式。你可以把整个图像生成过程想象成一条工厂生产线。WebUI像一个高度集成的自动化车间你输入原料提示词车间内部自己完成所有工序最后输出成品。虽然方便但你想调整某个具体环节比如想知道“潜空间解码”这一步具体发生了什么或者想在其中插入一个自定义的滤镜就比较困难。而ComfyUI则把这个车间完全“可视化”和“模块化”了。生产线上的每一个环节——加载模型、编码提示词、采样计算、解码图片——都变成了一个独立的、有输入输出接口的节点。你需要用“线”把这些节点按照逻辑顺序连接起来数据如图像的潜在表示、条件信息就在这些连线中流动。这样做有几个实实在在的好处完全透明可控你能清楚地看到数据从文本到最终图像的每一个变换步骤对理解Stable Diffusion的工作原理非常有帮助。极致灵活你可以随意替换、调整、重组节点。比如你可以轻松尝试不同的采样器Sampler、不同的VAE解码器或者在生成过程中插入一个专门的人脸修复节点甚至实现复杂的“图生图”循环。工作流可保存与分享搭建好一个复杂的流程比如一套完整的高清修复人脸优化流程后你可以把它保存为一个模板文件。下次使用或分享给朋友时直接加载这个文件所有节点和连接都会恢复原样极大地提升了效率和复现性。资源利用更高效对于高级用户通过精细的节点控制可以避免一些不必要的重复计算在某些场景下可能更节省显存和时间。理解了它的价值我们就可以开始动手搭建了。假设你已经在星图GPU平台上成功部署了Stable-Diffusion-V1-5的基础环境接下来的重点就是接入和配置ComfyUI。2. 环境准备与ComfyUI部署接入首先我们需要确保ComfyUI能够找到并使用你已经部署好的Stable-Diffusion-V1-5模型。这个过程不复杂主要是路径的配置。通常在星图平台的镜像环境中模型文件如sd-v1-5.ckpt或sd-v1-5.safetensors会存放在一个固定的目录比如/home/model/或类似路径。而ComfyUI有自己的模型目录结构。2.1 定位与放置模型文件ComfyUI的模型文件通常需要放在其models/目录下的对应子文件夹中。关键的有以下几个models/checkpoints/存放主模型文件.ckpt或.safetensors。models/vae/存放VAE模型。models/loras/存放LoRA模型。models/controlnet/存放ControlNet模型。你需要做的就是将平台上的sd-v1-5模型文件主模型复制或链接到ComfyUI的models/checkpoints/目录下。如果平台环境提供了VAE文件也一并放入models/vae/。操作提示你可以通过命令行操作例如使用cp命令进行复制或者使用ln -s创建软链接这样不占用额外磁盘空间。# 示例假设平台模型在 /home/models/stable-diffusion/ ComfyUI目录在 /home/comfyui/ cp /home/models/stable-diffusion/sd-v1-5.safetensors /home/comfyui/models/checkpoints/ # 或者使用软链接 ln -s /home/models/stable-diffusion/sd-v1-5.safetensors /home/comfyui/models/checkpoints/2.2 启动与访问ComfyUI完成模型放置后就可以启动ComfyUI服务了。进入ComfyUI的目录通常运行以下命令cd /home/comfyui python main.py服务启动后你会看到输出信息中包含访问地址通常是http://127.0.0.1:8188。由于我们在服务器环境你可能需要通过SSH隧道或平台提供的访问方式来在本地浏览器打开这个地址。打开浏览器看到那个布满网格的界面就说明ComfyUI已经就绪可以开始我们的节点搭建之旅了。3. 构建你的第一个基础文生图工作流现在我们从一个最简单的“文生图”流程开始。清空画布我们从右侧的节点菜单中把需要的“积木”拖出来。3.1 核心节点连接四步搭建基础流水线一个最基础的流程通常包含四个核心节点加载检查点 (Load Checkpoint)在节点菜单中找到Load Checkpoint节点并拖出。点击节点上的“ckpt_name”选择你刚刚放入的sd-v1-5模型。这个节点会输出三个东西模型本身MODEL、条件信息CLIP、以及VAE解码器VAE。编写提示词 (CLIP Text Encode)拖出两个CLIP Text Encode节点一个用于正向提示词希望画面里有什么一个用于负向提示词希望避免什么。将Load Checkpoint节点输出的CLIP端口分别连接到这两个CLIP Text Encode节点的CLIP输入端口。在节点的text输入框里填入你的描述比如正向提示词“masterpiece, best quality, a beautiful landscape”负向提示词“low quality, blurry”。采样器 (KSampler)拖出KSampler节点。这是生成过程的核心。连接线将Load Checkpoint的MODEL输出连接到KSampler的model输入。将两个CLIP Text Encode节点的CONDITIONING输出分别连接到KSampler的positive和negative输入。配置参数这里需要设置一些关键参数。seed: 随机种子保持固定可以复现相同图片。steps: 采样步数一般20-30步。cfg: 提示词相关性值越高越遵循提示词通常7-9。sampler_name: 采样器名称如eulerdpmpp_2m等。scheduler: 调度器如normal。denoise: 降噪强度文生图时通常设为1.0。解码图像 (VAE Decode)拖出VAE Decode节点。连接线将KSampler的LATENT输出这是生成的潜空间图像连接到VAE Decode的samples输入。将Load Checkpoint的VAE输出连接到VAE Decode的vae输入。这个节点的IMAGE输出就是最终的图片了。保存/预览图像 (Save Image / Preview Image)拖出Save Image节点将其images输入连接到VAE Decode的IMAGE输出。点击Queue Prompt按钮生成的图片就会保存到ComfyUI的输出目录。你也可以拖出一个Preview Image节点并连接用于在界面上快速预览。至此你的第一个节点工作流就搭建完成了。点击右下角的Queue Prompt看着数据沿着你搭建的线路流动最终生成图片这种感觉和直接点按钮完全不同充满了掌控感。4. 进阶工作流示例集成高清修复与面部细化基础流程跑通后我们可以尝试更实用的复杂流程。比如一个常见的需求先快速生成一张小图看看构图满意后再进行高清放大和面部细节修复。这在ComfyUI里可以优雅地串联起来。4.1 构建两阶段生成流程这个流程的核心思想是分两步走第一阶段用较低的分辨率如512x512快速生成图像获取构图和创意。第二阶段将第一阶段的结果输入到一个“高清修复”流程中进行放大和细节重塑。节点搭建思路前半部分低分辨率生成就和上面第3章的基础流程一模一样使用KSampler生成一张小图。但这次我们不直接连接VAE Decode而是将KSampler输出的LATENT先保存下来可以通过一个Latent Upscale节点过渡或直接引出。插入高清修复使用Latent Upscale节点或Upscale Model等节点将低分辨率的潜空间图像放大。你可以选择不同的放大算法如nearest-exact,bilinear,lanczos。将放大后的潜空间图像输入到第二个KSampler节点。这个采样器将负责“重绘”放大后模糊的细节。关键设置第二个KSampler的denoise降噪强度需要设置为一个小于1.0的值例如0.2-0.5。这表示在原有图像的基础上进行轻度重绘以添加细节而不是完全重新生成。值太高会导致画面改变太大。集成面部修复在第二个KSampler之后连接VAE Decode得到高清图。接下来可以接入专门的面部修复节点。ComfyUI社区有很多相关节点例如FaceDetailer或通过Impact Pack提供的节点。这些节点通常能自动检测图片中的人脸裁剪出来用更高强度或专用模型进行重绘然后再贴回原图。你需要加载一个面部修复模型如GFPGAN或CodeFormer的ComfyUI版本并将其连接到面部修复节点的相应输入。4.2 工作流的可视化优势当你把这个流程搭建出来它的优势一目了然。整个“小图草稿 - 高清放大 - 面部精修”的流水线清晰可见。你可以随时调整任何一个环节的参数觉得高清修复后细节不对调低第二个采样器的denoise值。面部修复效果太强导致不像本人调整面部修复节点的强度参数。想换一种放大算法直接替换Latent Upscale节点。所有调整都是即时的、可视的。你可以把这个完整的工作流保存为一个.json或.png文件ComfyUI支持将工作流保存为图片。下次需要时直接拖入这个图片或加载json文件所有节点和参数都会完美还原效率极高。5. 探索更多可能ControlNet与LoRA的节点集成ComfyUI的强大之处还在于它能无缝集成各种扩展。比如你想用ControlNet控制人物姿势或者加载LoRA模型实现特定画风。5.1 集成ControlNet准备节点你需要有ControlNet模型文件放在models/controlnet/目录下以及一个预处理节点如Canny Edge Preprocessor用于提取线稿。构建流程首先用一个Load Image节点加载你的姿势参考图。连接预处理节点从参考图中提取控制信息如边缘线稿。拖出Apply ControlNet节点。将主流程中KSampler之前的positive条件输入也连接到这个节点的positive输入。将预处理得到的控制信息连接到Apply ControlNet的control_net输入。最后加载你的ControlNet模型到这个节点。Apply ControlNet节点会输出一个新的、融合了控制信息的CONDITIONING将它连接到KSampler的positive输入替换原来的那个。5.2 集成LoRA集成LoRA更简单。在Load Checkpoint节点之后你可以插入一个Lora Loader节点。将Load Checkpoint输出的MODEL和CLIP连接到Lora Loader的对应输入。在Lora Loader节点中选择你的LoRA模型文件放在models/loras/目录并设置强度strength。Lora Loader输出的MODEL和CLIP再传递给后续的CLIP Text Encode和KSampler节点。通过这种模块化的方式你可以像搭乐高一样自由组合基础模型、多个ControlNet、多个LoRA创造出极其复杂和特定的图像生成流程。从基础的文生图到集成高清修复、面部细化再到引入ControlNet和LoRA进行精准控制我们一步步探索了如何用ComfyUI节点搭建Stable-Diffusion工作流。刚开始接触一堆节点和连线可能会觉得有点复杂但一旦熟悉了这种数据流思维方式你就会发现它带来的自由度和掌控感是无可替代的。它让你从“使用者”变成了“流程设计师”能够真正理解和操纵AI图像生成的每一个环节。最重要的是别忘了保存那些你精心搭建的工作流。它们是你宝贵的数字资产能让你和你的团队在未来重复实现复杂效果时节省大量重新配置的时间。多尝试多组合节点的玩法远不止文中提到的这些社区里还有大量功能强大的自定义节点等待你去发掘。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。