使用 n8n 构建一个 AI 聊天代理#
欢迎阅读使用 n8n 构建 AI 工作流的入门教程。无论你之前是否使用过 n8n,本教程都将向你展示 AI 工作流的基本构建模块是如何协同工作的,并帮助你构建一个可运行的、由 AI 驱动的聊天代理,你可以轻松地根据自己的需求进行自定义。
许多人更喜欢通过视频形式来学习新知识。本教程基于 n8n 的一则热门视频(见下方链接)。你可以观看视频、阅读本文步骤,或两者结合!
所需准备#
- n8n:我们建议在本教程中使用 n8n cloud 服务——新用户可享受免费试用!如需自托管部署,请参考 安装文档页面。
- 聊天模型的凭据(Credentials):本教程使用 OpenAI,但你也可以轻松替换为 DeepSeek、Google Gemini、Groq、Azure 等其他模型(详见 子节点文档(sub-nodes documentation))。
你将学到的内容#
- n8n 中的 AI 概念
- 如何使用 AI Agent 节点
- 处理 Chat 输入
- 连接 AI 模型
- 自定义输入
- 观察对话过程
- 添加持久化(persistence)
n8n 中的 AI 概念#
如果你已经熟悉人工智能(AI),可以跳过本节。本节将简要介绍 AI 的基本概念,以及如何在 n8n 工作流中使用它们。
AI 智能体(AI agent) 基于 大语言模型(Large Language Models, LLMs),LLM 能够根据输入内容通过预测下一个词来生成文本。虽然 LLM 仅处理输入并生成输出,但 AI 智能体在此基础上增加了以目标为导向的功能。它们可以调用 工具(tools),处理工具返回的结果,并做出决策以完成任务和解决问题。
在 n8n 中,AI 智能体以节点的形式存在,并具备一些额外的连接能力。
| 功能 | 大语言模型(LLM) | AI 智能体(AI Agent) |
|---|---|---|
| 核心能力 | 文本生成 | 以目标为导向的任务完成 |
| 决策能力 | 无 | 有 |
| 是否使用工具/API | 否 | 是 |
| 工作流复杂度 | 单步操作 | 多步骤流程 |
| 应用范围 | 生成语言 | 执行复杂的现实任务 |
| 示例 | LLM 生成一段文字 | 智能体安排一次会议 |
通过将 AI 智能体作为节点集成,n8n 可以将 AI 驱动的步骤与传统编程相结合,实现高效且贴近实际应用的工作流。例如,像验证邮箱地址这样的简单任务无需使用 AI;而处理电子邮件的 内容 或处理多模态输入(如图像、音频)等复杂任务,则非常适合使用 AI 智能体。
1. 创建一个新的工作流#
打开 n8n 后,你会看到以下两种情况之一:
- 空白工作流:如果你是首次登录且尚未创建任何工作流,则会显示此界面。请使用该工作流。
- 概览(Overview) 页面上的 工作流(Workflows) 列表。点击 !通用创建资源图标 按钮 来创建新工作流。
2. 添加一个触发节点#
每个工作流都需要一个起点。在 n8n 中,这类节点被称为 '触发节点(trigger nodes)'。对于本教程中的工作流,我们将从一个聊天触发节点开始。
- 点击 添加第一步(Add first step) 或按下
Tab键以打开节点菜单。 - 搜索 Chat Trigger。n8n 会显示与搜索关键词匹配的节点列表。
- 选择 Chat Trigger 将该节点添加到画布中。n8n 会自动打开该节点配置面板。
- 关闭节点详情视图(点击 返回画布 Back to canvas)以回到主画布界面。
关于 Chat Trigger 节点的更多说明... 触发节点(trigger node)会在发生特定事件时生成输出,从而触发工作流。在此场景中,我们希望通过输入文本手动启动工作流的运行。在生产环境中,该触发器可以连接到 n8n 提供的公共聊天界面,或嵌入到其他网站中。为了运行这个简单的工作流,我们将使用内置的本地聊天界面进行通信,因此无需额外配置。 查看工作流文件
3. 添加 AI Agent 节点#
AI Agent 节点是将 AI 集成到工作流中的核心组件。
- 点击触发节点上的 Add node !Add node icon 连接器,打开节点搜索界面。
- 输入 "AI",然后选择 AI agent 节点将其添加。
- 此时将显示 AI agent 节点的编辑界面。
- 某些字段可以修改。由于我们使用的是 Chat Trigger 节点,因此提示词(prompt)的来源(source)和规范(specification)默认设置无需更改。
查看工作流文件
4. 配置节点#
AI Agent 必须连接一个聊天模型(chat model),用于处理传入的提示。
- 在 AI Agent 节点底部的第一个连接点——Chat Model 下方,点击加号 !Add node icon 按钮,以添加聊天模型。
- 此时会弹出搜索对话框,并自动过滤为“语言模型”(Language Models)。这些是 n8n 内置支持的模型。本教程中,我们将使用 OpenAI Chat Model。
- 从列表中选择 OpenAI Chat model 后,它将被连接到 AI Agent 节点,并打开该模型的编辑器。其中一个可修改的参数是 'Model'(模型)。请注意,对于基础版 OpenAI 账户,仅允许使用 'gpt-4o-mini' 模型。
使用哪个聊天模型? 如前所述,LLM(大语言模型)是根据给定的提示(prompt)生成文本的组件。LLM 需要被创建和训练,这通常是一个复杂且耗时的过程。不同的 LLM 可能具备不同的能力或专长,具体取决于它们所使用的训练数据。
5. 添加凭据(如果需要)#
为了让 n8n 能够与聊天模型通信,你需要提供一些凭据(即登录信息,用于访问其他在线服务上的账户)。如果你已经配置了 OpenAI 的凭据,这些凭据会默认出现在凭据选择器中。否则,你可以使用凭据选择器来添加新的凭据。
- 要添加新凭据,请点击标有“选择凭据”(Select credential)的文字。此时会出现一个选项,允许你创建新的凭据。截图:创建新凭据按钮
- 此凭据仅需一个 API 密钥(API key)。在添加任何类型的凭据时,请查看右侧的文字说明——此处提供了一个便捷链接,可直接跳转到你的 OpenAI 账户页面以获取 API 密钥。
- API 密钥是一串长字符串。这就是该凭据所需的全部内容。从 OpenAI 网站复制密钥,并粘贴到 API key 字段中。
保护你的凭据安全
凭据是由应用程序或服务颁发的私密信息,用于验证你的用户身份,并允许你在应用/服务与 n8n 节点之间建立连接并共享数据。不同应用或服务所需的凭据类型各不相同。你应该谨慎对待凭据,避免在 n8n 外部随意分享或泄露。
6. 测试节点#
现在,节点已连接到 Chat Trigger 和一个聊天模型,我们可以测试工作流的这一部分。
- 点击画布底部附近的“Chat”按钮。这将在左侧打开一个本地聊天窗口,右侧则显示 AI 智能体(AI Agent)的日志。
- 输入一条消息并按
Enter键。你将看到聊天模型的回复出现在你的消息下方。 - 日志窗口会显示 AI 智能体的输入和输出内容。显示正在进行的聊天会话的图片
访问日志... 即使不使用聊天界面,你也可以访问 AI 节点的日志。打开 AI Agent 节点,然后点击右侧面板中的 Logs(日志)选项卡。截图显示 AIAgent 中的 Logs 选项卡
7. 修改提示词
上一步中的日志揭示了一些额外信息——系统提示(system prompt)。这是 AI Agent 节点用于初始化聊天模型的默认消息。从日志中可以看到,当前设置为 "You are a helpful assistant"(你是一个乐于助人的助手)。我们可以修改这个提示来改变聊天模型的行为。
- 打开 AI Agent 节点,在面板底部有一个标为 'Options'(选项)的部分,以及一个名为 'Add Option'(添加选项)的选择器。使用它选择 'System message'(系统消息)。
- 此时会显示系统消息内容,这正是我们在日志中看到的初始化提示。你可以将其更改为其他内容,以不同方式引导聊天模型。例如,可以尝试设置为 "You are a brilliant poet who always replies in rhyming couplets"(你是一位才华横溢的诗人,总是用押韵对句回复)。
- 关闭节点并返回聊天窗口。重新发送你的消息,注意输出结果的变化。图片显示聊天回复已变为押韵文本;如果你相信的话
8. 添加持久化功能#
当前聊天模型已经能够提供有用的结果,但存在一个问题:当你尝试进行多轮对话时,这个问题就会显现出来。
- 使用聊天功能并告诉聊天模型你的名字,例如:“Hi there, my name is Nick”(你好,我叫Nick)。
- 等待回复后,输入消息:“What's my name?”(我的名字是什么?)。此时AI无法回答你,即使它的回应看起来再抱歉也没用。原因是:我们没有保存上下文信息。AI Agent 没有记忆(memory)。展示上述对话的图片
- 为了让 AI Agent 记住对话历史,需要保留上下文。我们可以通过为 AI Agent 节点添加记忆功能来实现这一点。在画布上,点击 AI Agent 节点底部标有 "Memory"(记忆)的 !Add node icon 图标。
- 在弹出的面板中选择“Simple Memory”(简单记忆)。这将使用运行 n8n 实例的本地内存,通常适用于简单的使用场景。默认的 5 次交互记录已足够使用,但如果将来需要调整,请记住这个设置的位置。
- 重复上面的对话测试,你会发现 AI Agent 现在已经能记住你的名字了。
9. 保存工作流#
在离开工作流编辑器之前,请记得保存工作流,否则所有更改都将丢失。
- 点击编辑器窗口右上角的“Save”(保存)按钮。现在你的工作流已被保存,之后你可以随时返回继续聊天或添加新功能。
恭喜!#
你已经迈出了使用 AI 构建实用且高效工作流的第一步。在本教程中,我们探索了 AI 工作流的基本构成模块,添加了一个 AI Agent 和一个聊天模型,并调整了提示词(prompt)以获得我们期望的输出结果。此外,我们还加入了记忆功能,使聊天能够在消息之间保留上下文。
查看工作流文件
下一步#
现在你已经了解了如何创建一个基础的 AI 工作流,接下来可以利用丰富的资源进一步学习,并参考大量示例来获取下一步的灵感:
- 在 示例与概念(Examples and concepts) 中深入了解 AI 相关概念并查看更多示例。
- 浏览 AI 工作流模板(Workflow templates)。
- 了解如何通过工具(tools)增强 AI Agent 的能力。