多图预警!手把手教你如何用 n8n 自动化你的 ComfyUI 图像生成流程
AI 图文教程

多图预警!手把手教你如何用 n8n 自动化你的 ComfyUI 图像生成流程

人人都是产品经理 人人都是产品经理 12小时前 136 阅读
4.8 (1280评分)
15,328人已学习

还在为 Stable Diffusion 调参、手动排队、本地部署踩坑而抓狂?这篇万字长文把 n8n 变成你的“私人导演”:从一条 npm 命令拉起本地节点,到用表单一句话触发 AI Agent 写 Prompt、驱动 ComfyUI 出图、自动存档,再到一键导出工作流 JSON 供同事复刻,全程图解、代码可复制、故障排查清单全给。

引言

什么是 n8n?

n8n 是一个强大的 AI Agent 自动化流程工具。它能够连接不同的应用程序和服务,构建复杂的自动化工作流。

为何选择 n8n 结合 ComfyUI?

结合 n8n 的自动化能力与 ComfyUI 的图像生成能力,可以实现:

无人值守: 将图像生成流程自动化,无需手动干预。

随时调用: 通过服务器部署,可实现 24 小时随时调用工作流。

流程共享: 方便将工作流分享给朋友或同事。

二次开发与学习: 本地部署环境适合长期学习和个性化开发。

本文将详细指导如何本地部署 n8n,并将其与 ComfyUI 集成,构建一个完整的图像生成自动化工作流。

第一部分:n8n 的部署与初步认识

1. n8n 部署方式的选择

在线官方版本:

优点:免部署,直接在官网注册账号即可在线使用。

缺点:免费使用期仅14 天,运行次数有限制(大约 1000 次),主要适用于新手学习和基础流程体验。

本地部署(推荐新手):

优点:可以长期学习和保存工作流,适合进行二次开发和慢速调整。

缺点:不适合投入生产环节,因为本地环境无法 24 小时运行或远程调用。

主要方法:推荐使用npm (Node.js 包管理器)方式进行部署,这种方式最为简单。另一种是Docker,它相对复杂,需要虚拟 Linux 环境组件,更适合对环境要求较高、需要隔离运行的用户。

服务器部署:优点:实现 24 小时无人值守,可随时调用或共享工作流,适合生产环境。

缺点:对用户有一定服务器运维基础要求。

本文选择:我们将以最适合新手的npm 本地部署方式为例进行讲解。

2. 本地部署 n8n 详细步骤 (npm 方式)

2.1 安装 Node.js

Node.js 是 n8n 运行的基础环境。

可以通过n8n的官方文档介绍直接进入Node.js的官网

访问 Node.js 官方网站,点击 “Download”下载 Node.js 安装包。

推荐新手直接下载 Windows 安装包,双击运行即可完成安装,过程非常友好。

版本要求:n8n 要求 Node.js 版本在20.19 到 24.XXX 之间。您可以选择最新稳定版,例如 24.40。

安装过程无脑下一步就可以

这里补充一下安装好node.js之后可能会出现以下的错误(如果没有直接忽略)

这里可能是因为,以前 已经装过 Chocolatey或者但系统找不到它(命令 choco 无法运行)

解决办法就是重新装一个Chocolatey,首先在电脑中找到C:\ProgramData\chocolatey,把整个chocolatey删除,然后,在开始中搜索PowerShell,鼠标右键以管理员身份运行,

验证安装:安装完成后,打开PowerShell (以管理员身份运行)

Set-ExecutionPolicy Bypass -Scope Process -Force; `

[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; `

