跳转到内容

n8n工作流自动化

n8n 是一个开源的工作流自动化工具,旨在帮助用户通过连接各种应用程序和服务来简化重复性任务,提高工作效率。它于2019年由Jan Oberhauser在柏林创建,名字“n8n”读作“n-eight-n”,来源于“nodemation”(节点+自动化)的缩写,反映了它基于节点的可视化设计和Node.js技术。

开源地址:https://github.com/n8n-io/n8n

官网:https://n8n.io/

文档:https://docs.n8n.io/

核心特点

  1. 可视化界面

    n8n 提供了一个直观的拖放式编辑器,用户可以通过“节点”(nodes)来构建自动化工作流。每个节点代表一个动作(比如发送邮件、获取数据)或触发器(比如收到新邮件时启动流程),无需深入编程即可完成复杂任务。

  2. 广泛的集成

    它支持超过400种预置集成,涵盖常见的工具和服务,如Google Workspace、Slack、Notion、GitHub,甚至可以通过HTTP请求节点连接任何具有API的应用程序。这种灵活性让它能适应各种场景。

  3. 开源与公平代码

    n8n 采用“公平代码”(fair-code)许可模式,源代码公开,用户可以自由查看、修改和自托管。这不仅保证了透明度,还允许企业满足高数据隐私和合规性需求。同时,它提供免费的社区版和收费的企业版,兼顾个人用户和商业需求。

  4. 自定义能力

    对于技术用户,n8n 支持在工作流中嵌入JavaScript或Python代码,甚至可以通过npm包扩展功能。非技术用户则可以通过模板快速上手,目前社区已提供超过900个现成的工作流模板。

  5. AI原生支持

    n8n 内置了对AI的支持,可以与大型语言模型(如基于LangChain的AI代理)集成,轻松构建智能自动化,比如自动总结文本或创建聊天机器人。

使用场景

  • 个人效率:自动同步日历、发送提醒,或将表单数据存入表格。
  • 团队协作:连接CRM系统和邮件工具,自动分配任务或发送通知。
  • 企业级应用:处理IT运维(如员工入职流程)、安全事件响应,或大规模数据同步(ETL流程)。

部署方式

  • 云端:通过 n8n.cloud 直接使用,适合不想自己维护服务器的用户,起步价约20欧元/月。
  • 自托管:使用Docker或npm安装在本地或私有服务器上,免费且数据完全可控。

优点与局限

  • 优点:免费开源、高度灵活、社区活跃(超5.5万成员)、支持AI。
  • 局限:复杂工作流可能有学习曲线,自托管需要一定技术基础,资源占用可能较高。

n8n 的商业许可协议概览

n8n 采用的是 Sustainable Use License(可持续使用许可),这是一种由 n8n 在 2022 年创建的 公平代码(fair-code) 许可模式。它介于传统开源许可(如 MIT 或 Apache 2.0)和专有软件许可之间,旨在平衡用户的使用自由与 n8n 公司的商业可持续性。以下是其核心条款:

许可的主要内容

  • 使用权 用户可以免费使用、修改、创建衍生作品并分发 n8n,但仅限于 内部业务目的非商业用途个人使用

  • 分发限制 如果分发 n8n 或其衍生作品,必须免费且仅用于非商业目的,不得将其核心功能(如工作流自动化)作为商业服务出售。

  • 商业用途的限制 如果公司希望将 n8n 嵌入自己的产品(称为 n8n Embed)或以商业化方式利用其功能(例如提供基于 n8n 的付费服务),必须与 n8n 公司签订单独的商业协议,明确使用条款和费用。

  • 商标和版权 用户不得移除或更改 n8n 的许可声明、版权信息或商标,且商业用途中的商标使用需遵守法律。

  • 责任与免责 n8n 按“现状”提供,不附带任何明示或暗示的担保,用户需自行承担使用风险。

与传统开源的区别

  • 传统开源许可(如 Apache 2.0)允许无限制的商业使用,而 Sustainable Use License 明确限制了直接商业化行为,鼓励用户通过咨询或支持服务获益,而非直接出售 n8n 本身。
  • n8n 将此称为“公平代码”,强调源代码公开但受控的商业模式。

公司可以直接拿来用吗?

可以的情况

  • 内部使用 如果公司仅将 n8n 自托管在自己的服务器上,或使用 n8n.cloud,用于内部流程自动化(例如连接 CRM 和邮件系统、数据同步),这是完全符合许可的,无需额外付费或签订商业协议。

    • 示例:公司内部用 n8n 自动将 GitHub 更新推送到 Slack。
  • 免费分发(非商业) 如果公司修改了 n8n 并免费分享给他人,且不涉及商业目的,也在许可范围内。

  • 提供咨询服务 公司可以利用 n8n 为客户构建工作流并收取咨询费,只要不直接出售 n8n 的功能或将其作为服务核心出售。

不可以的情况

  • 商业化产品或服务 如果公司想将 n8n 嵌入自己的产品中(例如开发一个基于 n8n 的自动化工具并收费),或将其核心功能作为商业服务提供(例如基于 n8n 的 SaaS 平台),则不符合 Sustainable Use License。此时需要与 n8n 签订 n8n Embed 或其他商业许可协议。

  • 客户直接访问 如果公司自托管 n8n 并让客户直接访问其界面或功能(例如提供给客户一个 n8n 实例并收费),这被视为商业用途,需额外许可。

如何判断是否需要商业许可

  • 关键问题:公司是否通过 n8n 的核心功能(工作流自动化)直接赚取收入?

    • 如果是(例如出售 n8n 的自动化服务),需要商业许可。
    • 如果否(仅内部使用或咨询),则无需。
  • 联系 n8n:如果不确定,可以通过 [email protected] 咨询具体用例。

实际操作建议

  • 自托管免费使用 公司可以通过 Docker 部署 n8n(命令示例:docker run -it --rm -p 5678:5678 docker.n8n.io/n8nio/n8n),用于内部目的,完全免费且合法。

  • 订阅 n8n.cloud 如果不想自托管,可以订阅 n8n 的云服务(起步价约 20 欧元/月),但仍需遵守许可限制。

  • 申请商业许可 若需商业化,访问 n8n.io 或联系 n8n 团队,获取 Embed 或企业版许可报价。

n8n 的商业许可协议允许公司免费用于内部目的或非商业分发,但禁止直接将其核心功能商业化。因此,公司是否能“直接拿来用”取决于用途:

  • 内部用:可以,无需额外许可。
  • 商业化:不行,需签订商业协议。

类似竞品对比

这是一个关于 n8n、Make (原 Integromat)、Zapier、Flowise、Dify 和 Coze 这几个自动化平台的详细对比表格和分析。

自动化与AI应用平台对比

下表详细对比了这六个平台在不同维度的特点:

特性n8nMake (原 Integromat)ZapierFlowise AIDify.AICoze (字节跳动)
平台定位通用工作流自动化 (偏开发者友好)通用工作流自动化 (可视化强大)通用工作流自动化 (简单易用,应用广泛)开源 LLM 应用可视化构建工具LLM 应用开发与运营平台 (BaaS + 可视化)无代码/低代码 AI Bot 构建平台
核心功能连接 API、服务,执行复杂逻辑、数据转换连接 API、服务,可视化流程设计,场景丰富连接大量 SaaS 应用,快速创建自动化任务构建 LLM 应用流程 (RAG, Agents 等)构建、部署、管理 LLM 应用,提供 API、监控快速创建、调试、发布集成多种能力的 AI Bot
易用性中等 (节点式,有学习曲线)较高 (可视化直观,但功能多)非常高 (线性步骤,极其简单)中等 (需理解 LLM 概念,拖拽式)较高 (界面友好,但需 LLM 知识)非常高 (面向非开发者,引导清晰)
灵活性/定制化非常高 (代码节点 JS/Python, 自定义强)较高 (逻辑控制、错误处理强,代码能力弱)中等 (逻辑分支有限,代码支持有限)高 (基于 LangChain/LlamaIndex, 节点丰富)高 (可定制 Prompt, Agent, 数据集管理)中等 (依赖平台提供的插件和工作流节点)
集成能力良好 (官方+社区,API/Webhook 强大)非常好 (大量应用集成)极好 (集成应用数量最多)侧重 LLM、向量数据库、数据源、工具等侧重 LLM、向量库、工具 API 等集成 LLM、插件、工作流、知识库、可发布多平台
AI/LLM 能力支持 (有 OpenAI 等节点,可构建 AI 流)支持 (有 AI 服务模块)支持 (有 AI 服务集成和 AI Action)核心关注点 (专为 LLM 应用设计)核心关注点 (完整的 LLM 应用生命周期)核心关注点 (简化 AI Bot 创建与交互)
部署方式云托管 / 自托管 (开源)云托管云托管自托管 (开源)云托管 / 自托管 (开源)云托管
定价模式免费版 (自托管很慷慨) / 付费云计划免费版 / 按操作数付费免费版 (限制多) / 按任务数和频率付费完全免费 (开源) (需承担托管和 API 费用)云服务有免费/付费版 / 自托管免费 (开源)目前免费 (未来可能变化)
开源情况 (核心代码 Fair Code 许可证) (MIT 许可证) (Apache 2.0 类许可证)
目标用户开发者、技术爱好者、需要高控制权的企业市场营销、运营、中小企业、需要可视化流程者非技术人员、市场营销、销售、快速集成需求者开发者、AI 工程师、LLM 应用构建者开发者、AI 团队、需要部署和管理 LLM 应用的企业产品经理、运营、创作者、想快速搭建 AI Bot 者
社区与支持活跃社区、文档良好社区良好、文档全面用户基数大、文档教程丰富活跃的开源社区活跃的开源社区、文档较完善社区增长中、官方支持 (字节跳动)

