当自动化神器 n8n,遇上AI绘画利器 ComfyUI,会碰撞出怎样的火花?
如果你也曾被它们高度自由、由节点驱动的工作方式所吸引,那么今天这篇内容,将为你展示一场1+1>2的“梦幻联动”。本文将手把手教你,如何将两者结合,打造一个全自动的AI图像生成“超级工具”。
(前置条件:请确保本地已部署好ComfyUI并安装Node.js环境,以便顺畅跟随教程。)
01 n8n 本地部署
n8n requires a Node.js version between 20.19 and 24.x.
安装 n8n 之前需要先安装 node.js,且官方文档说 n8n 本地部署需要 node.js 大于 20.19 版本。
安装 n8n 指令:
npm install n8n -g
等待一会,安装成功会看到下面这样的输出

通过如下指令
n8n
或者是:
n8n start
启动 n8n 的客户端。
第一次启动会要求你输入自己的邮箱,用户名,密码这些进行注册。

紧接着是一份问卷调查内容,根据自己的情况随便填就可以了。

填完就会弹出一个对话框,让你填自己的邮箱去收激活码的。

然后就是把邮箱收到的激活码复制一下,到 n8n 的设置,使用和计划里面去输入激活码进行激活。

02 安装 comfyui 插件
n8n 的社区节点也是在设置里面,左边最下面这个 community nodes.

点击这个按钮可以浏览所有的插件,可以通过搜索自己想要的插件 ,把插件的名字复制下来:比如我们需要安装的插件是 n8n-nodes-comfyui,然后点击安装。

安装好之后就可以在这个列表里面看到了,点击每个插件右上角的三个点,可以查看对应节点的文档,或者是卸载插件。

03 创建第一个工作流
创建工作流可以在 n8n 的界面左上角或者右上角按钮处点击创建。

3.1 添加表单提交触发节点
触发节点我选择表单触发,让用户提交一个表单去生成他想要生成的图片创意,也可以选择聊天的对话框触发。
按下快捷键 Tab,输入 on form submission.

选择之后会弹出如下的设置界面,输入标题,描述,然后添加提示词字段,类型选择 text 文本类型。

点击右上角的 execute step,执行预览,就会弹出一个这样的表单出来

在提示词框中输入你想生成的内容,比如:我输入
一个穿着丝袜的漂亮女孩

执行预览之后可以在右侧的输出部分看到输出提示词就是我们输入的。数据测试没有问题之后,点击左边的回到画布。

3.2 添加 AI Agent 节点
提示词我们已经有了,按照一般的文生图工作流,下一个要连接的就是大模型,也就是我们工作流中的大脑。
n8n 中我们一般是添加 AI Agent 节点 。

添加到画布中可以看到是有个红色的感叹号的,说明还需要进行配置才能正常的使用。
AI Agent 节点是一个集成的节点,由一个根节点和多个子节点组成。

首先,我们需要在 chat model 这个子节点选择一个大模型。
点击 chat model 下面的加号,可以看到它支持很多的语言模型。选一个你经常使用,比如国人可能对 deepseek 熟悉一点,我就选择这一个举例。

在 deepseek 的设置界面,先创建一个凭证。

然后去到自己的 deepseek 后台创建一个 api 的 key,链接如下:
https://platform.deepseek.com/api_keys
点击创建一个新的 api key,在弹出的窗口中给这个 api key 起一个方便识别的名字,比如我这里已经创建的两个 n8n 的。

创建好把 key 复制下来,然后粘贴到如下的 api key 中去。

点击 save 保存之后,我们的帐号就创建好了,然后在模型中,我们只需要选择聊天模型就可以了,不需要用到推理模型,因为推理模型消耗的 token 会更多,能省一点是一点。

添加好模型后,双击根节点,我们需要对它进行提示词的设置。

提示词的来源,我们需要设置成自定义。
然后用户提示词部分,我们需要用到表达式,而提示词的内容则是来自于前一个节点的 prompt,直接从左边拖拽到这个表达式框中就可以了。我这里为了演示就比较简单只写了
我的创意是:xxx
个人可以根据自己的喜好丰富一个用户提示词部分。

最重要的是通过 add option,添加系统提示词。我的系统提示词 如下:
你是一位ai生成大师,负责将用户的创意转换为丰富且有详细的图像生成提示词。
最终输出规则:1.以英文输出。2.除了提示词内容不要输出其余的描述 。3.字数在200字左右。
ok,这些都配置好后,可以执行一下预览,可以看到在右侧的输出部分,提示词是英文,而且也比较丰富,比如那些质量提示词都有。
由于我们不需要记忆功能,也不需要它再去完成其他操作,只是简单的输出一个提示词给 comfyui 的节点用就可以了,所以我这里 memory 和 tools 两个子节点都没连。
3.3 添加 comfyui 节点
按下 tab 快捷键,在节点搜索框输入 comfyui,就会如下图一样显示我们之前安装的 comfyui 插件节点了,把第一个拖入到工作流中。

