如何使用n8n构建AI工作流

n8n 作为一个基于节点的可视自动化平台,用户通过拖放节点的操作,即可达成任务自动化。鉴于其内置了适用于智能体与应用集成的节点,n8n 在多步骤自动化和人工智能链路领域中广受欢迎。
本教程将构建一个小型个人日历智能体。该智能体可监听聊天消息、提取事件详情、并在Google日历中创建日程安排。在此过程中,用户将了解如何完成 n8n 的设置、添加人工智能智能体节点,以及实现各节点间结构化数据的传输。

目录

1.前期准备

  • n8n账户的设置方法

2.个人日历智能体的构建流程

  • 步骤 1:聊天触发器的设置
  • 步骤 2:AI智能体的配置
  • 步骤 3:添加Google日历节点
  • 步骤 4:测试环节

3. 总结

前期准备

  • n8n 账户:具体设置步骤如下。
  • Google账户:此账户用于在Google日历中创建事件。

n8n账户的设置方法

n8n可部署于云端或本地环境。

在云端部署是较为简便的方式,用户可通过访问 n8n官方网站注册并创建免费试用账户,快速启动服务。

对于偏好自托管的用户,可通过npm(Node Package Manager的缩写,是 JavaScript 生态中最常用的包管理工具,主要用于安装、管理和共享代码库(即 “包”)。)安装免费的n8n包,并在本地主机上运行实例。

此外,n8n 也支持通过 Docker 进行自托管。用户可在本地系统中运行 n8n 镜像以部署服务。具体操作步骤如下:

首先,下载并安装 Docker Desktop 应用程序。

随后,在镜像搜索界面(Search Images)查找 n8nio/n8n 镜像:

选择该镜像后,点击“run”按钮,并在配置选项中设置本地主机端口映射。

完成上述步骤后,n8n 服务即可通过本地主机访问。

个人日历智能体的构建流程

现在进入核心构建环节:创建一个能够监听聊天消息、通过AI智能体解析用户请求,并自动在Google日历中创建事件的工作流。该流程将展示 n8n 平台在人工智能驱动自动化任务中的能力。

以下是该工作流程的构建步骤说明:

1. 添加聊天节点,用于接收或模拟输入的聊天消息,并将其传递至后续节点。  

2. 配置AI智能体节点,对输入消息进行自然语言理解,从中提取结构化的事件信息,包括标题、地点和时间。  

3. 添加Google日历节点,将AI智能体输出的结构化数据映射至日历事件字段,并调用 API 创建对应事件。  

步骤 1:聊天触发器的设置

每个工作流程都始于一个触发器,该触发器作为启动后续所有操作的初始事件。本例中,使用一个用于监听新消息的聊天触发器。

1. 访问仪表板页面:https://<你的用户名>.app.n8n.cloud/home/workflows,点击创建工作流。

2.在编辑界面中,点击“Add first step..”,添加“On chat message”作为触发器。

3.在该节点的属性面板中,启用“Make Chat Publicly Available ”选项。启用后,系统将生成一个唯一 URL,可用于分享给他人,使其通过聊天界面发送消息以预约日历活动。

步骤 2:AI智能体的配置

此节点充当该工作流的“大脑”。AI智能体节点具备理解自然语言、进行决策以及提取结构化数据的能力。每个AI智能体主要由四个模块构成:模型、提示、工具和输出。

1. 设置模型

在触发节点后点击 “+” 图标,添加AI智能体节点。该节点需要依赖一个模型来运行。点击 “Chat Model” 下方的 “+” 并选择 “OpenAI Chat Model” 节点。

当前可选择“n8n free OpenAI API credits” 作为用户凭证。未来用户也可以在 OpenAI 官方平台网站上注册,并在“API 密钥”页面创建新的密钥以用于认证。

2. 启用日期时间工具

工具是与智能体连接的功能性节点,可在执行过程中被调用以完成具体操作(如获取数据、格式化日期或运行代码等),而不仅限于文本推理。本例中将使用“日期与时间”工具,将用户输入的可读日期转换为适用于 Google Calendar API 的 Unix时间戳(Unix Timestamp)。

