ComfyUI-DrawThingsWrapper 插件完全保姆级教程
1. 插件简介
插件地址: https://github.com/JosephThomasParker/ComfyUI-DrawThingsWrapper
ComfyUI-DrawThingsWrapper 是一个让 ComfyUI 和 Draw Things 应用程序合作的桥梁插件。简单来说,就像是给 ComfyUI 装了一个"传话筒",让它可以把工作交给 Draw Things 来完成。
为什么要用这个插件?
- Draw Things 在苹果设备上跑得特别快,比 ComfyUI 快大约3倍
- 你可以享受 ComfyUI 的强大功能(比如排队处理、换脸等),同时用上 Draw Things 的高速度
- 就像是让一个很会安排工作的管家(ComfyUI)和一个手脚很快的工人(Draw Things)配合干活
能给我们带来什么效果?
- 图片生成速度大幅提升(特别是在苹果设备上)
- 保持 ComfyUI 的灵活性和强大功能
- 可以在 ComfyUI 中排队处理多个任务,让 Draw Things 按顺序完成
2. 如何安装
第一步:安装 Draw Things 应用
- 在 App Store 下载安装 Draw Things 应用
- 打开 Draw Things,点击左侧的"Advanced"(高级)选项卡
- 开启"API Server"(就像是开启一个接电话的服务)
- 设置参数:
- Protocol(协议):选择 HTTP
- Port(端口):设置为 7860
- IP:选择 localhost only(只允许本地连接)
第二步:安装 ComfyUI 插件
- 打开终端或命令提示符
- 进入 ComfyUI 的自定义节点文件夹:
cd path/to/ComfyUI/custom_nodes/ - 下载插件:
git clone https://github.com/JosephThomasParker/ComfyUI-DrawThingsWrapper.git - 进入插件文件夹:
cd ComfyUI-DrawThingsWrapper - 安装依赖:
pip install -r requirements.txt
3. 节点逐一解析
3.1 Draw Things Txt2Img 节点 - 文字生成图片的基础工具
这个节点就像是一个"文字变图片的魔法师",你给它一段描述,它就能生成对应的图片。
3.2 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| prompt | prompt | 文本输入 | 描述性文字 | 这是你告诉电脑想要什么图片的地方,就像跟画家说"我想要一幅..." | 正向提示词,描述期望生成的图像内容 | 输入"a cute cat sitting on a chair"就会生成一只坐在椅子上的可爱猫咪 |
| negative_prompt | negative_prompt | 文本输入 | 不想要的描述 | 这是告诉电脑你不想要什么的地方,就像说"但是不要有..." | 负向提示词,描述不希望出现在图像中的内容 | 输入"blurry, ugly"避免生成模糊或丑陋的图片 |
| model | model | 文本输入 | 模型名称 | 这是选择用哪个"画家"来画图,不同画家有不同风格 | 指定要使用的AI模型名称 | 输入"sd_xl_base_1.0.safetensors"使用SDXL模型 |
| steps | steps | 数字 | 20-50 | 这是电脑思考多少次才出结果,次数越多质量越好但越慢 | 扩散步数,控制生成质量和时间 | 设置30表示进行30次优化步骤 |
| cfg_scale | cfg_scale | 数字 | 7-12 | 这是控制电脑有多听话的旋钮,数值越高越严格按你的要求做 | 分类器自由引导强度,控制对提示词的遵循程度 | 设置7.5表示中等强度的引导 |
| seed | seed | 数字 | -1或正整数 | 这是随机数的种子,相同种子会生成相同图片,就像抽奖的号码 | 随机种子,控制生成的随机性和可重复性 | 设置-1表示随机,设置123456可以复现相同结果 |
| width | width | 数字 | 512/1024 | 图片的宽度,就像设置画布的宽度 | 生成图像的宽度像素值 | 设置1024生成较宽的图片 |
| height | height | 数字 | 512/1024 | 图片的高度,就像设置画布的高度 | 生成图像的高度像素值 | 设置1024生成较高的图片 |
| sampler | sampler | 选择列表 | DPM++ 2M | 这是选择用什么方法来"思考",不同方法效果略有不同 | 采样器类型,不同的图像生成算法 | 选择"DPM++ 2M"获得较好的平衡效果 |
3.3 Draw Things Img2Img 节点 - 图片改图片的变换工具
这个节点就像是一个"图片改造师",你给它一张现有图片,再告诉它要改成什么样,它就能帮你改造。
3.4 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| image | image | 图像输入 | 任意图片 | 这是你要改造的原始图片,就像给裁缝一件旧衣服 | 输入的参考图像 | 连接一个图片加载节点 |
| prompt | prompt | 文本输入 | 描述性文字 | 告诉电脑要把图片改成什么样子 | 正向提示词,描述期望的图像变化 | 输入"make it look like a painting"把照片改成绘画风格 |
| negative_prompt | negative_prompt | 文本输入 | 不想要的描述 | 告诉电脑改造时不要出现什么 | 负向提示词,避免不想要的变化 | 输入"maintain original composition"保持原始构图 |
| model | model | 文本输入 | 模型名称 | 选择用哪个"改造师"来改图片 | 指定要使用的AI模型名称 | 输入具体的模型文件名 |
| steps | steps | 数字 | 20-50 | 改造时思考的次数,越多改得越细致 | 扩散步数,控制改造质量 | 设置25进行25次优化 |
| cfg_scale | cfg_scale | 数字 | 7-12 | 控制电脑多听话地按你的要求改造 | 分类器自由引导强度 | 设置8.0表示中等强度引导 |
| seed | seed | 数字 | -1或正整数 | 改造的随机种子,相同种子得到相同改造结果 | 随机种子,控制改造的随机性 | 设置固定数字可以重复相同改造 |
| denoising_strength | denoising_strength | 数字 | 0.1-1.0 | 控制改造的强度,0.1是轻微改动,1.0是完全重画 | 去噪强度,控制对原图的保持程度 | 设置0.7表示较大幅度的改造 |
| sampler | sampler | 选择列表 | DPM++ 2M | 选择改造的方法 | 采样器类型 | 选择适合的采样器 |
3.5 Draw Things Txt2Img Pipeline 节点 - 文字生成图片的设置准备工具
这个节点就像是一个"工作单制作器",它不直接生成图片,而是准备好所有的设置和参数,等着别的节点来执行。
3.6 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| prompt | prompt | 文本输入 | 描述性文字 | 准备好要生成什么图片的描述 | 正向提示词配置 | 输入完整的图片描述 |
| negative_prompt | negative_prompt | 文本输入 | 不想要的描述 | 准备好不想要什么的描述 | 负向提示词配置 | 输入要避免的内容 |
| model | model | 文本输入 | 模型名称 | 准备好要用哪个模型 | 模型配置 | 选择合适的模型文件 |
| steps | steps | 数字 | 20-50 | 准备好要思考多少次 | 步数配置 | 设置合适的步数 |
| cfg_scale | cfg_scale | 数字 | 7-12 | 准备好听话程度的设置 | 引导强度配置 | 设置引导强度 |
| seed | seed | 数字 | -1或正整数 | 准备好随机数种子 | 种子配置 | 设置种子值 |
| width | width | 数字 | 512/1024 | 准备好图片宽度 | 宽度配置 | 设置图片宽度 |
| height | height | 数字 | 512/1024 | 准备好图片高度 | 高度配置 | 设置图片高度 |
| sampler | sampler | 选择列表 | DPM++ 2M | 准备好采样方法 | 采样器配置 | 选择采样器 |
3.7 Draw Things Img2Img Pipeline 节点 - 图片改图片的设置准备工具
这个节点就像是一个"改造工作单制作器",准备好所有改造图片需要的设置。
3.8 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| image | image | 图像输入 | 任意图片 | 准备好要改造的原始图片 | 输入图像配置 | 连接图片输入 |
| prompt | prompt | 文本输入 | 描述性文字 | 准备好改造描述 | 正向提示词配置 | 输入改造要求 |
| negative_prompt | negative_prompt | 文本输入 | 不想要的描述 | 准备好不想要的改造内容 | 负向提示词配置 | 输入要避免的改造 |
| model | model | 文本输入 | 模型名称 | 准备好要用的改造模型 | 模型配置 | 选择合适模型 |
| steps | steps | 数字 | 20-50 | 准备好改造步数 | 步数配置 | 设置处理步数 |
| cfg_scale | cfg_scale | 数字 | 7-12 | 准备好引导强度 | 引导强度配置 | 设置引导程度 |
| seed | seed | 数字 | -1或正整数 | 准备好随机种子 | 种子配置 | 设置种子值 |
| denoising_strength | denoising_strength | 数字 | 0.1-1.0 | 准备好改造强度 | 去噪强度配置 | 设置改造程度 |
| sampler | sampler | 选择列表 | DPM++ 2M | 准备好采样方法 | 采样器配置 | 选择采样器 |
3.9 Generate from Pipeline 节点 - 执行工作单的实际干活工具
这个节点就像是一个"工作执行器",它接收前面准备好的工作单,然后真正去执行生成图片的工作。
3.10 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| pipeline | pipeline | 工作单输入 | 来自Pipeline节点 | 接收前面准备好的工作单 | 接收管道配置数据 | 连接Txt2Img Pipeline或Img2Img Pipeline节点 |
4. 使用技巧和建议
4.1 基础使用模式
- 直接模式:使用 Draw Things Txt2Img 或 Draw Things Img2Img 节点,一步到位生成图片
- 管道模式:使用 Pipeline 节点准备设置,再用 Generate from Pipeline 执行,更灵活
4.2 模型名称获取技巧
- 在 Draw Things 应用中选择想要的模型
- 点击"Settings"旁边的"..."按钮
- 选择"Copy configuration"
- 粘贴到文本编辑器中查看准确的模型名称
4.3 性能优化建议
- 在苹果设备上使用能获得最佳性能提升
- 可以在 Draw Things 中设置 LoRA 和 ControlNet,这些设置会被自动应用
- 批量处理时使用 ComfyUI 的队列功能配合此插件
4.4 参数调优建议
- Steps(步数):20-30适合快速预览,40-50适合最终输出
- CFG Scale(引导强度):7-9适合大多数情况,太高可能过度饱和
- Denoising Strength(去噪强度):0.3-0.5轻微改动,0.6-0.8中等改动,0.8以上大幅改动
5. 常见问题解答
Q1: 为什么我的 ComfyUI 连接不上 Draw Things?
A: 确保:
- Draw Things 的 API Server 已开启
- 端口设置为 7860
- IP 设置为 localhost only
- 防火墙没有阻止连接
Q2: 模型名称总是报错怎么办?
A: 模型名称必须与 Draw Things 中的文件名完全一致,包括扩展名。使用"Copy configuration"功能获取准确名称。
Q3: 为什么改变 Draw Things 中的设置后 ComfyUI 没有重新生成?
A: ComfyUI 只有在自己的节点参数改变时才会触发重新生成。如果只改变 Draw Things 中的设置,需要在 ComfyUI 中也做一些改动来触发。
Q4: 可以使用蒙版(遮罩)进行局部修改吗?
A: 不可以。由于限制,这个插件无法传递蒙版信息,所以不支持局部修改功能。
Q5: ControlNet 和 PuLID 能用吗?
A: 可以使用,但是控制图片(如姿势参考图)需要在 Draw Things 应用中手动设置,无法通过 ComfyUI 传递。
6. 工作流程示例
6.1 简单文字生成图片工作流程
- 添加 Draw Things Txt2Img 节点
- 输入提示词:如"a beautiful landscape with mountains"
- 设置基本参数(steps=25, cfg_scale=7.5)
- 连接输出到预览节点
- 运行生成
6.2 高级管道工作流程
- 添加 Draw Things Txt2Img Pipeline 节点
- 设置所有参数
- 添加 Generate from Pipeline 节点
- 连接 Pipeline 输出到 Generate 输入
- 在中间可以添加其他节点修改管道设置
- 运行生成
6.3 图片改造工作流程
- 添加图片加载节点
- 添加 Draw Things Img2Img 节点
- 连接图片输入
- 设置改造提示词和强度
- 运行生成
这个插件本质上是一个桥梁,让你能够在 ComfyUI 的强大工作流程中使用 Draw Things 的高速生成能力,特别适合需要快速生成大量图片的场景。记住,两个应用都需要正确设置并保持同步,才能获得最佳效果。