这个节点也是需要先创建一个凭证。

由于我的 comfyui 是运行在 如下的 url 中
127.0.0.1:8188

所以配置这个 comfyui 节点的配置也比较简单,把这个 url 填进去就可以了,api key 可以不填,然后点击保存。

然后去到我们的 comfyui 工作流中,选择你想要 n8n 执行的工作流进行 api 的导出,注意不是导出工作流,是导出 api 哈。

将导出 api 的 json 文件内容复制下来,粘贴到下面的 workflow json 里面去。

此时我们还需要再做一件事,点击箭头按钮,进行编辑,我们需要找到 comfyui 中正向提示词节点,修改它的内容,要不然每次执行都是用的下面这段固定的提示词,我们需要把表单提交的动态的内容传递给它。

把需要替换位置的文本内容删除,然后从左边的 output 变量拖拽到这个地方,如果在右侧看到提示词被替换成英文我们表单输入的就表示 ok 了,点击右上角关闭按钮返回。

还有几个参数,比如设置导出图片是 jpg 还是 png,设置图片的质量(1~100)之间,还有超时时间,有些工作流比较复杂的话,这个时间可能要调长一些,这里我就全部默认了。
然后点击执行预览,在右侧的输出面板上多了一个二进制文件的面签,也就是生成了图片。可以选择点击 view 预览或者 download 把图片下载下来。

我们先预览一下,看到是按照我们的要求生成了图片,只是生成的图片质量很一般,就跟我们使用到的工作流和模型有关,因为我使用是最简单的工作流,模型也是用的较差劲的。后面我们可以替换一个新的工作流再试试。

这个节点就算设置完成了,点击左上角返回画布。
3.4 添加写入磁盘节点
上一个节点生成的图片只能预览,还需要我们去手动下载,那肯定不行,一般我们会选择下载到本地磁盘,或者上传到网盘,发送到邮箱等,这里我就拿保存到磁盘举例了。
在节点搜索框输入 read,选择这个从磁盘读取或者写入磁盘节点。

操作我们选写入磁盘
第二个是设置保存路径和文件名,有一个点要注意的是,window 上路径要用两个反斜线,然后文件名也是用的 comfyui 生成 的文件名字,直接从左边拖拽过来。
第三个二进制字段默认就是 data,所以不用设置。

执行预览后发现右边输出有了,然后去在文件路径下图片也保存了。

3.5 添加表单完成节点
现在我们的工作流大概长这样,貌似可以达到我们的需要了。

但是之前我们在填写表单的时候,后面的节点都还没执行,就提示已经完成了,这有点不符合常理,正常应该是图片生成且保存到我们本地了才提示完成。
此时,我们需要一个节点:form ending。

节点库搜索 n8n form,然后选择 Form Ending,拖拽进工作流中。
在设置界面中选择返回二进制文件,然后标题和提示信息填下。

此时,我们还需要去修改表单提交节点,修改何时响应字段,它默认是表单提交时,改成工作流完成时。

这样就当我们整个工作流完成时,表单提交界面才会显示成完成。

04 优化
之前生成的图片比较丑,我们替换一下之前比较简陋的工作流,替换一个我已经搭建好的用到了 flux 模型的工作流。看节点数量就能看出来比默认的工作流复杂,关键是里面用到的模型不一样了。

同样把 comfyui 工作流 导出 api 的 json 内容复制到 n8n 的 comfyui 节点,找到需要替换的提示词部分,然后把提示词删掉,从前一个节点把提示词拖拽过来。

看到右边的结果是一串绿色的前一节点传过来的提示词就表示 ok。

我们再重新输入提示词:一只可爱的猫咪,提交表单,等待个几分钟,图片就生成好了。
用上 flux,可以明显的感受到生成的图片质量提高了很多。

05 遇到的问题
问题一:5 分钟工作流就报超时了。
这里有一个点要特别注意,因为 flux 的模型一个就有 22G,所以这个工作流跑起来比较耗时,我的 3060 的显卡跑一次就耗时 492.55 秒!!如果你的显卡更差的话,可能时间就更长了。

所以这个超时时间要适当的调长一些,第一次报这个我以为是设置的时长不够。但是当我设置了一个较长时间,比如我设置成 3000 分钟,足够长了吧,但是过了 5 分钟,它还是执行失败了。

我怀疑这个节点的时间设置并没有生效,对不对要去代码里面验证一下!
首先,去到 n8n 设置里面的社区节点里找到使用节点的官方文档

然后在打开的网页里面找到 github 的仓库地址

经过一番查找,在代码仓库的如下目录我找到了处理界面上超时节点的处理逻辑:输入关键字 timeout,网页就会把代码里面所有有关 timeout 的代码都用黄色标注出来。

如果不是编程人员看不懂代码,也没关系,可以把这整个文件的代码复制一份,然后保存到你本地,比如我就叫 test.ts 吧,然后把这个文件发给 AI,让它帮你分析一下问题,看为什么参数没有生效。

