跳到主要内容

使用 n8n 构建 AI 聊天代理#

欢迎来到使用 n8n 构建 AI 工作流的入门教程。无论你之前是否使用过 n8n,还是第一次接触,我们都将向你展示 AI 工作流的构建模块如何组合在一起,并构建一个可正常工作的 AI 驱动聊天代理,你可以轻松地根据自己的需求进行定制。

"完成的工作流截图"

许多人发现以视频格式接收新信息更容易。本教程基于 n8n 的一个热门视频,链接如下。你可以观看视频或阅读这里的步骤,或者两者都看!

你需要准备什么#

  • n8n:对于本教程,我们推荐使用 n8n cloud 服务 - 新用户可以免费试用!对于自托管服务,请参考安装页面
  • 聊天模型的凭据:本教程使用 OpenAI,但你也可以轻松使用 DeepSeek、Google Gemini、Groq、Azure 等(详见子节点文档)。

你将学到什么#

  • n8n 中的 AI 概念
  • 如何使用 AI Agent 节点
  • 使用聊天输入
  • 连接 AI 模型
  • 自定义输入
  • 观察对话
  • 添加持久化

n8n 中的 AI 概念#

如果你已经熟悉 AI,可以跳过本节。这是对 AI 概念以及如何在 n8n 工作流中使用它们的基本介绍。

AI 代理建立在大型语言模型 (LLM) 之上,LLM 通过预测下一个词来根据输入生成文本。虽然 LLM 只处理输入以产生输出,但 AI 代理增加了面向目标的功能。它们可以使用工具,处理输出,并做出决策来完成任务和解决问题。

在 n8n 中,AI 代理表示为一个具有一些额外连接的节点。

特性LLMAI 代理
核心能力文本生成面向目标的任务完成
决策能力
使用工具/API
工作流复杂度单步多步
范围生成语言执行复杂的实际任务
示例LLM 生成一段文字代理安排约会

通过将 AI 代理作为节点整合,n8n 可以将 AI 驱动的步骤与传统编程相结合,实现高效的实际工作流。例如,简单的任务(如验证电子邮件地址)不需要 AI,而复杂的任务(如处理电子邮件的内容或处理多模态输入(例如图像、音频))则是 AI 代理的绝佳用途。

1. 创建新工作流#

当你打开 n8n 时,你会看到以下两种情况之一:

  • 空白工作流:如果你没有工作流并且是第一次登录。使用这个工作流。
  • 概览页面上的工作流列表。选择 通用创建资源图标 按钮来创建新工作流。

2. 添加触发器节点#

每个工作流都需要一个起点。在 n8n 中,这些被称为'触发器节点'。对于这个工作流,我们想从聊天节点开始。

  1. 选择添加第一步或按 Tab 键打开节点菜单。
  2. 搜索 Chat Trigger。n8n 会显示与搜索匹配的节点列表。
  3. 选择 Chat Trigger 将节点添加到画布。n8n 会打开该节点。
  4. 关闭节点详情视图(选择返回画布)以返回画布。

关于 Chat Trigger 节点的更多信息...

触发器节点在有事件导致其触发时生成输出。在这种情况下,我们希望能够输入文本来触发工作流运行。在生产环境中,此触发器可以连接到 n8n 提供的公共聊天界面或嵌入到其他网站中。为了启动这个简单的工作流,我们将只使用内置的本地聊天界面进行通信,因此不需要进一步设置。

查看工作流文件

3. 添加 AI Agent 节点#

AI Agent 节点是向工作流添加 AI 的核心。

  1. 选择触发器节点上的添加节点 添加节点图标 连接器以打开节点搜索。
  2. 开始输入 "AI" 并选择 AI agent 节点来添加它。
  3. 现在将显示 AI agent 的编辑视图。
  4. 有一些字段可以更改。由于我们使用的是 Chat Trigger 节点,因此不需要更改提示的来源和规范的默认设置。

查看工作流文件

4. 配置节点#

AI 代理需要附加聊天模型来处理传入的提示。

  1. 通过点击 AI Agent 节点底部 Chat Model 连接下方的加号 添加节点图标 按钮来添加聊天模型(这是节点底部的第一个连接)。
  2. 将出现搜索对话框,过滤为"语言模型"。这些是 n8n 内置支持的模型。在本教程中,我们将使用 OpenAI Chat Model
  3. 从列表中选择 OpenAI Chat model 将其附加到 AI Agent 节点并打开节点编辑器。可以更改的参数之一是"模型"。请注意,对于基本的 OpenAI 账户,只允许使用 'gpt-4o-mini' 模型。

选择哪个聊天模型?

如前所述,LLM 是根据给定的提示生成文本的组件。LLM 必须被创建和训练,这通常是一个密集的过程。不同的 LLM 可能具有不同的能力或专长,这取决于它们训练时使用的数据。

5. 添加凭据(如果需要)#

为了让 n8n 与聊天模型通信,它需要一些凭据(登录数据,使其能够访问不同在线服务上的账户)。如果你已经为 OpenAI 设置了凭据,这些凭据应该默认出现在凭据选择器中。否则,你可以使用凭据选择器来帮助你添加新凭据。

显示 OpenAI 凭据对话框的图片

  1. 要添加新凭据,请点击显示"选择凭据"的文本。将出现添加新凭据的选项 显示创建新凭据按钮的截图
  2. 此凭据只需要一个 API 密钥。添加任何类型的凭据时,请检查右侧的文本。在这种情况下,它有一个方便的链接,可以直接带你到 OpenAI 账户检索 API 密钥。
  3. API 密钥只是一个长字符串。这就是此特定凭据所需的全部内容。从 OpenAI 网站复制它并粘贴到 API key 部分。

保护你的凭据安全

凭据是应用程序和服务发布的私有信息,用于验证你作为用户的身份,并允许你在应用程序或服务与 n8n 节点之间连接和共享信息。所需信息的类型因相关应用程序/服务而异。你应该小心在 n8n 之外共享或泄露凭据。

6. 测试节点#

现在节点已连接到 Chat Trigger 和聊天模型,我们可以测试工作流的这一部分。

  1. 点击画布底部附近的"Chat"按钮。这将在左侧打开一个本地聊天窗口,在右侧打开 AI 代理日志。
  2. 输入一条消息并按 Enter。你现在将看到聊天模型的响应出现在你的消息下方。
  3. 日志窗口显示 AI Agent 的输入和输出。 显示正在进行的聊天会话的图片

访问日志...

即使你没有使用聊天界面,也可以访问 AI 节点的日志。打开 AI Agent 节点并点击右侧面板中的 Logs 选项卡。 显示 AIAgent 中 Logs 选项卡的截图

7. 更改提示#

上一步中的日志显示了一些额外的数据 - 系统提示。这是 AI Agent 用来启动聊天模型的默认消息。从日志中你可以看到它被设置为"You are a helpful assistant"(你是一个有用的助手)。但是,我们可以更改此提示以改变聊天模型的行为。

  1. 打开 AI Agent 节点。在面板底部有一个标记为"Options"(选项)的部分和一个标记为"Add Option"(添加选项)的选择器。使用它来选择"System message"(系统消息)
  2. 现在显示系统消息。这与我们之前在日志中注意到的启动提示相同。将提示更改为其他内容,以不同的方式启动聊天模型。例如,你可以尝试"You are a brilliant poet who always replies in rhyming couplets"(你是一位才华横溢的诗人,总是用押韵对句回复)。
  3. 关闭节点并返回聊天窗口。重复你的消息并注意输出如何改变。 显示聊天文本已更改的图片,现在它押韵了;如果你能相信的话

8. 添加持久化#

聊天模型现在为我们提供了有用的输出,但当你尝试进行对话时,会发现它有些问题。

  1. 使用聊天并告诉聊天模型你的名字,例如"Hi there, my name is Nick"(你好,我叫 Nick)。
  2. 等待响应,然后输入消息"What's my name?"(我叫什么名字?)。AI 将无法告诉你,无论它看起来多么抱歉。原因是我们没有保存上下文。AI Agent 没有记忆显示说明上述情况的对话的图片
  3. 为了记住对话中发生的事情,AI Agent 需要保留上下文。我们可以通过向 AI Agent 节点添加记忆来做到这一点。在画布上点击 AI Agent 节点底部标记为"Memory"(记忆)的 添加节点图标
  4. 从出现的面板中,选择"Simple Memory"(简单记忆)。这将使用运行 n8n 的实例的内存,通常足以满足简单使用。这里默认值 5 次交互应该足够了,但如果你以后想更改它,请记住此选项的位置。
  5. 重复上面进行对话的练习,你会看到 AI Agent 现在记住了你的名字。

9. 保存工作流#

在离开工作流编辑器之前,请记住保存工作流,否则你的所有更改都将丢失。

  1. 点击编辑器窗口右上角的"Save"(保存)按钮。你的工作流现在将被保存,你可以稍后返回它再次聊天或添加新功能。

恭喜!#

你已经迈出了使用 AI 构建有用且有效的工作流的第一步。在本教程中,我们研究了 AI 工作流的基本构建模块,添加了 AI Agent 和聊天模型,并调整了提示以获得我们想要的输出类型。我们还添加了记忆,以便聊天可以在消息之间保留上下文。

查看工作流文件

下一步#

现在你已经了解了如何创建基本的 AI 工作流,有很多资源可以在此基础上构建知识,还有很多示例可以为你提供下一步的想法: