智能体(Agent)

智能体(Agent)介绍

AI Agent 基本定义

AI Agent(人工智能代理)是一种能够感知环境、自主决策并执行动作的智能实体。与传统AI系统不同,Agent不仅能回答问题,还能主动完成一系列复杂任务。

简单来说,如果把大语言模型LLM)比作一个”超级大脑”,那么AI Agent就是给这个大脑装上了”手脚”和”工具”,让它能够像人类一样主动行动,而不仅仅是被动回答问题。

关键特性:

  • 自主性:能在没有人类直接干预的情况下运作
  • 反应性:对周围环境和接收到的信息作出及时响应
  • 目标导向:拥有明确的目标或任务,并为之努力
  • 学习能力:通过经验不断改进自身的性能和策略

AI Agent 的组成部分

AI Agent 通常由以下四个核心组件构成:

Agent = LLM + 记忆 + 规划 + 工具使用

  1. LLM(大模型):提供核心的语言理解、推理与生成能力,是整个Agent的”大脑”。
  2. 规划:规划能力由LLM提供支持,LLM对复杂任务进行分解、规划和调度,并及时观察子任务执行的结果与反馈,对任务及时调整。
  3. 工具使用:根据决策结果执行具体的动作或指令,与外部工具(如API、数据库、硬件设备)进行交互,扩展智能体的能力,执行任务,相当于Agent的“手脚”。常见的 Agent 工具包括 Web 搜索、代码执行器、数据库查询(如 n8n 的 SQL Agent)以及各种 API 调用(HTTP Request 节点)。n8n 负责将 Agent 推理出的 结构化文本输出 转化为实际的 API 请求或数据库操作 。
  4. 记忆:存储经验和知识,支持长期学习,这是Agent的“存储器”,可用来存储短期的记忆(如一次任务过程中的多次人类交互)或长期记忆(如记录使用者的任务历史、个人信息、兴趣便好等)。
    • 短期记忆 (Working Memory): 用于当前会话的上下文保留,通常通过 Window Buffer Memory 节点 等方式实现,维持连续性 。
    • 长期记忆 (Long-term Memory): 通过外部 向量数据库(如 MongoDB Atlas、Postgres with pgvector 或 n8n 的 Simple Vector Store 节点)实现。这允许 Agent 快速检索跨会话、跨任务的知识,是构建知识型 Agent 的关键 。

除此之外,通常Agent还需要提供一个直观的入口,让用户可以方便地给Agent下达指令或查看结果,这个入口可以是可视化的文字输入、语音输入,或者对外开放的API接口。

AI Agent 的工作遵循一个基本循环:

  1. 接受目标: 人类给定任务目标
  2. 观察环境: 感知当前状态
  3. 规划行动: 决定下一步行动
  4. 执行行动: 调用工具或API
  5. 观察结果: 评估行动效果
  6. 调整策略: 根据反馈优化下一步
  7. 循环直到目标达成

这个循环体现了AI Agent的自主性和反应式架构,它能够像人类一样通过不断试错来逼近目标,而非简单执行预设指令。

智能体开发平台

n8n

n8n是一个开源、强大的工作流自动化工具,允许用户通过可视化方式连接不同的应用程序和服务。它将AI功能与业务流程自动化相结合,它可以帮助开发者和非技术人员创建复杂的工作流,实现数据在不同系统间的自动传输和处理。

有云服务器上使用,也有本地部署,推荐本地部署,可以无限使用,网上部署的教程有很多,这里将不展示,主要介绍其用法。

1️⃣搭建第一个工作流:

首先,我们点击左侧加号选择Workflow或者点击右上角Create Work来添加第一个工作流:

然后进入工作流画布界面,左上角可以修改工作流名称、添加标签。

中间就是一个大大的画布,我们可以在里面添加节点。

这次的案例不需要太复杂,因此设置了两个节点的工作流作为展示。第一个是触发器,作为对话发起。第二个是AI Agent,可以在这里添加大模型、简单记忆和MCP工具。

