Mindket

n8n AI 智能体:用 AI Agent 节点、记忆和工具搭一个

黑色横幅,带有 n8n 的标志,标题是“n8n 入门课”,下面是“第一个工作流、Webhook、AI 智能体与自托管”。

n8n 的 AI 智能体,就是接上聊天模型、并且至少带一个工具的 AI Agent 节点。它读到一条消息,自己决定调用哪个工具,然后回答。再接上 Simple Memory 子节点,它就能记住对话。本课用 Chat Trigger、OpenAI 聊天模型、记忆、Calculator 和 Wikipedia 搭出一个。

本节内容

  • 把聊天模型、记忆和工具接进同一个 AI Agent 节点。
  • 和智能体聊天,看它怎样挑选工具。
  • 看懂为什么一次执行里,智能体节点会运行好几遍。
  • 分清 AI Agent 节点、Basic LLM Chain,以及 n8n 单独的 Agents 功能。
全部课程
本页目录
  1. 开始之前
  2. 搭一个会查资料、会算数的智能体
  3. 智能体的每个部分各做什么
  4. 为什么一条消息会让智能体运行三遍
  5. 智能体、链,还是别的
  6. n8n 团队怎么说智能体的记忆和新的 Agents
  7. 常见错误
  8. 自己试一试
  9. 接下来学什么
  10. 自测一下
  11. 常见问题
  12. 资料来源

开始之前

你需要一个 n8n 实例,以及某个聊天模型服务商的 API 密钥。本课用 OpenAI。Tools Agent 页面列出的支持模型有 OpenAI、Groq、Mistral Cloud、Anthropic 和 Microsoft Foundry,所以可以换别家。在 n8n Cloud 上,OpenAI 的凭据字段还有 Use Gateway credits 选项,不用自己的 OpenAI 账号也能运行这个节点。

你发的每条消息都是一次模型调用,模型用 token 计量工作量,token 是什么那篇有详细解释。

搭一个会查资料、会算数的智能体

下面这个智能体有用来查事实的 Wikipedia 工具、用来算数的 Calculator,还有记住对话的记忆。第 6 步要把这段文字粘贴到它的 System Message 选项里。这段话是我们自己写的示例,可以随意修改:

You are a helpful assistant. Use the Wikipedia tool for facts about people, places and topics, and the Calculator tool for arithmetic. If a tool returns nothing useful, say so.
  1. 新建一个工作流,添加 Chat Trigger 节点。搭建期间,按 n8n 的建议让 Make Chat Publicly Available 保持关闭。这样聊天只能通过手动聊天界面使用。
  2. 在它后面添加 AI Agent 节点。智能体默认从上一个节点读取用户的消息,Chat Trigger 给它的正是这个。Tools Agent 页面把它期望的字段叫作 chatInput。
  3. 点智能体下面的 + Chat Model,选 OpenAI Chat Model。用你的 API 密钥创建凭据,再选一个 Model。n8n 会加载你的 OpenAI 账号能用的模型。
  4. 接上一个记忆子节点,选 Simple Memory。它的 Context Window Length 决定智能体参考多少次之前的互动,Simple Memory 页面里有说明。
  5. 接上两个工具子节点:Calculator 和 Wikipedia。n8n 要求智能体至少有一个工具,文档里这两个工具都没有列出参数。
  6. 打开智能体的选项,添加 System Message,把上面代码里的文字粘贴进去。
  7. 打开手动聊天界面,发送 "Please show me a Wikipedia article about cats",再发送 "What was my last question?"。这是 n8n 自己那个智能体与链的示例里用的两条测试消息。第一条用到 Wikipedia 工具,第二条靠的是记忆。
  8. 打开这次执行,看智能体节点。一条消息可能让它运行不止一遍,下一节解释原因。

智能体的每个部分各做什么

