Skip to content

n8n 使用教程:构建 AI 自动化工作流的完整指南 ​

很多「自动化」工具实际上只是把一件事从手动变成了半自动——还是需要你盯着、点击、处理异常。n8n 不一样:它是一个真正的工作流引擎,能把分散在不同服务里的任务串起来,全程无人值守地跑。

一个典型的 n8n 工作流是这样的:每天早上 8 点,自动从 RSS 订阅里抓取最新的行业资讯,用 AI 总结成 300 字摘要,按类别整理好,发送到 Slack 频道,同时把原始数据写进 Google Sheets。整个过程需要 0 次手动操作,而搭建这条工作流只需要大约 30 分钟。

这篇教程从安装开始,讲清楚 n8n 的核心概念,然后用三个完整的实战工作流演示常见的 AI 自动化场景。


n8n 是什么,和 Zapier 有什么区别 ​

n8n 是一个开源的工作流自动化工具,可以连接 400+ 种服务(API、数据库、AI 模型、文件系统等),用可视化的节点图(Node Graph)来描述业务逻辑。

n8n 的核心优势:

  • 开源可自托管:可以在自己的服务器或个人电脑上运行,数据不出机房
  • AI 原生:内置 LangChain 集成,可以直接调用 OpenAI、Anthropic、Ollama(本地模型)等,搭建 AI Agent 不需要写代码
  • 无限流程运行:自托管版本没有任务次数限制,Zapier 的免费版每月只有 100 次触发
  • 逻辑控制节点:支持 IF/ELSE 条件判断、循环、错误处理,比 Zapier 更灵活
  • JavaScript 节点:遇到复杂数据处理,可以直接写 JS 代码,不受限于固定的操作类型

和 Zapier 的主要区别:Zapier 更易上手,适合不需要复杂逻辑的简单自动化;n8n 学习曲线稍高,但上限高很多,特别是涉及 AI 处理、复杂数据流转、多步骤条件判断的场景。


安装方式 ​

n8n 有两种使用方式:云托管版和自托管版。

云托管版(n8n Cloud) ​

直接访问 n8n.io 注册账号,免费版可以用 14 天,之后需要付费(最低约 $24/月)。优点是不需要自己管理服务器,缺点是有任务次数限制且费用持续产生。

自托管版(推荐个人用户) ​

自托管可以永久免费,方法有几种:

方法一:Docker(推荐,最省事)

前提:已安装 Docker Desktop。

docker run -it --rm \
  --name n8n \
  -p 5678:5678 \
  -v ~/.n8n:/home/node/.n8n \
  docker.n8n.io/n8nio/n8n

运行后打开浏览器访问 http://localhost:5678,按提示完成初始设置。

方法二:npm 全局安装

前提:已安装 Node.js 18 以上版本。

npm install -g n8n
n8n star

方法三:桌面 App(Windows/macOS)

从 n8n.io/desktop 下载桌面应用,安装后双击启动,适合完全不想接触命令行的用户。

推荐配置:如果只是个人使用或小团队,Docker 方式最可靠,数据挂载到 ~/.n8n 目录,重建容器数据不会丢失。


核心概念:节点、工作流、触发器 ​

在动手操作之前,先理解三个基础概念:

节点(Node)

工作流里的每一步操作都是一个节点。节点分三类:

  • 触发器节点(Trigger):决定工作流什么时候开始,比如「定时触发」「接收 HTTP 请求」「收到 Gmail 邮件时」
  • 动作节点(Action):执行具体操作,比如「调用 OpenAI API」「发 Slack 消息」「写 Google Sheets」
  • 逻辑节点(Logic):控制流程走向,比如「IF 条件判断」「循环处理数组」「合并多路数据」

工作流(Workflow)

多个节点按顺序连接成一条处理链路,数据从触发器流入,经过各节点处理,最终输出到目标服务。每个节点的输出是下一个节点的输入,数据格式是 JSON。

触发器类型

n8n 支持多种触发方式:

  • Schedule Trigger(定时):Cron 表达式,精确控制执行时间
  • Webhook Trigger:接收 HTTP 请求时触发,适合和其他系统集成
  • Chat Trigger:接收对话消息,适合搭建聊天机器人
  • 手动触发:测试工作流时用,点击「Test workflow」立即执行一次

界面操作基础 ​

打开 n8n 后,左侧是工作流列表,点击「New Workflow」创建新工作流,进入可视化编辑界面:

  • 空白画布:在这里拖放节点、连接节点
  • 节点搜索:点击「+」或按 Tab 键,搜索节点名称(英文搜索更准)
  • 节点配置面板:点击节点后在右侧出现,配置参数、认证、数据映射
  • 表达式编辑器:节点参数里点击「表达式」图标,可以用 {{ $json.fieldName }} 格式引用上一步输出的数据

保存和激活:工作流写好后,右上角「Save」保存,然后点击「Active」开关激活。激活后触发器会按设定持续监听,无需开着浏览器。


实战工作流一:每日 AI 资讯摘要推送 ​

目标:每天早 8 点抓取科技资讯,AI 总结,发送到 Slack。

节点链路: Schedule Trigger → RSS Feed Read → OpenAI(总结) → Slack(发送)

步骤详解:

Step 1:定时触发

添加 Schedule Trigger 节点,设置:

  • Trigger Interval:Days
  • Trigger at Hour:8(早上 8 点)
  • Trigger at Minute:0

Step 2:抓取 RSS

添加 RSS Feed Read 节点,填入目标 RSS 地址(比如 https://hnrss.org/frontpage,Hacker News 首页),设置抓取最新的 10 条。

Step 3:调用 AI 总结

添加 OpenAI 节点(或 Anthropic),选择 Chat Model:

  • Model:gpt-4.1-mini(性价比高)
  • User Message 里写:
以下是今天的科技资讯列表,请用中文总结其中最重要的3条,
每条用一句话说明主题,附上原文链接,格式为:
1. [标题摘要] - [链接]
---
{{ $json.items.map(i => i.title + ': ' + i.link).join('
') }}

Step 4:发送到 Slack

添加 Slack 节点,选择发送到的频道,Message 里填:

*今日科技资讯摘要 {{ $now.format('YYYY-MM-DD') }}*
{{ $json.choices[0].message.content }}

注意:Slack 和 OpenAI 节点都需要先在 n8n 里配置「凭证(Credentials)」,即输入对应的 API Key。节点右上角有「New Credential」按钮,按提示填入即可,n8n 会加密存储。

n8n 实战工作流一:每日资讯 AI 总结的节点结构


实战工作流二:AI 邮件自动分类与回复草稿 ​

目标:收到 Gmail 新邮件时,AI 判断类别(客户咨询/内部协作/垃圾/其他),对「客户咨询」类自动生成回复草稿并标记星标。

节点链路: Gmail Trigger(新邮件) → OpenAI(分类+草稿) → IF(判断类别) → Gmail(标记+草稿)

Step 1:Gmail 触发

添加 Gmail Trigger 节点,选择「New Email」事件,连接你的 Google 账号。

Step 2:AI 分类与生成回复草稿

添加 OpenAI 节点,Prompt:

分析以下邮件,输出 JSON 格式(所有字段用单引号):
{
  category: '客户咨询|内部协作|垃圾邮件|其他',
  reason: '分类原因(一句话)',
  draft_reply: '如果是客户咨询,这里给出回复草稿(100字以内);否则为空字符串'
}

发件人:{{ $json.from }}
主题:{{ $json.subject }}
正文摘要:{{ $json.snippet }}

设置 Response Format 为 JSON,确保输出可以被后续节点解析。

Step 3:条件判断

添加 IF 节点,条件:{{ $json.category }} equals 客户咨询。

  • True 分支:继续处理
  • False 分支:什么都不做(或者发一条 Slack 通知「收到非咨询邮件,已跳过」)

Step 4:标记和创建草稿

在 True 分支里添加两个 Gmail 节点:

  1. 第一个:操作选「Add Label」,给邮件加「客户咨询」标签,并标星标
  2. 第二个:操作选「Create Draft Reply」,内容填 {{ $json.draft_reply }}

这样每次收到客户邮件,你打开 Gmail 就能看到已经贴了标签、备好了草稿,只需要核对后点发送。


实战工作流三:本地 AI 文档问答助手(结合 Ollama) ​

目标:把一个本地 PDF 文件夹里的文档喂给本地 AI(Ollama),然后通过 Chat 界面问问题,AI 基于文档内容回答,数据全程不出本机。

前提:已安装并运行 Ollama(见 Ollama 使用教程),已拉取 qwen2.5:7b。

节点链路: Chat Trigger → AI Agent(Ollama) → Vector Store Tool(本地文档) → 回复

Step 1:准备文档索引

在 n8n 里,先创建一个「文档索引工作流」(只运行一次):

  1. Manual Trigger → Read Binary Files(读取 PDF 文件夹里的所有文件)
  2. Extract from File(提取文本内容)
  3. Recursive Character Text Splitter(把文档切成 500 字的片段)
  4. Embeddings Ollama(用 Ollama 的 nomic-embed-text 模型生成向量)
  5. Vector Store - In Memory(存入内存向量库)

Step 2:搭建问答工作流

新建工作流,添加 Chat Trigger 节点(开启 Public Webhook,得到一个本地聊天 URL)。

添加 AI Agent 节点:

  • Chat Model:选 Ollama → qwen2.5:7b
  • Memory:选 Window Buffer Memory(保留最近 5 轮对话上下文)
  • Tools:添加「Vector Store Tool」,指向第一步创建的向量库
  • System Prompt:
你是一个文档助手,专门基于提供的文档内容回答问题。
  回答时只使用文档里的信息,不要凭空捏造。
  如果文档里没有相关信息,直接说明。
  回答用中文。

激活工作流后,打开聊天 URL(http://localhost:5678/webhook/xxxxx/chat),就可以问关于这批文档的任何问题了。

这个场景对处理合同、规章制度、技术文档特别有价值——把公司文档喂进去,直接问「这份合同里的违约金条款是什么」而不需要全文搜索。


常用节点速查 ​

需求节点名称
定时执行Schedule Trigger
接收 HTTP 请求Webhook
发送 HTTP 请求HTTP Request
读取/写 Google SheetsGoogle Sheets
收发 GmailGmail
发 Slack 消息Slack
发微信(企业微信)企业微信
调用 OpenAIOpenAI / AI Agent
调用本地 OllamaOllama Chat Model
读取本地文件Read Binary Files
转 PDF 为文本Extract from File
条件分支IF
数据合并Merge
遍历数组Loop Over Items
延迟等待Wait
运行 JS 代码Code

常见报错与排查 ​

节点变红,提示「认证失败」

检查对应服务的 API Key 或 OAuth 授权是否填写正确,部分服务需要特定权限范围(Scope)。重新建立凭证,旧的凭证有时会过期。

工作流测试时没有数据,Trigger 节点输出为空

手动触发测试时,Trigger 节点本身不会产生真实数据,需要在 Trigger 节点里点「Fetch Test Event」获取真实数据样本,然后再测试后续节点。

AI 节点输出的 JSON 格式不稳定

大模型生成 JSON 有时会有多余的 markdown 格式(如 ````json包裹)。解决方法:在 OpenAI 节点里开启「Response Format → JSON Object」强制输出,或在后面加一个Code` 节点做解析:

const raw = $input.first().json.choices[0].message.content;
return [{ json: JSON.parse(raw.replace(/```json|```/g, '').trim()) }];

Webhook 在外网无法访问

默认的 n8n 只监听本地端口,外网访问需要:1. 在路由器上做端口转发;2. 或者用 ngrok、Cloudflare Tunnel 等内网穿透工具。


FAQ ​

Q:n8n 自托管需要多高配的服务器?

个人使用或小团队(每天运行几十次工作流):1 核 CPU + 512 MB RAM 的最低配 VPS 就够。工作流频繁、有复杂 AI 处理的:2 核 + 2 GB RAM 更稳定。国内低配 VPS 价格约 ¥50-100/月,比 n8n Cloud 订阅便宜很多。

Q:n8n 工作流里的数据安全吗?

自托管版本,数据存在你自己的服务器上,n8n 官方无法访问。API Key 等凭证在数据库里加密存储。只要服务器本身安全,数据安全是有保障的。云版(n8n Cloud)的数据在 n8n 的服务器上,按 GDPR 规范处理。

Q:n8n 能处理大量数据(比如几千行表格)吗?

可以,但需要注意内存使用。Loop Over Items 节点可以分批处理大数组,避免单次处理几千条数据撑爆内存。AI 节点(LLM 调用)处理大数据时建议分批,每批 10-20 条,速度和成本都更可控。

Q:不会写代码能用 n8n 吗?

大多数场景(连接 API、发邮件、触发 AI)不需要写代码,用现有节点拖拽连接就够了。Code 节点(写 JS)只在处理特殊数据格式时需要。如果真的完全不想碰代码,AI 节点里可以用自然语言让 AI 帮你写 Code 节点的内容。

Q:n8n 和 Dify 有什么区别?

定位不同。n8n 是通用工作流自动化工具,擅长连接各种外部服务和系统级自动化;Dify 是 AI 应用开发平台,擅长快速搭建对话机器人、知识库问答、AI 流水线。两者都可以做 AI 自动化,但 n8n 的集成范围更广(能连接更多非 AI 服务),Dify 的 AI 应用构建体验更专注和完善。实际项目里,有时候会同时用:Dify 做 AI 对话部分,n8n 做数据同步和触发器。