启用步骤如下:

  • 点击AI智能体工具区域下方的“+”按钮;
  • 在列表中找到并选择“日期与时间”工具;
  • 将操作设置为“格式化日期”;
  • 将日期设置为“由模型自动定义(允许智能体自行传递日期)”;
  • 将格式设置为“Unix 时间戳”;
  • 将“输出字段名称”重命名为“unixTime”。

3.添加智能体提示

智能体提示(Agent Prompt)是一组指令与上下文信息,用于定义AI智能体的行为模式、目标及对用户输入的处理方式,配置方法如下:

  • 双击AI智能体节点以进入编辑状态;
  • 将提示来源(用户消息)设置为“在下方定义”;
  • 在提示(用户消息)中复制以下提示信息:
## Overview
You are an agent which helps parse the user message to identify the following details:
1. The title for the meeting
2. The location of the meeting
3. The meeting start and end Unix times.

Here is the User Message: {{ $json.chatInput }}

## Rules for event time identification:
- The current date time now is: {{ $now }}
- Resolve relative phrases like "tomorrow", "next Friday", "in 2 hours" relative to now.
- If duration given (e.g., "30 min" or "2 hours"), compute end_time from start_time.
- If only a start time given, default duration = 60 minutes.

## Getting event_start and event_end unix
- Use the "Date & Time" tool to convert the computed event start and end time to unixtime.

4.设置结构化输出
  • 启用AI智能体中的“Require Specific Output Format”开关;
  • 单击输出解析器下方的“+”,选择“Structured Output Parser”;
  • 复制以下要从用户消息中提取的示例 JSON 结构:
{
    "meeting_title": "Learn Geometry",
    "meeting_location": "Library",
    "event_start": 1759644763,
    "event_end": 1759644764
}

步骤 3:添加Google日历节点

最后一步是接收AI智能体输出的结构化数据,并利用该数据创建日历事件。

  • 在AI智能体节点后点击“+”图标,搜索并添加“Google日历”节点。
  • 在节点配置中,将资源设置为“Event”,操作设置为“Create”。
  • 创建新的 OAuth2 凭证,并登录目标 Google 账户。系统将跳转至 Google 授权页面,提示用户确认并授予n8n对日历服务的访问权限。

完成认证后,需将AI智能体提取的结构化数据映射至Google日历节点的对应字段。此过程实现自动化数据传递与转换。字段映射配置如下:

1.选择开始为:

{{ DateTime.fromSeconds($json.output.event_start).toFormat("yyyy-MM-dd HH:mm:ss") }}

2.选择结束为:

{{ DateTime.fromSeconds($json.output.event_end).toFormat("yyyy-MM-dd HH:mm:ss") }}

3.选择地点为:{{ $json.output.meeting_location }}

4.选择摘要为:{{ $json.output.meeting_title }}

步骤 4:测试环节

大功告成!现在已成功构建一个由人工智能驱动的自动化工作流,能够根据聊天消息在Google日历中创建事件。你可通过界面顶部的开关激活该工作流,点击“打开聊天”按钮即可启动对话并发送测试消息。工作流程执行过程中,可实时查看各节点的输入与输出状态。

执行完成后,可点击Google日历节点,在结果面板中查找“htmlLink”字段,该字段包含指向所创建日历事件的直接链接,用户可通过该链接在浏览器中查看事件详情。

总结

本教程演示了如何在 n8n 的可视化界面中构建一个简单的人工智能驱动自动化工作流。其核心优势在于支持通过自定义智能体、提示指令和工具链,灵活构建符合特定需求的个性化自动化方案。

n8n 的生态系统依托社区贡献的模板持续扩展,用户可复用数千个预建工作流,也可分享自己的创作。若本教程对实践有所助益,建议进一步尝试扩展当前工作流功能,并参考 n8n 官方文档深入了解各类节点的使用方式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老贾的AI世界

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值