2️⃣添加开始节点:

点击中间的加号来添加第一个节点,可以看到右侧有多个节点可以选择。

开始节点就是触发工作流的首个节点,就像是多米诺骨牌的第一张牌,或者赛跑的发令枪。

  • Trigger manually (手动触发):点击n8n中的按钮即可运行流程
  • On app event (当应用事件发生时):当Telegram、Notion或Airtable等应用中发生某些事情时运行流程
  • On a schedule (当到达预定时间时):每天、每小时或自定义间隔运行流程
  • On webhook call (当接收到 Webhook 调用时):在收到HTTP请求时运行流程。
  • On form submission (当表单提交时):在n8n中生成Web表单并将其响应传递给工作流。
  • When executed by another workflow (当被另一个工作流执行时):当由来自不同工作流的执行工作流节点调用时运行该流程
  • On chat message (当收到聊天消息时):当用户发送聊天消息时运行此流程,适合AI节点。
  • When running evaluation (当运行评估时)
  • Other ways… (其他方式…): 在工作流错误、文件更改等情况下运行流程

本案例选择当收到聊天消息时触发On chat message。

选择On chat message后如下如下界面,点击左上角Back to canvas退回画布。

可以看到界面中已经添加好了On chat message节点,点击其右侧的加号按钮,可以继续添加节点。

  • AI (人工智能): 执行与人工智能相关的任务,如调用大语言模型、文本摘要、构建AI代理等。

  • Action in an app (在应用中执行操作): 与第三方应用程序(如Google Sheets, Telegram, Notion)进行交互,执行读取、写入等操作。

  • Data transformation (数据转换): 对数据进行处理、操作、筛选或格式转换。

  • Flow (流程控制): 控制工作流的执行逻辑,如条件判断(IF)、循环(Loop)或合并分支。

  • Core (核心功能): 提供底层的、更具技术性的操作,如运行自定义代码、发送通用HTTP请求等。

  • Human in the loop (人工干预): 在流程中设置暂停点,等待人工批准或输入信息后再继续执行。

  • Add another trigger (添加另一个触发器): 为当前工作流增加一个额外的启动条件,使其可以被多种事件触发。

我们选择AI,添加AI Agent节点。

跳转到AI Agent界面。左侧是输入input,右侧是输出output,中间是配置,可以看到已经默认连接了第一个触发器节点。

设置好参数后(默认即可)返回画布就可以看到添加好AI Agent节点了。

3️⃣添加模型:

可以点击 AI Agent下面的Chat Model下面的加号来添加模型。

模型支持的也很多,比如GPT、Claude、Gemini、DeepSeek等等。这里选择了DeepSeek模型。

可以在这里添加新的凭据:

然后在这里添加DeepSeek的API Key即可

DeepSeek可以在这里申请API Key:https://platform.deepseek.com/api_keys

添加好API Key后,看到连接测试成功就可以使用了。

在Model中选择具体的模型,DeepSeek里面是对话模型deepseek-chat和推理模型deepseek-reasoner。

返回画布界面可以看到添加好的deepseek模型。

下面可以简单的测试一下,比如我和它进行一下自我介绍,输入:“你好,我是哈基鹏”

4️⃣添加记忆:

如果没有记忆,Agnt就是单次对话。我问它第二个问题,我是谁,就已经忘记了我是哈基鹏。

在Memory中选择简单记忆,让大模型记住每一次运行期间的临时上下文。

这里可以设置上下问的轮数,默认是5,根据需要进行调整。

这个时候我们重置对话,可以看到第二个问题再次问我是谁后,大模型已经记住了我的名字。

5️⃣添加工具

这次使用高德地图的MCP,需要先获取高德地图的API KEY。在高德开放平台:https://lbs.amap.com/

首先注册账号,注册好后在控制台中选择应用管理->我的应用,点击创建新应用。

填写应用名称及应用类型。

点击添加key

填写Key的名称及服务平台,如果需要开启IP白名单,可以进行设置。

提交后在我的应用中可以看到Key的值了。

高德地图API Key都提供免费配额,足够测试使用。到这里可以把MCP添加进去了。

在设置界面可以填下Endpoint为:

https://mcp.amap.com/mcp?key=你的高德API KEY

Server Transport选择HTTP Streamable。

点击设置界面右上角Execut step来测试一下,选择工具名称,填写参数city。

执行成功后右侧可以看到高德地图MCP返回的信息了。

测试,重置对话后,问AI,上海未来三天的天气如何?

image-20251112133050972

当然,我们也可以指定系统提示词,让Agent以我们自己指定的格式输出。

打开AI Agent节点配置,添加系统提示词选项。

可以看到有一个默认的系统提示词,可以更改为自己定制化的版本。

工作流的导入和导出

创建好工作流后,可以点击右上角download下载工作流。

工作流为json格式:

当然也可以在新建工作流的时候点击Import from File导入工作流的json文件。

再来一个案例

这里创建一个简单微博热点定时发送工作流:发送请求获取微博热点数据,AI 大模型分析提取数据,邮件发送提取结果

定时触发器:

首先新建一个工作流,选择能定时,按计划执行的触发器:On a Schedule

接着配置定时触发规则,这里测试选择每间隔10秒执行一次,但需要注意TimeZone时区的设置

在工作流的设置项中进行工作流时区的更改设置

TimeZone项搜索并选择时区

HTTP Request

添加定时触发器后,接着在Core节点下添加一个HTTP Request工作节点用于定时执行发送请求获取数据

HTTP Request配置中,使用了一个微博热点API(微博API申请还挺麻烦,认证就要搞好多就不做演示了),同时执行Test Step得到接口调用数据

在这里插入图片描述

数据转换处理:

Data transformation项下添加一个Edit Fields节点,用于修改、添加、移除数据字段

进入数据字段编辑界面,左侧是上一节点输出数据,选择需要的字段data并拖动到中间的Fields to Set项,数据类型设置为String,再点击Test Step得到最右侧的输出

AI Agent

AI Nodes下添加一个AI Agent工作节点

对AI Agent配置自定义提示词,左侧数据可以直接拖动到提示中被使用

大语言模型

添加AI Agent后得到如下工作流程图,点击Chat Model添加大语言模型

这里使用DeepSeek模型,需要添加模型API令牌凭证并选择使用模型

再回到AI Agent配置详情中点击Test Step进行测试,得到右侧最终输出结果

信息发送

AI大模型整理的输出结果在这里就是需要的最终结果,最后使用邮件方式,将这些信息发送到自定义邮箱,也可以存入数据库。

开启工作流

在工作流配置完成后,点击Test WorkFlow进行工作流测试

当工作流测试没有问题后,回到首页,激活工作流

再点击Executions查看工作流执行情况,这里可以发现工作流确实是以工作流触发器:每隔10秒钟开始执行

工作流模板

n8n提供了丰富的自动化工作流模板,并且数量还在不断增加,这些工作流模板可以直接拿来使用

选择复制模板

这里点击任意一个自动化工作流模板,例如Newcomer essentials: learn by doing(新手必备:边做边学)

接着点击Use for free按钮

接着点击第一个按钮:将模板复制到剪贴板(JSON)

使用模板

在n8n环境中新创建一个工作流,然后Ctrl + V粘贴拷贝的模版,这样就将预置模板导入到工作空间了

应用程序集成

n8n同样提供了丰富的程序集成,利用软件集成优化工作流程,使n8n在不同应用程序之间无缝移动和转换数据

这里点击MySQL应用程序,将进入HTTP 请求和 MySQL 集成说明的详细页面。

这个功能不能直接使用,需要注册账号试用。但是其有提供如何使用的说明以及工作流模板示例

论坛

n8n提供了一个官方社区论坛,在这里可以找到你遇到的问题或者分享你的经验,同时还提供了社区教程,你可以在这里学习。