🧙欢迎来到 n8n 中文教程

type
status
date
slug
summary
tags
category
icon
password
author
标签
第三方接入
notion image

0. 教程作者

本教程由:
  • 评论尸:写过几篇稿子,会写一点代码;
  • 汐笺:他的老家在中国 GDP 排第六,但是没有机场;
提供。
如果你有任何诉求,可以通过如下方式联系到教程的作者。
社交媒体:
即刻
博客
微信群:
如果你想要加入 n8n 中文微信交流群,欢迎添加汐笺的微信号:otaku_xijian,备注“n8n”即可。
添加好友之后会拉你入群,欢迎在群内讨论 n8n 使用心得。
notion image
给作者们买一杯咖啡:
如果你认为这些文档的内容写的不错,欢迎给作者打赏一杯咖啡,这是我们更新下去的最大动力:
notion image
🪧
利益相关声明:本教程中的外链可能包含 referral code,两位教程的主要作者将从这些链接中获益。

1. 这是什么教程?

这是一个以“低代码实践”为主题的教程,面向非程序员群体分享一系列自动化提效的知识。
教程是基于可支持私有化部署的开源低代码平台 n8n 展开的,但是其中涉及到的很多思路方法在其他低代码平台理论上来说也适用。
这个教程的名字叫做“简单易懂的现代魔法”,我们把基于低代码平台做一些自动化流程这件事称之为魔法,是因为下面这几个原因:
  • 低代码平台本身具有一些局限性,并不适合用来处理大规模的并发请求,更适合处理一些离线任务和复杂的串行任务,比起工程/工业制品,n8n 生产出来的流程更像是手工艺制品,或者是哈尔的移动城堡;
  • 在实际使用低代码平台的时候会牵扯到很多的第三方服务,这些第三方服务(例如 Google Cloud)本身就非常复杂,而我们其实只需要用到其中一小部分,所以很多时候会出现“虽然我对这个事情不完全理解但是这个 work 了我们就先进行下一步吧”的情况,非常的 Magic!
  • 低代码平台不适合直接对外提供 C 端服务,更适合给小团队 or 个人制作提效工具,对于个人来说较差的稳定性以及较差的可维护性是可以接受的,这意味着可以做很多在软件工程层面被视作为禁忌的操作,比如跨系统写库所以从这个角度来说,基于低代码平台编程和传统编程的思路并不是完全一致;
  • 教程的两个作者都是非常资深的 OTAKU,对于我们来说能拿一个轻小说的标题给教程起名字这件事本身就很具有吸引力;
希望每一位阅读了这个教程的人,都可以打造属于自己的“移动城堡”。
本教程由 Notion Next 驱动,这是一个直接将 Notion 转化为独立博客的开源项目。我们最初本想用飞书和腾讯文档来做这件事,但这两个一个收费政策不明朗,另一个 SEO 效果不佳,于是最终选择了 Notion Next。

2. 低代码平台的学习曲线

什么样的人适合学习使用低代码平台

低代码平台的学习曲线对于不同人来说陡峭程度是完全不同的。
如果你是一个从来没有接触过计算机编程,也没有在互联网公司从事相关工作的人,那么学习曲线会变得非常陡峭,首先你需要对基本的程序逻辑有一个理解。
如果你是一个产品经理或者运营,那么大量的账号注册,Token 配置工作会一定程度上耽误你的时间。举个例子来说,如果你想要用 n8n 链接你的 Google Sheets 中的表格作为数据源:
  1. 你需要首先注册 Google Cloud
  1. 创建一个 App(项目)
  1. 开启相关 Google Sheets API
  1. 把 Token 加入到 n8n 中
  1. 在 n8n 的界面用 Aouth 登录个人账号
  1. 把需要用到的表格的 url 贴到 n8n 的界面