AI Agent 节点是根节点,其余的都作为子节点挂在它下面。所以画布上,聊天模型、记忆和工具画在智能体下方,不在主线上。什么是 n8n那篇在一个完整的工作流里展示过同样的结构。

Agent 节点只有一个。从 n8n 1.82.0 起,它一律按 Tools Agent 工作,agent type 这个设置已被弃用。教程里要你选 agent type 的,是这次改动之前写的。

出自 AI Agent 和 Tools Agent 页面。
子节点它给智能体提供什么是否必需
聊天模型,例如 OpenAI Chat Model读取消息、决定下一步做什么的语言模型必需
工具,例如 Calculator 或 Wikipedia智能体可以调用的附加资源,用来获取信息或执行操作至少一个
记忆,例如 Simple Memory聊天记录,让后续的提问有上下文可选
输出解析器打开 Require Specific Output Format 后使用的固定输出格式可选

为什么一条消息会让智能体运行三遍

n8n 在智能体是做什么的一页里说,运行带智能体的工作流时,智能体会运行多次。它举的例子是三遍,见下图。在执行记录里,一条消息对应智能体节点的好几次运行,是正常的。

Max Iterations 选项限制模型为生成一个答案最多运行几次,默认是 10。记忆也有自己的限制。Tools Agent 页面说,记忆不会在不同会话之间保留。Simple Memory 页面补充说,它不能用在队列模式实例上处于启用状态的生产工作流里,因为 n8n 无法保证每次调用都落到同一个 worker 上。

n8n 示例里的三遍运行
  1. 第一遍

    智能体做初始准备。

  2. 第二遍

    智能体再次运行,去调用一个工具。

  3. 第三遍

    智能体评估工具返回的结果,然后回复用户。

智能体、链,还是别的

链按预先定好的顺序依次调用,智能体则让语言模型来决定下一步做什么。n8n 的智能体与链对比页面说,链没有持久记忆,所以无法引用之前的上下文,AI Agent 节点则可以接上记忆。

AI Agent 节点还是 Basic LLM Chain
AI Agent 节点Basic LLM Chain
使用记忆是否
使用工具是否
自己选择调用哪个工具是否
按固定顺序依次调用否是

来源:n8n 文档:智能体与链 (2026年11月4日 查阅);n8n 文档:智能体是做什么的 (2026年11月4日 查阅)

n8n 团队怎么说智能体的记忆和新的 Agents

2026 年 9 月 1 日,n8n 团队在 X 上说,LLM 默认是无状态的,每次调用都从零开始。第 4 步的 Simple Memory 节点就是为这个准备的。没有它,智能体答不出“What was my last question?”。

n8n 博客上那篇智能体记忆指南由 Yulia Dmitrievna 和 n8n 团队撰写。它说,带会话 ID 的 Simple Memory 在单实例部署上开箱即用。到了队列模式,它建议换成 Postgres 或 Redis Chat Memory,让各个 worker 之间的会话彼此隔开。把这个智能体搬到队列模式的实例之前,先换掉记忆子节点。

更早一点,2026 年 8 月 24 日,团队在 X 上说,智能体不必再活在工作流里面。帖子说,现在每个智能体都是独立的对象,通过原生聊天在整个实例或组织里共用。这就是上面提示框里那个单独的 Agents 功能,不是你搭的 AI Agent 节点。n8n 文档建议,工作太开放、固定工作流装不下时,再用它。

LLM 默认是无状态的。每次调用都从零开始,这对跑多步工作流的智能体是个实实在在的问题。

n8n.io, n8n 的官方账号,引文为译文 · X (2026年11月5日 查阅)
n8n.io(@n8n_io)2026 年 9 月 1 日在 X 上的帖子:LLM 默认是无状态的,每次调用都从零开始,这对跑多步工作流的智能体是个实实在在的问题。新指南讲智能体记忆的类型、存储、检索,以及怎样在 n8n 里实现。
n8n.io 在 X 上,2026 年 9 月 1 日
n8n.io(@n8n_io)2026 年 8 月 24 日在 X 上讲 n8n 新智能体的帖子:它不是用来搭工作流的,而是直接当你的智能体。智能体过去活在工作流里面,现在成了独立的对象:一个智能体,一套能力,通过原生聊天在你的实例或组织里共用。
n8n.io 在 X 上,2026 年 8 月 24 日

X 官方嵌入卡片的截图,拍摄于 2026 年 11 月 5 日,时间为 UTC。点击截图可到 X 上打开原帖。

常见错误

  • 智能体没有接聊天模型,或者没有接工具。没接模型时,节点会报 "A Chat Model sub-node must be connected",点 + Chat Model 选一个就行,常见问题页面是这么说的。工具子节点同样不能少。
  • 从一个不给智能体提供提示词的触发器开始。报错 "No prompt specified" 表示智能体期望从上一个节点拿到提示词。把 Prompt 设为 Define below,用固定文字或表达式来写。
  • 提示词是 null。报错 "400 Invalid value for 'content': expected a string, got null" 表示提示词里的某个表达式解析成了空,检查它读取的每个字段。
  • 照搬旧模板时,Simple Memory 节点报错。把它删掉再重新添加。模板里可能是旧版本,它以前叫 Window Buffer Memory。
  • 在队列模式的实例上,生产环境里依赖 Simple Memory。n8n 还列出了 Redis Chat Memory 和 Postgres Chat Memory 等其他记忆选项。
  • 把没有认证的聊天公开出去。Make Chat Publicly Available 打开、认证又设为 None 时,任何人都能使用这个聊天。

自己试一试

  • 在智能体的选项里打开 Return Intermediate Steps,看看多出来的输出。
  • 把 Context Window Length 设成一个很小的数,聊过这个数之后,再问你的第一个问题。
  • 把 OpenAI Chat Model 换成 Tools Agent 支持的另一个模型,其余保持不变。
  • 添加一个 HTTP Request Tool,让智能体能调用 API,或者添加 Call n8n Workflow Tool,让它能运行你的另一个工作流。

接下来学什么

智能体在哪里运行 n8n,就在哪里运行,第 4 课用 Docker 把 n8n 装到你自己的机器上。想让智能体对接外部工具,可以用 MCP Client Tool 节点连接 MCP 服务器,什么是 MCP讲了这个协议。想先看一个完整工作流里的智能体,再自己动手,Mindket 的 n8n 工作流页面会把每个节点,包括子节点,都画出来。

自测一下

  1. 哪个子节点能给智能体提供聊天记录,让后续的提问有上下文?

    查看答案

    C. Simple Memory 记忆子节点负责保留聊天记录,没有它,智能体就答不出 "What was my last question?"。

  2. 一条聊天消息让智能体节点在执行记录里运行了三遍。为什么?

    查看答案

    B. 一条消息会让智能体运行多次:做准备、调用工具、回复 n8n 说智能体会运行多次,它的例子是三遍:初始准备、调用工具,然后评估结果并回复。

  3. 智能体节点报错 "A Chat Model sub-node must be connected"。该怎么做?

    查看答案

    A. 点智能体下面的 + Chat Model,选一个模型 这个报错表示智能体没有接聊天模型,常见问题页面说,点 + Chat Model 选一个就行。

  4. 什么时候用 AI Agent 节点,比用 Basic LLM Chain 更合适?

    查看答案

    D. 任务需要工具或对话历史时 链按预先定好的顺序调用,不支持记忆和工具,智能体则让模型自己决定下一步做什么。

常见问题

能不能用 Anthropic 的 Claude,而不是 OpenAI?

能,n8n 有 Anthropic Chat Model 节点。把 OpenAI 那个删掉,点智能体上的 + Chat Model,改选 Anthropic 节点。记忆和工具保持连着。n8n 的 AI 概览页还提到了 Google 这家服务商。