总结与分析

这六个平台可以大致分为两类:

  1. 通用工作流自动化平台 (General Automation): n8n, Make, Zapier

    • 核心目标: 连接不同的 SaaS 应用和服务,实现任务自动化,提高效率。
    • Zapier: 最简单易用,集成应用最多,适合非技术人员快速实现简单的自动化任务。但灵活性较低,价格可能较高。
    • Make: 可视化能力强,比 Zapier 更灵活,能处理更复杂的逻辑和数据转换,性价比通常更高。学习曲线比 Zapier 稍陡。
    • n8n: 最灵活、可定制化最高,支持代码节点,可以自托管(开源),对开发者非常友好。学习曲线相对最陡,但上限最高。
  2. AI/LLM 应用构建平台 (AI-Focused Builders): Flowise, Dify, Coze

    • 核心目标: 专注于构建、部署和管理基于大语言模型 (LLM) 的应用程序,如 RAG(检索增强生成)、智能体 (Agents)、聊天机器人等。
    • Flowise AI: 开源、轻量级的可视化 LLM 流程构建工具,基于 LangChain/LlamaIndex,适合开发者快速原型设计和构建 LLM 应用的核心逻辑,需要自行部署和管理。
    • Dify.AI: 更完整的 LLM 应用开发平台,提供从 Prompt 编排、数据集管理、可视化构建到 API 发布、监控运维的全套功能。既有云服务也有开源自托管选项,适合需要构建、部署并长期运营 LLM 应用的团队或企业。
    • Coze: 字节跳动推出的无代码/低代码 AI Bot 构建平台,极大地简化了创建功能丰富的 AI 聊天机器人的过程。集成了插件、工作流、知识库等能力,并能方便地发布到各种社交平台。非常适合非开发者快速创建交互式 AI 应用。

如何选择?

  • 如果你需要连接各种 SaaS 应用(如 CRM、邮件、表格、项目管理工具等)实现自动化:
    • 追求简单快速,不介意成本:Zapier
    • 需要更复杂的逻辑、更好的可视化、更高性价比:Make
    • 需要最高灵活性、代码控制、自托管或预算有限:n8n
  • 如果你专注于构建基于 LLM 的 AI 应用:
    • 想快速用可视化方式搭建 LLM 核心流程,并且愿意自己部署和管理(开源免费):Flowise AI
    • 需要一个更完整、包含后端管理、监控、API 发布的平台来开发和运营 LLM 应用,并希望有开源自托管选项:Dify.AI
    • 想快速为普通用户创建一个功能丰富的 AI 聊天机器人,并发布到不同平台,且不需写代码:Coze

交叉点:

  • 通用自动化平台 (n8n, Make, Zapier) 也可以集成 OpenAI 等 AI 服务,执行一些 AI 任务,但它们的核心不是 LLM 应用开发。
  • AI 构建平台 (Flowise, Dify, Coze) 也可以通过 API 调用等方式触发其他服务的自动化,但它们的集成广度和通用自动化能力不如前者。

根据你的具体需求、技术背景和预算来选择最合适的平台。希望这个对比对你有帮助!

安装部署记录

docker方式:

bash
mkdir ~/data/n8n_data
docker volume create n8n_data

docker pull n8nio/n8n

后台运行:
docker run -d --rm \
--name n8n -p 5678:5678 \
-v n8n_data:/home/node/.n8n \
-e TZ=Asia/Shanghai \
n8nio/n8n

前台运行:
docker run -it --rm \
--name n8n -p 5678:5678 \
-v n8n_data:/home/node/.n8n \
-e TZ=Asia/Shanghai \
n8nio/n8n

npx方式:

bash
npx n8n

npx运行的缺点,无法使用http proxy,也就无法添加gemini等需要代理的LLM(也就是无法翻墙访问),但是docker方式就可以,直接按照以上docker运行就可以使用系统代理。

应用案例

AI新闻推送工作流

教程:https://www.bilibili.com/video/BV1cDoDYcEgo/

参考以上教程,再自己完善一下,即可完成AI新闻推送工作流。

最终效果:

修改的点:

  • 使用code节点处理merge之后的数据,合并articles字段,再传递给AI处理。code代码可以由目前最强的Gemini-2.5-pro完成。
  • AI引擎换成Gemini-2.5-pro。这个场景下免费的调用次数已经足够了。

n8n使用MCP

需要注意的点:

  • 需要先安装社区节点插件,然后才有MCP节点。
  • LLM需要支持function call才行。
  • MCP需要设置两个,一个List,一个Exe。
  • 多个MCP以后的调用和识别问题是难点。

参考: