Skip to content

n8n + AI 实践

学习目标:掌握 n8n 的 Docker 部署、AI 节点配置、自定义工作流设计——最终能用 n8n 搭建一条完全由你自己控制的 AI 自动化流水线

预计时间:40 分钟

难度等级:⭐⭐⭐☆☆


一、n8n 是什么

先说结论:如果 Zapier 是 iPhone,n8n 就是 Android——你得自己折腾,但折腾完了什么都能干。

n8n 是一个开源的工作流自动化平台,2019 年发布,2026 年 GitHub Star 已突破 56k。核心特点:

  • 完全开源:代码在 GitHub 上,你可以审查、修改、自己部署
  • 自部署:跑在你自己的服务器上,数据不出网
  • 最灵活:支持任意 JavaScript / Python 代码节点、自定义 API 调用、原生 AI 节点
  • 免费:自部署完全免费,没有任何任务数限制

n8n 名字的由来

n8n 读作 "n-eight-n",代表它最开始的架构理念——把 N 个节点串联成 N 个节点的工作流(n-to-n workflow)。

1.1 什么时候该用 n8n

你要做自动化,先问三个问题:

├─ 数据是否敏感?(客户数据 / 公司内部信息)
│   └─ 是 → n8n 自部署是唯一选择

├─ 预算多少?
│   ├─ 0 → n8n 免费
│   └─ $50/月 → Zapier Pro

├─ 需要多灵活?
│   ├─ "Zapier 能干的就够了" → Zapier
│   └─ "我需要自定义代码和复杂路由" → n8n

└─ 三个问题看完 → 如果你有 2 个以上选右边 → 上 n8n

二、Docker 一键部署

n8n 部署的方式很多,最推荐的是 Docker——5 分钟的事。

2.1 环境要求

  • Docker 和 Docker Compose(按操作系统装好)
  • 一台能上网的电脑(个人电脑也行,VPS 更好)

2.2 部署步骤

创建一个 docker-compose.yml 文件:

yaml
version: '3.8'

services:
  n8n:
    image: n8nio/n8n:latest
    container_name: n8n
    ports:
      - "5678:5678"
    environment:
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=admin
      - N8N_BASIC_AUTH_PASSWORD=your_password_here
      - WEBHOOK_URL=https://your-domain.com  # 如果需要外部访问
    volumes:
      - ./n8n_data:/home/node/.n8n
    restart: unless-stopped

然后在同目录执行:

bash
docker compose up -d

打开浏览器访问 http://localhost:5678

  1. 用你设置的账号密码登录
  2. 进入 Dashboard → 完成

全程不超过 5 分钟。 如果中间卡住了,一般是 Docker 没装好或端口被占用。

2.3 其他部署方式

没有 Docker 环境?还有这些选择:

方式命令 / 说明适合场景
npm 全局安装npm install n8n -g && n8n start本地开发测试
n8n.cloud官方托管版(付费,$20/月起)不想自己维护服务器
Railway / Render一键部署到云平台快速上云
KubernetesHelm Chart 部署企业级部署

花叔的建议:先在本地用 Docker 搭一个,跑通了再考虑要不要搬到服务器上。本地跑 n8n 够了——需要外部访问时才需要 VPS。


三、界面快速导航

部署完成后,n8n 的编辑器长这样:

┌────────────────────────────────────────────────────────┐
│  n8n  │  Workflows  │  Credentials  │  Settings         │
├────────────────────────────────────────────────────────┤
│                                                        │
│  ┌────┐                                                │
│  │    │  [Node 搜索 / 拖拽区]                           │
│  │ 节点 │                                                │
│  │ 面板 │  +── [触发器节点]                               │
│  │    │  +── [动作节点]                                  │
│  │    │  +── [AI 节点]                                   │
│  │    │  +── [代码节点]                                  │
│  │    │                                                │
│  └────┘                                                │
│                                                        │
│  ┌──────────────────────────────────────┐              │
│  │       画布(拖拽编排区域)             │              │
│  │                                      │              │
│  │    [Schedule Trigger]                │              │
│  │         │                            │              │
│  │         ▼                            │              │
│  │    [HTTP Request]                    │              │
│  │         │                            │              │
│  │         ▼                            │              │
│  │    [AI: Summarize]                   │              │
│  │         │                            │              │
│  │         ▼                            │              │
│  │    [Notion]                          │              │
│  └──────────────────────────────────────┘              │
│                                                        │
│  [Executor: ✅ Workflow Active]  [Save]  [Execute]     │
└────────────────────────────────────────────────────────┘

关键区域:

区域说明
节点面板(左侧)所有可用节点列表,搜索 / 拖拽到画布
画布(中间)拖拽连接节点,编排工作流
节点编辑器(选中节点时)配置选中节点的参数
执行记录(底部)查看运行日志和错误信息

四、AI 节点接入

n8n 原生支持 AI 节点,不需要额外插件。

4.1 支持的 AI 节点

n8n 提供了丰富的 AI 相关节点(截至 2026 年):

节点功能
OpenAI调用 GPT-4o、GPT-4o-mini、DALL-E 等
Anthropic调用 Claude 3.5 Sonnet、Claude 3 Haiku 等
Hugging Face调用 Hugging Face 上的任意模型
Ollama连接本地运行的 Ollama 模型
LM Studio连接本地 LM Studio
AI Agentn8n 的自主 Agent 节点(类似 Zapier Agents)
AI TransformAI 驱动的数据处理
Embeddings向量嵌入生成
Vector Stores向量数据库操作(Qdrant、Pinecone 等)

4.2 配置 OpenAI 节点

这是最常见的方式:

  1. 在节点面板搜索 "OpenAI"
  2. 拖拽到画布
  3. 双击节点 → 配置参数:
Credentials:
  └─ API Key: sk-xxxxxxxxxxxxxxxx  ← 你的 OpenAI API Key

Operation: Create Message
Model: gpt-4o
Messages:
  └─ 系统提示:你是一个有用的助手
  └─ 用户消息:{{ 上一步的输出 }}

Options:
  Temperature: 0.7
  Max Tokens: 2000

关于 API Key

如果你没有 OpenAI 的 API Key,也可以用 Anthropic(Claude)或者对接国内的模型(DeepSeek、月之暗面等)。n8n 的 HTTP Request 节点可以对接任意 API——这是它比 Zapier 灵活的地方。

4.3 AI Agent 节点(进阶)

n8n 的 AI Agent 节点比普通 LLM 节点更强大——它可以自主调用工具:

[Trigger] → [AI Agent]

               ├─ Tool 1: Web Search
               ├─ Tool 2: Calculator
               ├─ Tool 3: Database Lookup
               └─ Tool 4: Send Email

配置方式:

json
{
  "node": "AI Agent",
  "prompt": "你是我的研究助手。用户提问后,请自主决定是否搜索网页、查数据库或直接回答。",
  "tools": [
    "HTTP Request(用于搜索)",
    "Notion(用于查笔记)"
  ],
  "model": "gpt-4o",
  "maxIterations": 5
}

Agent 会根据用户的问题,自主决定"要不要搜索"、"要不要查数据库"、"要不要调用 API"——你不需要写死每一步。


五、自定义工作流设计

5.1 一条完整的工作流

我们搭一条比 Zapier 更复杂的:监控 Hacker News → AI 筛选 → 翻译 → 存 Notion → 发飞书通知。

步骤 1:触发器

添加 Schedule Trigger 节点:

Rule: Every 2 hours

步骤 2:抓取数据

添加 HTTP Request 节点:

Method: GET
URL: https://hacker-news.firebaseio.com/v0/topstories.json

这里 Hacker News API 返回的是 ID 列表,需要用后面的节点处理。

步骤 3:获取文章详情

再加一个 HTTP Request 节点,循环获取每篇文章详情(用 n8n 的 Loop Over Items 模式):

Method: GET
URL: https://hacker-news.firebaseio.com/v0/item/{{ $json.id }}.json

步骤 4:AI 筛选和总结

添加 OpenAI 节点:

Operation: Create Message
System Prompt: 判断文章是否与 AI/机器学习相关。如果相关,用中文总结要点。
User Message: 文章标题:{{ $json.title }}  摘要:{{ $json.text }}

步骤 5:条件过滤

添加 IF 节点:

Condition: {{ $json.is_ai_related }} equals true

如果和 AI 相关 → 继续;不相关 → 结束。

步骤 6:保存到 Notion

添加 Notion 节点:

Operation: Create Page
Database ID: 你的 Notion 数据库 ID
Title: {{ $json.title }}(中文)
Content: {{ $json.summary }}

步骤 7:发送通知

添加 TelegramSlack 节点,发送消息通知你。

5.2 完整结构

[Schedule Trigger: 每 2 小时]

[HTTP Request: 获取首页 Top Stories]

[Loop: 遍历每篇文章]

[HTTP Request: 获取文章详情]

[OpenAI: 判断 + 总结]

[IF: 和 AI 相关?]
    ├─ Yes → [Notion: 创建页面]
    │          ↓
    │         [Telegram: 发送通知]

    └─ No → [End]

花叔的实战建议

n8n 的工作流如果出错了,排查顺序是:

  1. 检查每个节点的右下角是否有红色 ❌
  2. 点击出错节点 → 看 "Output" → 看错误信息
  3. 最常见的问题:数据格式不对、API Key 失效、网络不通
  4. 用 "Execute Node" 单独测试出问题的节点,比跑完整的 Flow 快得多

六、n8n vs Zapier:怎么选

6.1 核心差异

维度Zapiern8n
价格$19.99/月起,AI 功能 $49/月免费(自部署)
部署SaaS,注册即用需自己部署 Docker
数据隐私数据经过 Zapier 服务器数据本机处理
灵活度线性流程 + 模板任意拓扑、代码节点、复杂路由
AI 支持内置 AI 步骤(GPT-4o)原生 OpenAI/Anthropic/Ollama
集成数量5000+400+(社区更多)
稳定性平台保障取决于你自己的运维
社区商业支持开源社区(56k+ Star)
学习曲线平坦中等

6.2 花叔的选型建议

预算充足,不差钱 → Zapier
(省心,出问题找官方客服)

技术背景,完全可控 → n8n
(免费 + 灵活 + 数据本地,但需要自己维护)

最推荐的路:
先在 Zapier 上跑通你的业务逻辑
如果发现 Zapier 不够用 / 太贵 → 迁移到 n8n
两个不冲突——很多场景可以混用

6.3 能不能混用?

能。而且很多人就是这么干的:

  • 对外交互用 Zapier:邮件、Slack、Google Sheets(这些 Zapier 集成最好)
  • 内部处理用 n8n:AI 处理、数据加工、自定义逻辑
  • 两者通过 Webhook 互通:Zapier 触发的 Webhook → n8n 处理 → n8n 的 Webhook 回 Zapier

七、模板库使用

7.1 官方模板

n8n 内置了模板库,点击 "Templates" 标签就能看到:

  • AI News Scraper:AI 新闻抓取和总结
  • Customer Support Agent:客户支持自动回复
  • Email Digest:每日邮件摘要
  • SEO Monitor:SEO 数据监控
  • Social Media Poster:社交媒体自动发布

7.2 社区模板

GitHub 上也有大量社区贡献的模板:

7.3 使用模板的流程

  1. 在 n8n 编辑器点击 "Templates"
  2. 搜索关键词(如 "AI summary")
  3. 点击模板 → "Use workflow"
  4. 按提示配置缺失的节点(如 API Key、数据库连接)
  5. 测试运行 → 调整参数 → 上线

八、进阶技巧

8.1 代码节点

n8n 支持在流程中插入 JavaScript 或 Python 代码:

javascript
// Code 节点示例
const items = $input.all();

// 处理数据
const processed = items.map(item => ({
  title: item.json.title.toUpperCase(),
  summary: item.json.summary.substring(0, 200),
  tags: ['auto-generated', 'ai'],
  processedAt: new Date().toISOString()
}));

return processed;

8.2 错误处理

每个节点都可以配置错误处理策略:

策略行为
Stop Workflow出错时停止(默认)
Continue (Error Output)出错时跳过错,继续执行
Retry自动重试(可设次数和间隔)

8.3 子工作流

n8n 支持将一个工作流作为另一个工作流的子流程调用:

[主工作流] → [Execute Workflow 节点] → [子工作流]

适合把通用的处理逻辑(比如"AI 总结")抽成子工作流,多处复用。


本节小结

回顾要点

✅ n8n = 开源 + 自部署 + 最灵活,适合预算有限或数据敏感的场景

✅ Docker 部署 n8n:5 分钟搞定,从 docker compose up 到访问 Dashboard

✅ AI 节点原生支持 OpenAI / Anthropic / Ollama,还可以用 HTTP Request 接任意模型

✅ 复杂工作流示例:定时抓取 HN → AI 筛选 → 翻译 → 存 Notion → 通知

✅ n8n vs Zapier:不是"谁更好",而是"谁更适合"——两者可以混用

✅ 模板库 + 代码节点 + 错误处理 = 打造可靠自动化的基本功


← 返回章节目录 | 继续学习:Make + AI 工作流 →

最近更新

基于 MIT LICENSE 许可发布