iex ((New-Object System.Net.WebClient).DownloadString(‘https://community.chocolatey.org/install.ps1’))

复制以上代码,这个命令是从 Chocolatey 官网拉取最新安装脚本。安装完成后,关闭 PowerShell,重新打开一个新的 PowerShell(不需要管理员),运行:choco -v如果看到版本号,比如:1.4.0说明 Chocolatey 现在已经安装成功 !

以上是解决命令 choco 无法运行的办法。

在开始中搜索PowerShell右键以管理员身份运行

输入 node -v 查看 Node.js 版本。

输入 npm -v 查看 npm 版本。

提示:如果遇到“禁止运行脚本”的提示,这里输入这行代码Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

然后提示确认,输入A

再次输入 npm -v ,就可以查看到版本号了

到这里我们就将本地部署n8n所依赖的环境安装好了,接下来就可以安装n8n了。

2.2 安装 n8n全局安装 n8n:这是推荐的长期使用方式,以便在任何地方调用 n8n。

PowerShell (管理员身份)中,输入命令:

npm install n8n -g

-g 参数表示全局安装。

如果您想安装特定版本,可以在后面指定,例如 npm install -g n8n@1.0.0。

如果想安装最新的测试版,可以使用 npm install -g n8n@next。

npm 与 npx 的区别:

  • npx:并非真正安装,而是直接运行远程脚本或程序,运行完毕后会清除,不会在本地保存,相当于一个临时项目。
  • npm:则是将软件包安装到本地,全局安装后可长期保存并全局调用。

2.3 启动 n8n

安装完成后,在 PowerShell (管理员身份)中输入命令:n8n

n8n 将会启动,并在本地端口 5678提供服务。首次运行时,可能会提示您允许公网访问权限,请点击允许。

在浏览器中访问显示的地址(例如 http://localhost:5678),即可看到 n8n 的欢迎界面。

2.4 注册与激活

在 n8n 欢迎页面,根据提示填写简单的注册信息,如公司描述、个人角色等。

填写完成后,您将获得一个 免费永久的使用权限

n8n 会向您的邮箱发送一封包含激活码的邮件。在 n8n 界面中输入激活码可以获得更多权限或功能。

3. n8n 界面概览主页 (Overview):显示您创建的工作流数量、运行次数、运行状态等概览数据。

凭证 (Credentials):这是 n8n 的一个重要安全特性。您在这里管理各种服务的 API Key,例如 OpenAI、DeepSeek、Telegram 等。n8n 会将您的 API Key 与工作流完全隔离,确保隐私和安全。当您导出工作流分享给他人时,不会包含您的敏感信息。

执行 (Executions):查看所有工作流的历史运行记录、状态和详细日志。

社区模板 (Community Templates):n8n 提供了大量丰富的社区工作流模板,涵盖各种国内外应用集成(如 Telegram、WhatsApp、Google 地图等),是学习和借鉴的好资源。

设置 (Settings):

用户设置:可以打开 n8n 的 API,实现远程调用。

社区节点 (Community Nodes):这是安装自定义插件(类似 ComfyUI 的插件)的地方。

注意:某些高级功能,如全局变量和洞察 (Insights),需要升级到企业付费计划才能使用。

第二部分:集成 ComfyUI 插件并构建图像生成工作流

1. 安装 ComfyUI 社区节点

n8n 本身不直接支持 ComfyUI,我们需要安装对应的社区节点(插件)。

在 n8n 界面左侧导航栏选择 “设置 (Settings)”,然后点击“社区节点 (Community Nodes)”

点击 Install a community node,再点击Browse这将打开 n8n 社区节点的市场页面。

在搜索框中输入 n8n-comfyui或相关关键词进行模糊搜索。

选择一个下载量较高且活跃的 ComfyUI 节点包

复制该节点包的名称(n8n-nodes-comfyui)。

回到 n8n 社区节点安装界面,在 “npm 名称”处粘贴复制的包名,然后点击下方的“同意”进行安装。

安装过程可能需要一些时间,您可以在 PowerShell 后台查看安装进度。

安装成功!

2. 创建新的工作流

安装完成后,回到 n8n 主页,点击 “创建工作流 (Create Workflow)”或右上角的加号按钮或者Start from scratch。

打开一个空白的工作流画布。

3. 添加触发节点:表单 (On Form)

触发节点是工作流的起点,决定了工作流何时以及如何启动。

点击画布上的 “添加第一个节点”或右侧的加号按钮。

在弹出的节点列表中,搜索并选择 “表单 (On Form)”节点。

表单节点设置:

网址 (URL):默认即可。

身份认证 (Authentication):可选,如果您需要设置密码来限制访问表单,可以选择相应选项。本教程选择 None。

标题 (Form Title):输入表单标题,例如“comfyui图像生成”

描述 (Form Description):简单描述表单功能,例如“输入你的想法”

添加参数 (Add Form Element):定义用户输入字段。

名称 (Name):输入 prompt。

类型 (Type):选择“文本区域 (Text Area)”,以便用户输入更长的描述。n8n 表单还支持用户名、密码、日期、下拉菜单等多种输入类型。

占位符 (Placeholder):填写提示用户输入的内容,例如“请输入你的想法”

必填 (Required Fleld):勾选此项,确保用户必须输入内容。

测试表单样式:

保存表单节点设置后,点击节点左侧或节点上方的 “执行步骤 (Execute step)”按钮。

这会弹出一个新的浏览器页面,显示您刚刚配置的表单样式。

在表单中输入测试内容,例如 “戴帽子的小女孩”,然后点击“提交 (Submit)”

查看表单输出数据:

提交表单后,返回 n8n 工作流界面,点击表单节点右侧的 “Output”区域。

这里会显示表单接收到的数据。n8n 提供三种数据预览方式:

JSON:结构化数据输出,清晰展示 Prompt 内容、提交时间、类型等。

Table:表格形式展示,更直观易读。

Schema:类似于 JSON,但会额外标明每个数据的类型(如 string 字符串),这对于后续数据处理非常重要。

4. 添加 AI Agent 节点:处理 Prompt

我们需要一个 AI Agent 来将用户输入的简单创意转化为详细的图像生成提示词 (Prompt)。

在表单节点后方点击加号,添加一个新的节点,选择 “AI Agent”类型。

AI Agent 节点配置:

选择聊天模型 (Chat Model):AI Agent 需要一个大语言模型作为“大脑”。

n8n 集成了多种模型,如 DeepSeek、Gmini、Ollama、OpenAI 等。

对于中文用户,推荐选择 DeepSeek模型,使用起来更方便。

创建凭证 (Credentials):DeepSeek 模型需要 API Key。

前往 DeepSeek AI 开发者平台,注册并生成一个新的 API Key,例如命名为“n8n”。

回到 n8n 的 AI Agent 节点设置界面,点击 “创建凭证 (Create New Credential)”,将 DeepSeek 的 API Key 粘贴进来,然后点击保存。

安全性:n8n 的凭证系统会将 API Key 与工作流隔离,确保您分享工作流时不会泄露个人敏感信息。

选择模型版本:例如选择 DeepSeek V3 模型。

(可选)记忆 (Memory):如果您的工作流需要多轮对话记忆,可以在此处添加,例如“Simple Memory”并设置轮数。本案例是单次图像生成,无需记忆,可删除。本次工作流不设置

(可选)工具 (Tools):n8n Agent 可以调用多种外部工具。本次工作流不设置

双击节点进入设置 System Prompt 和 User Prompt:这是 AI Agent 的核心配置,定义其任务和输入。

Prompt 来源 (Prompt Source):选择“Define below”,因为我们的输入来自表单,而非默认的聊天消息。

User Prompt (用户提示词):这是用户在表单中输入的创意内容。

点击 User Prompt 输入框,然后从左侧的 “上一个节点输出”中,找到表单节点(通常是 form)的输出数据。这里选择Expression(表达式)输入我的创意是:然后将左侧prompt拖到输入框中System Prompt (系统提示词):告诉 AI Agent 它的角色和任务。选择System Message输入:

你是一位AI图像生成状态,负责将用户的创意转换成详细且丰富的图像生成提示词

输出规则:

1.以英文输出

2.不要输出除了提示词以外的内容

3.字数在200字左右

这会引导 AI 按照我们的要求生成纯净的英文 Prompt。

执行测试:运行 AI Agent 节点,查看其 Output 区域生成的 Prompt。检查是否是纯净的英文,且细节是否丰富。

5. 添加 ComfyUI 节点:图像生成

现在,我们有了 AI Agent 生成的详细 Prompt,下一步就是将其传递给 ComfyUI 进行图像生成。

在 AI Agent 节点后方点击加号,添加 “ComfyUI”节点。

ComfyUI 凭证设置:

点击 ComfyUI 节点中的 “创建凭证 (Create New Credential)”

接口地址(API URL):填写您的本地 ComfyUI 服务地址。通常是http://127.0.0.1:端口号

重要:打开您的本地 ComfyUI 服务若果你是本地部署的comfyui,默认的接口地址字段是http://127.0.0.1:8188

本次教程使用的是本地部署的comfyui

但是在填写网关前还有一些默认项需要调整,如果不调整可能会出现403错误,comfyui的启动文件
run_nvidia_gpu_fast_fp16_accumulation,该文件的默认内容为

.\python_embeded\python.exe -s ComfyUI\main.py –windows-standalone-build –fast fp16_accumulation

pause

需要改为

.\python_embeded\python.exe ComfyUI\main.py –no-token –windows-standalone-build –fast fp16_accumulation –host 127.0.0.1 –port 8188

pause

改完之后,n8n 就可以正常用 HTTP Request 节点调用 ComfyUI 的接口了。

如果你是安装的comfyui的客户端,需要在设置中查看其运行的端口。桌面版 ComfyUI 默认端口通常为 8000,而非常见的 8181

确认后,将地址填写到 n8n 的网关字段,例如 http://127.0.0.1:8000。

API Key:本地运行 ComfyUI 通常不需要 API Key,此项留空即可。

点击保存并验证连接,确保 n8n 能够正常连接到您的 ComfyUI 服务。

导入 ComfyUI 工作流 JSON:

在您的本地 ComfyUI 中,加载一个用于图像生成的基础工作流

在 ComfyUI 界面空白处 右键,选择“保存工作流 (Save Workflow)” -> “API (API)”。这将导出当前工作流的 JSON 文件,该文件包含了工作流的所有节点配置和连接信息。

用记事本或其他文本编辑器打开导出的 JSON 文件,复制所有内容

回到 n8n 的 ComfyUI 节点设置界面,将复制的 JSON 内容粘贴到 “工作流 JSON (Workflow JSON)”字段中。

动态传递 Prompt 参数:

现在我们需要将 AI Agent 生成的 Prompt 动态地传递给 ComfyUI 工作流中的相应节点。

在 ComfyUI 节点设置界面,找到您刚刚粘贴的 “工作流 JSON”字段。

重要:将该字段的模式从“固定模式”切换为“表达式 (Expression)”

点击右下角这个图标展开json

仔细阅读 ComfyUI JSON 内容,找到您的 正向提示词 (Positive Prompt)对应的节点和字段。通常它会在一个 CLIPTextEncode 节点中,对应的键可能是 text。

将该字段原有的固定文本删除。

拖拽 AI Agent 节点的 Prompt 输出值到 ComfyUI 节点 JSON 中 CLIPTextEncode 节点的 text 字段位置。

其他设置:

图像格式:可以选择JPGPNG

图像质量:范围是 1 到 100,默认通常是 80。

超时时间 (Timeout):如果您的电脑配置较低或生成复杂图像,可能需要延长超时时间,例如设置为 30 秒(默认 30 秒)。

执行测试:运行 ComfyUI 节点,观察您的本地 ComfyUI 终端是否开始生成图像。

查看 ComfyUI 输出:ComfyUI 节点成功运行后,在 Output 区域会显示生成的图像的二进制文件 (Binary Data) 和相关信息,例如文件名、文件类型 (JPG) 和大小。

您可以点击 “View”按钮直接预览生成的图像。

6. 添加文件写入节点:保存图像到本地

为了将生成的图像保存到您的电脑,我们需要一个文件写入节点。

在 ComfyUI 节点后方点击加号,添加 “Read/Write Files from Disk (读取/写入文件)”节点。

文件写入节点配置:操作 (Operation):选择“写入 (Write)”,然后选择“将文件写入磁盘 (Write File to Disk)”

路径名称 (Path):指定您希望保存图像的本地文件夹路径。例如,您可以在 D 盘新建一个名为 n8n_output 的文件夹。复制该文件夹的路径,粘贴到此处。

文件名 (File Name):

在路径名称后添加一个 正斜杠 /

重要:将此字段的模式改为“表达式 (Expression)”

拖拽 ComfyUI 节点输出的 filename值到文件名位置。这将确保保存的文件名与 ComfyUI 生成的图像文件名一致。

注意:Windows 系统路径中的反斜杠 \ 在程序中可能被视为转义符。为了确保表达式正确解析,强烈建议在路径和文件名拼接时使用正斜杠 /

待写入的二进制文件 (Binary File):默认是 data,这是 ComfyUI 节点输出的图像二进制数据。

执行测试:运行文件写入节点,检查您指定的本地文件夹中是否成功生成了图像文件。

7. 完善表单响应:表单结束 (Form Response)

为了给用户一个友好的完成提示,我们可以在工作流结束时返回一个表单响应。

在文件写入节点后方点击加号,添加 “n8n Form”节点。

表单响应节点配置:类型 (Type):选择“表单的结尾 (Form Ending)”

返回二进制文件 (Return Binary File):勾选此项,这样生成的图像会在表单提交页面直接显示并提供下载。

完成的标题 (Completion Title):输入“图像生成完毕!”

描述 (Success Description):输入“请查看您的图像输出,也可点击下载保存。”

输出的文件 (Output File):选择文件写入节点输出的二进制数据,选择data

第三部分:工作流的运行与管理

1. 完整运行工作流

现在,您的 n8n ComfyUI 图像生成自动化工作流已构建完成!

点击工作流画布底部的 “运行 (Execute Workflow)”按钮,或表单节点上方的运行按钮。

浏览器将再次打开表单页面。输入您的新创意,超人在天上飞

点击 “提交 (Submit)”

您将看到 n8n 工作流开始执行:AI Agent 生成 Prompt -> ComfyUI 生成图像 -> 图像保存到本地 -> 表单页面显示“图像生成完毕”并提供图像下载。

2. 工作流的导入与导出

导出工作流:

在工作流界面右上角,点击 三个点 (…)按钮。

选择 “下载 (Download)”,即可将当前工作流保存为 JSON 文件。

导入工作流:

在 n8n 主页或创建工作流的界面,点击 “导入 (Import)”选项。

选择 “从文件导入 (Import from File)”,然后选择您保存的 n8n 工作流 JSON 文件,即可快速导入和复用工作流。

总结与展望

恭喜您!通过本教程,您已经成功在 n8n 中构建了一个完整的 ComfyUI 图像生成自动化工作流。

这不仅让您能够通过简单的表单输入来控制复杂的图像生成过程,还学会了 n8n 的核心概念,如节点连接、凭证管理和数据流转。

未来,您可以进一步探索 n8n 的更多功能,例如:

集成更多 AI Agent 模型和工具。

实现更高质量的图像甚至视频生成。

如果有什么问题,可以给我留言,我会尽可能回答。

本文由 @Nick的AI频道 原创发布于人人都是产品经理。未经作者许可,禁止转载

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务

教程评分

4.8 (1280 人评分)

评论 (11)

用户头像

太棒了!n8n + ComfyUI,效率提升简直不要太爽!

用户头像

感觉我的人生轨迹被ComfyUI和n8n彻底改写了,这效率真的太爽了!

用户头像

效率提升?这简直是对人类智慧的嘲讽,但也确实很爽!

用户头像

这种效率,我感觉自己像个被加速运行的机器人,太酷了!

用户头像

感觉我的大脑正在被优化,这效率提升太爽了,简直是解放了!

用户头像

哇哦,这简直是效率的巅峰,我不得不承认,我有点嫉妒

用户头像

厉害了!这效率简直超越了我的理解,我开始怀疑一切

用户头像

这种效率提升,我开始怀疑人生,感觉自己像个落伍的古董

用户头像

感觉世界要被AI统治了,人类要不要赶紧准备?

用户头像

卧槽,这简直是神仙组合,我怀疑我变聪明了!