看上去很麻烦对不对?幸运的是你拥有这个教程,这个教程的作者之一就是一个十指不沾阳春水的产品经理,你所有的困扰也是作者的困扰,这个教程可以很大程度上降低学习曲线的陡峭程度。
这个文档不会指导你每一个服务应该怎么配置,但是会详细的描述我们应该如何借助搜索引擎、ChatGPT 和 n8n 的官方文档来自学如何配置,比起授人以鱼,我们更加希望授人以渔。
这些都是n8n的官方文档不会教你的,毕竟低代码平台只负责帮助解决你不会写代码的问题。在他们看来这是别人家服务的一部分,不在自己的负责范畴内。
如果你有过大量的基于开源代码部署个人网站的经历,那么 n8n 的学习曲线没有那么陡峭,毕竟大部分情况下人类的工作是负责帮助 AI 搭建“脚手架”而非真的去撰写复杂的逻辑。
有一件事情是我们想强调的,在使用低代码平台的时候需要以解决问题为导向,中间可能会遇到很多问题,比如我在第一次配置 Google Cloud 的时候完全不能理解它的平台设计思路,实际上我是在撰写这段文字的时候才搞清楚了 Google Cloud 的项目和 App 之间的关系,但是这不妨碍我们用它来解决自己的问题。
<ins/>

使用低代码平台的背景知识清单

我们整理了一个背景知识清单,方便大家参考:
入门:如果你准备使用大量现成的、封装好的节点来完成自己的任务
掌握程度
技能
【必须】
具备基本的逻辑概念,对程序的输入、输出、循环、函数、条件判断等概念有基本的了解;
【必须】
具备科学上网的能力;
【必须】
动手能力和配置能力,尽管 n8n 的易用性优化做的不错,但是不代表 n8n 对接的第三方服务配置都是完善的;
【可以借助工具】
一定程度的英语阅读能力;
进阶:如果你准备定制开发一部分没有现成节点的功能,比如通过 API 调用一个小众服务
掌握程度
技能
【必须】
了解 POST、GET、Webhook 等常见网络请求与通信协议;
【必须】
掌握与 ChatGPT 结对编程的能力,并且能够读懂 JS 或者 Pyhton 脚本;
【可以借助工具】
能够熟读接口文档和时序图;
【可以借助工具】
计算机网络与排查;
尽管讲述了这么多困难,我们仍然认为 n8n 极大程度的降低了“编程”的门槛,接下来我们会详细论述为什么我们认为 n8n 是值得每一个人学习的低代码平台。

3. 为什么低代码在当下越发值得学习?

从 ChatGPT 上线以来,有一句流行语说“AI 不会淘汰人,只会淘汰那些不会用 AI 的人”。
然后很多非技术出身的人,对 AI 的认知始终处于朦胧的状态——有时,他们觉得 AI 无所不能,但有时又觉得 AI 什么都做不到。
出现这种状态的原因很简单,对于非技术人员来说,无法分清 AI 作为一种产品和 AI 作为一种技术分别的能力与局限性。
比如,我的同事会问我:为什么他的 ChatGPT 不能批量处理表格中的数据。
这是由于 ChatGPT 是一个产品,在工程设计上,它不被允许在对话过程中自我调用。这意味着,你无法让 ChatGPT 根据 Excel 中的某一列单元格里的内容,去输出另一列单元格里的内容。
还有同事会问我:我为什么用你给我的 OpenAI API,无法实时搜索互联网上的信息。
这是因为 API 不是一个产品,它不具备任何大模型之外的工程型能力,如果希望既能搜索资料,又使用 API 的某些能力,那么就需要额外搭建一个工具,帮助 API 来读取互联网上搜索到的信息。
如果我们把 AI 比做人,那么我们可以这样理解:
AI 产品(如 ChatGPT、豆包) - 是一个被厂商在手里塞满了固定工具的人,它除了对话和思考,还可以使用厂商规定的功能帮你完成一些任务。但由于成本和安全的限制,一般厂商会在它的思考能力、输出能力和能使用什么工具上有所限制。
AI API - 是一个手中没有任何工具的人,你除了和它对话和思考(使用它脑内的知识),它无法帮你做任何其它的事情。但是,你可以将一些自己需要的工具(比如 Excel、Notion)放到它的手上,这个时候它就能按照你的要求行动。
这落在实际使用上的结果,就是 ChatGPT 可以直接阅读阅读 PDF 文档,但你的 PDF 文档可能不能超过 10 万字(受限于 OpenAI 的成本)。而 GPT-4o 的 API 无法直接读取 PDF,但当你搭建好一个工作流让它能够读取 PDF 的时候,它就能阅读 100 万字的 PDF,但成本是由你来承担的。
这个时候我们就会发现,为了让 AI 能够发挥它最大的作用,我们最好是使用 API 的方式来使用 AI。但同时,为了让这个“双手自由”的 AI 手里能用上趁手的工具,我们需要自己为它打造一些工具,也就是设计一些工程,让 AI 能够与这个世界互动。
但问题来了:我原本就不是技术人员,我如何打造工具给 AI 来用呢?
那就是 n8n。
n8n 是一个图形化的低代码自动化流程平台,在 AI 出现之前它最初的用途是自动化你的一些日常工作流——也就是你经常看到的那种“学会 Python 工作不愁”的应用场景。
它允许你用图形化的界面,以拖拽的形式构建工作流。
对于我们来说,n8n 的工作流可能只是帮助我们节省了一些时间,而对于 AI 来说,n8n 则像是打开了与赛博世界中其他任何东西互动的通道。
AI 作为一种程序,与这个世界中的其他部分互动的方式与我们其实是一样的。
以整理数据为例,我们操作方式是用鼠标打开 Excel,打开指定文件,用眼睛找到指定的行与列,输入想要修改的数值,再保存文件。
对 AI 来说,它没有办法使用鼠标,所以它需要一个 OpenFile 函数来打开文件;它没有眼睛,所以需要一个 EditFields 的函数来查找需要修改的单元格;最后它还需要一个 SaveFile 的函数来把修改完的文件保存回硬盘。
在不同的编程语言中,这些函数有不同的名字,但在 n8n 里,所有的这些都变成了可视化的节点:
notion image
那么,AI 如何介入这个流程呢?我们只需要在中间加入一个 AI 节点:
notion image
如此一来,我们就实现了让 AI 能够读到 Excel 文件里的数据,对数据进行修改,然后再写回本地这样一个流程了。
当然,这只是很简单的一个例子,你还可以用 n8n 让 AI 与超过 1000 种节点沟通,几乎让 AI 与赛博世界中的所有其他主体畅通无阻。而在这个过程中,你几乎不需要编写任何代码,仅需拖拖拽拽,设置一些参数即可。
至此,你终于成为了一个“会用 AI 的人”。
<ins/>