经过 AI 的提醒,是每次的 http 请求有一个默认的时间 5 分钟,如果默认的 5 分钟时间不够,就得自己传一个 timeout 参数进去。
ok,知道怎么改了,但是我到哪去修改这个文件呢?毕竟我是通过社区节点直接安装的,也不知道它安装到哪个目录了,别慌,我们可以继续问下 AI。

根据上面这个提示,我们一路找下去,果然在我的电脑的如下目录找到了这个文件,只不过它被编译成 javascript 了。

打开这个 js 文件,根据之前 AI 提示的,在发送 request 的地方,添加一个 timeout 的参数,这个参数提示我们表示的是分钟,但是在 http 请求中超时设置一般是用毫秒为单位的,所以需要乘以 60 转成秒数,再乘以 1000 转成毫秒数。

修改之后记得保存,为了让修改确保它生效,最好是重启一下 n8n.
经过修改之后,再执行 flux 的工作流,总耗时 492 秒都没报超时(原来是 300 秒就会报),也就说明我们的修改生效了,可以调用比较耗时的 comfyui 工作流了。
问题二:工作流执行完,文件没保存到我希望的目录。
本来我希望它是保存到 E 盘的 n8n_picture 目录

但是执行完工作流它就给我保存到 C 盘的下载目录去了。

之前在搭建工作流加入表单结束这个节点前都是能正常保存到这个目录的,所以问题是不是出在最后这个节点上?

带着这个疑问,打开这个节点设置,之前我选的是返回二进制文件,我猜可能是它接管了前一个节点的写入磁盘,没有写入到我们设定的 E 盘,而是一个默认的下载路径。

把它改成不返回二进制文件,而是它上面的这个选项展示一个文本试下。
再次执行一次工作流,执行完显示了一行文本,文件也按我们需求的写入到了正确的位置。

问题三
在第一次调用 flux 模型时,过一会就会触发 comfyui 重新连接,在经过几次的忽略节点定位到是在加载 flux 的模型时触发的,而当我把模型改成使用 flux 的蒸馏模型时能正常跑起来,但是蒸馏模型生成的图片质量差很多。
所以,问题很明显是在加载大模型时内存不足导致了重连。
联想到最近有安装 docker,还有 wsl2 这些占用了大量的内存和显存。
我起先是在启动 comfyui 时加多一个–novram 的参数,跑是也能跑,但是这个时间比正常慢了很多,
可以看以下三种形式的对比就可以明显的感觉出来优劣。
- 正常模式 (无参数)
模型尽可能保留在GPU显存中推理速度最快但需要大量显存
--lowvram
- 将模型拆分,只在需要时加载部分到显存适度的速度损失,显著减少显存占用
--novram
- 尽可能少地使用显存,频繁在CPU和GPU之间交换数据大幅降低速度,但可以在极小的显存环境下运行大模型
综合考虑到最近我的机器不需要使用 docker 这些,所以把相关占用显存的 wsl2 这些都卸载了。然后重新启动电脑后恢复正常,能顺利加载比较大的模型,生成图像质量也好。
06 总结
回望这次搭建历程,从一个个节点的摸索到整个工作流的畅通,收获的远不止一个自动化工具。每一次“踩坑”与“填坑”,都让我对这两个强大工具有了更深的理解。
这正是动手实践的魅力——它让纸上谈兵的理论,变成了我专属的宝贵经验。如今,我再也不用为写提示词而发愁,只需一个简单的指令,n8n 就能智能地补全提示词并驱动 ComfyUI 为我作画。技术,终于为我所用。
希望我的分享能给你带来启发,别再观望,现在就动手,开启你的自动化创作之旅吧!
如何高效转型Al大模型领域?
作为一名在一线互联网行业奋斗多年的老兵,我深知持续学习和进步的重要性,尤其是在复杂且深入的Al大模型开发领域。为什么精准学习如此关键?
- 系统的技术路线图:帮助你从入门到精通,明确所需掌握的知识点。
- 高效有序的学习路径:避免无效学习,节省时间,提升效率。
- 完整的知识体系:建立系统的知识框架,为职业发展打下坚实基础。
AI大模型从业者的核心竞争力
- 持续学习能力:Al技术日新月异,保持学习是关键。
- 跨领域思维:Al大模型需要结合业务场景,具备跨领域思考能力的从业者更受欢迎。
- 解决问题的能力:AI大模型的应用需要解决实际问题,你的编程经验将大放异彩。
以前总有人问我说:老师能不能帮我预测预测将来的风口在哪里?
现在没什么可说了,一定是Al;我们国家已经提出来:算力即国力!
未来已来,大模型在未来必然走向人类的生活中,无论你是前端,后端还是数据分析,都可以在这个领域上来,我还是那句话,在大语言AI模型时代,只要你有想法,你就有结果!只要你愿意去学习,你就能卷动的过别人!
现在,你需要的只是一份清晰的转型计划和一群志同道合的伙伴。作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。

第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。
这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

579

被折叠的 条评论
为什么被折叠?