n8n 的 AI 智能体会记住之前的消息吗?

只有接了记忆子节点才会。Simple Memory 为当前会话保留你设定数量的之前互动,记忆页面还说,AI 链完全不能使用记忆。

该用 AI Agent 节点,还是 Basic LLM Chain?

任务需要工具或对话历史时,用智能体。链支持和接入的模型聊天,但不支持记忆和工具,适合单个固定的步骤。

智能体能返回结构化数据,而不只是文字吗?

能。打开 Require Specific Output Format,再接上 Auto-fixing Output Parser、Item List Output Parser 或 Structured Output Parser。Tools Agent 会把解析器作为格式化工具交给模型。

n8n 的智能体能用 MCP 服务器吗?

能。AI Agent 页面把 MCP 服务器列为给智能体提供工具的一种方式,注册表里的服务器一键就能接上。讲什么是 n8n 的那篇里,更详细地说了 MCP Client Tool 和 MCP Server Trigger。

能让智能体在运行某个工具之前先问一下真人吗?

能。n8n 允许你要求在指定工具运行之前先获得批准,请求会通过 Chat、Slack 或 Telegram 这类渠道发出。它的文档里有工具的人工介入(human-in-the-loop)示例。

每条聊天消息都算一次执行吗?

算。Chat Trigger 页面说,每条消息都会运行一次你的工作流,所以一段十条消息的对话,会用掉十次 n8n 执行。

资料来源

  1. n8n Docs: AI Agent node (2026年11月4日 查阅)https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent
  2. n8n Docs: Tools Agent (2026年11月4日 查阅)https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/tools-agent
  3. n8n Docs: AI Agent common issues (2026年11月4日 查阅)https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/common-issues
  4. n8n Docs: What agents do (2026年11月4日 查阅)https://docs.n8n.io/build/integrate-ai/understand-ai-components/what-agents-do
  5. n8n Docs: Agents vs chains (2026年11月4日 查阅)https://docs.n8n.io/build/integrate-ai/understand-ai-components/agents-vs-chains
  6. n8n Docs: How memory works (2026年11月4日 查阅)https://docs.n8n.io/build/integrate-ai/understand-ai-components/how-memory-works
  7. n8n Docs: How tools work (2026年11月4日 查阅)https://docs.n8n.io/build/integrate-ai/understand-ai-components/how-tools-work
  8. n8n Docs: Chat Trigger node (2026年11月4日 查阅)https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.chattrigger
  9. n8n Docs: Simple Memory node (2026年11月4日 查阅)https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.memorybufferwindow
  10. n8n Docs: OpenAI Chat Model node (2026年11月4日 查阅)https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatopenai
  11. n8n Docs: Calculator node (2026年11月4日 查阅)https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolcalculator
  12. n8n Docs: Wikipedia node (2026年11月4日 查阅)https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolwikipedia
  13. n8n Docs: Build and manage agents (2026年11月5日 查阅)https://docs.n8n.io/build/build-and-manage-agents
  14. n8n Docs: Integrate AI (2026年11月4日 查阅)https://docs.n8n.io/build/integrate-ai
  15. n8n Blog: AI agent memory, types, storage and how to implement it (2026年11月5日 查阅)https://blog.n8n.io/ai-agent-memory/
  16. n8n.io on X: LLMs are stateless by default, 1 September 2026 (2026年11月5日 查阅)https://x.com/n8n_io/status/2094757236811636762
  17. n8n.io on X: n8n is now an agent harness, 24 August 2026 (2026年11月5日 查阅)https://x.com/n8n_io/status/2091838324163940766

分享本节课

看看现成工作流里的智能体

在 Mindket 打开一个 n8n 工作流,下载之前就能看到它的智能体节点和接在上面的子节点,都是实时画出来的。

浏览 n8n 工作流

本节课的 Markdown 版本 · n8n 入门课:面向新手的免费教程 · 全部课程