4. 为什么选择 n8n

n8n与主要竞争对手之间的差异

市面主流的低代码平台
Coze
Zapier
ComfyUI
Dify.ai
部署类型
私有化/云服务
云服务
云服务
私有化
私有化/云服务
AI接入偏好
文字
文字
图/文
图片
图/文
第三方服务集成方式
半封装
全封装
全封装
半封装
半封装
集成数量
1007
375
7317
/
40
AI调用方式
BYOK
套餐
BYOK
BYOK
BYOK/套餐
云服务起始价
0 元/157 元
套餐
144 元
/
0 元/427 元
  • BYOK:英文全称为Bring Your Own Key,自己掌管密钥。意思就是,你要自备各类需要调用服务的 API Key,也就是自己花钱去别的平台买 API 用量的意思。

n8n 的主要优势

部署简单
支持 Docker 一键私有化部署,关于如何部署 n8n,可以参考文档:
🚢
选择适合的 n8n 安装部署方式
可接入服务强
n8n 是个人开发者或小型企业中的全能王,它部署快捷,社区繁荣,能接入的第三方应用(比如接入 Google 日历、Notion 等)较多。
并且自部署版的 n8n 有着丰富的本地调用能力,比如对本地数据库、文件的增删改查,对服务器进行操作等等。这意味着,你可以在不改动现有业务系统的情况下,让 n8n 成为寄生系统,为原有的工作流增添自动化和 AI 功能。
对大模型友好
内置图形可视化的 LangChain 节点,对 AI 支持良好。
LangChain 是一个十分热门的编程框架,用于更快速的搭建 AI Agent,它的主要作用是将所有和大模型相关的配套代码封装为组件,以及提供一些现成的链(你也可以理解为函数),让你可以用更短的代码实现高级 Agent 的构建。
在 n8n 中,LangChain 被可视化为 Agent Node,它与 n8n 中的其他 node 有一个显著区别:它包含子节点。
notion image
其实看到这个节点的示意图,我们就会发现 LangChain 的好处了,你可以在不改动 Prompt 及整个工程设计的情况下,更方便的替换 Model(模型)、Memory(记忆)、Tool(工具) 和 Output Parser(解析器)等。方便你调试不同组合形式的实际效果。
支持半封装模式,兼顾低代码与代码
和 Coze 与 Dify.ai 相比,n8n 在无代码与代码之间有非常完美的平衡。对于已经在 n8n 节点库中的第三方服务来说,你可以通过拖拖拽拽完成接入。但如果你要实现的功能并不在官方的节点库中,n8n 也支持使用 HTTP Request 来接入几乎任何开放 API 的第三方服务。
并且,n8n 的 Code 节点,支持在服务器端运行 JavaScript 与 Python 两种代码。这使得 n8n 非常适合与 ChatGPT 编程。
因为许多用 ChatGPT 编程的零基础小白都曾发现,受限于使用形式,ChatGPT 无法为你编写一个工程,而更擅长写出执行某个步骤的代码片段。而 n8n 则正相反,它允许你像搭积木一样用拖拽的形式构建工程,但当你缺少一块特定“积木”的时候,它又允许你从别处 Copy 一段代码进来——这正是 ChatGPT 能干的事儿。

n8n 适合做什么?

n8n 适合一切关于自动化的事情,包括在自动化中使用 AI。
这里有一些官方的例子,比如:
notion image
notion image
notion image
notion image
还比如评论尸曾在博客里分享过,通过 n8n 将 Inoreader 中收藏的文章自动推送到 notion 并生成摘要。
简而化之,所有原本你需要手工获取一堆数据,进行一些处理,再搬运到另一个地方的工作,都是 n8n 最擅长的事情。当然,这里面包括将 AI 引入现有的工作流。
<ins/>

n8n 不适合做什么?

n8n 不适合做 to C 应用
虽然 n8n 的 ChatFlow 支持将聊天界面暴露给外部用户,但其私有部署版本从构架设计上就不是为 C 端使用,在性能、安全性和前端界面上都不太行。而且,n8n 除聊天界面以外的其他界面也无法让未登录 C 端用户使用。
如果你需要一个 low-code 能做出直接让用户使用的 App,可以试试 AppSmithBudibase,这两者也都可以与 n8n 搭配使用,也就是分别负责前后端。
AppSmith 或 Budibase 像是一个具备了 C 端界面的图形数据库,它本身可能只能做一些“增删改查“的操作,很难支持复杂的长链路逻辑,而这恰好是 n8n 的强项。
可以由 AppSmith 或 Budibase 负责进行用户端交互,做一些简单的数据增删改查工作,让 n8n 做离线任务定期处理他们的数据库,或者让 AppSmith 或 Budibase 把每次请求都打到 n8n,由 n8n 完成处理后再存入自己的数据库中。
需要注意的是,上面所说的事情是理论上可行的,C 端场景的高并发、易用性、可维护等要求意味着对于使用者的工程水平会提出更高的要求,这个对于大部分非技术人员来说还是有很高门槛的,而一旦开始追求满足这些要求,写代码本身可能会比使用低代码平台更简单一些。
n8n 官方也没有提供针对高并发场景的压测报告,所以如果要做 C 端应用,也建议只在 MVP 阶段使用 n8n 驱动。
notion image
n8n 不适合图片、音频、视频 Workflow
如果你需要自动化的东西主要是使用 AI 进行图片、音频和视频创作,那么不建议使用 n8n。
n8n 仅支持 OpenAI 的 DALL-3 模型,且其对图片、音频和视频在本地的处理能力也有限。

5. 附属工具栈

沉浸式翻译:一个浏览器插件,能够让你将 AI 引入到网页翻译中来。有了它,你能够更加顺畅的浏览 n8n 官方的文档与论坛,除此之外,它还支持在网页的文本框中按三下空格自动将你的语言翻译成英文,这样你在官方论坛提问也更方便了。
n8n 大师(GPTS):无论你是怎样的 n8n 高手,又或者是曾经有过其他低代码项目的经验,但在实际使用过程中难免会遇到一些个案性的问题。
这类问题在英文社区和本知识库中可能都没有提及,虽然你可以在我们的社群或官方论坛中提问,但一般问题需要几小时或几天才能获得解答。为了能够不耽误工作的将项目快速推进下去,我们十分建议你在开始学习 n8n 的时候,就使用 ChatGPT 或 Gemini 作为结对编程的助手。
经过测试,n8n 官方文档及部分论坛内容是 GPT-4 训练的一部分,因此 ChatGPT 可以非常准确的回答关于 n8n 的问题。
本社群提供了一个 GPTs,该 GPTs 会自动搜索官方文档、论坛和本知识库的内容来推理你可能的问题,你可以通过上面的链接访问。
你甚至可以直接将出错的截图直接发给 ChatGPT,问问它是出了什么那问题,如何解决。
广告
Loading...
目录