n8n 构建一个 ReAct AI Agent 示例

n8n 构建一个 ReAct AI Agent 示例

  • 0. 引言
  • 1. 详细步骤
    • 创建一个 "When Executed by Another Workflow"
    • 创建一个 "Edit Fields (Set)"
    • 再创建一个 "Edit Fields (Set)"
    • 创建一个 HTTP Request
    • 创建一个 If 节点
    • 在 true 分支创建一个 "Edit Fields (Set)"
    • 在 true 分支创建一个 "Edit Fields (Set)"
    • 在 true 分支再创建一个 "Edit Fields (Set)"
    • 创建一个 If 节点
    • 在 true 分支创建一个 "Edit Fields (Set)"
    • 在创建一个 Markdown 节点
    • 在创建一个 "Edit Fields (Set)"
    • 创建一个 Chat Trigger node
    • 创建一个 AI Agent 节点
    • 在 AI Agent 节点添加一个 OpenAI Chat Model node
    • 在 AI Agent 节点添加一个 Call n8n Workflow Tool node
  • 2. 测试

在这里插入图片描述

0. 引言

接下来使用 n8n 构建一个 ReAct AI Agent,通过 AI Agent 调用 Sub-Workflow,代用 HTTP Request 抓取网页内容,通过后处理对网页内容进行清洗。

1. 详细步骤

这个 Workflow 有 2 大部分,第一个部分是一个 Sub-Workflow,第二个部分是 Call 这个 sub-Workflow 的 AI Agent。

我们先创建 Sub-Workflow,然后创建 Call 这个 sub-Workflow 的 AI Agent。

创建一个 “When Executed by Another Workflow”

这个节点是 Sub-Workflow 的入口,

  • Input data mode:Accept all data
    在这里插入图片描述

输入数据模式设置为选择如何定义子工作流的输入数据:

  • 使用下方字段定义:选择此模式以定义调用工作流需要提供的个体输入名称和数据类型。调用工作流中的执行子工作流节点或调用n8n工作流工具节点会自动拉取此处定义的字段。
  • 使用JSON示例定义:选择此模式以提供一个示例JSON对象,展示预期的输入项及其类型。
  • 接受所有数据:选择此模式以无条件接受所有数据。子工作流将不会定义任何必需的输入项。此子工作流必须处理任何输入不一致或缺失值。

创建一个 “Edit Fields (Set)”

这个节点将输入的 query 整理成一个 json 对象。

query 的输入表达式,

{{ $json.query.substring($json.query.indexOf('?') + 1).split('&').reduce((result, item) => (result[item.split('=')[0]] = decodeURIComponent(item.split('=')[1]), result), {}) }}

在这里插入图片描述

再创建一个 “Edit Fields (Set)”

设置一个最大长度,

que

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/81680.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Monorepo项目多项目一次性启动工具对比与实践

Monorepo项目多项目一次性启动工具对比与实践 在现代软件开发中,Monorepo(单一仓库)模式越来越受到开发者的青睐。Monorepo将多个相关的项目或包集中在一个仓库中进行管理,方便依赖共享、代码复用和统一发布。在Monorepo项目开发…

笔记整理六----OSPF协议

OSPF 动态路由的分类: 1.基于网络范围进行划分--将网络本身划分为一个个AS(自治系统---方便管理和维护) 内部网关协议---负责AS内部用户之间互相访问使用的协议 IGP--RIP EIGRP ISIS OSPF 外部网关协议--负责AS之间(整个互联网&…

网络编程,使用select()进行简单服务端与客户端通信

这里在Ubuntu环境下演示 一般流程 服务端常用函数: socket():创建一个新的套接字。bind():将套接字与特定的IP地址和端口绑定。listen():使套接字开始监听传入的连接请求。accept():接受一个传入的连接请求&#xff…

智能决策支持系统的基本概念与理论体系

决策支持系统是管理科学的一个分支,原本与人工智能属于不同的学科范畴,但自20世纪80年代以来,由于专家系统在许多方面取得了成功,于是人们开始考虑把人工智能技术用于计算机管理中来。在用计算机所进行的各种管理中,如…

驱动开发系列55 - Linux Graphics QXL显卡驱动代码分析(二)显存管理

一:概述 前面介绍了当内核检测到匹配的PCI设备后,会调用 qxl_pci_probe 初始化设备,其中会调用qxl_device_init 来初始化设备,为QXL设备进行内存映射,资源分配,环形缓冲区初始化,IRQ注册等操作,本文展开说说这些细节,以及介绍下QXL的显存管理。 二:QXL设备初始化细节…

洛谷 P1495:【模板】中国剩余定理(CRT)/ 曹冲养猪

【题目来源】 https://www.luogu.com.cn/problem/P1495 https://www.acwing.com/problem/content/225/ 【题目描述】 自从曹冲搞定了大象以后,曹操就开始捉摸让儿子干些事业,于是派他到中原养猪场养猪。可是曹冲满不高兴,于是在工作中马马虎…

配置和使用持久卷

配置和使用持久卷 文章目录 配置和使用持久卷[toc]一、PV与PVC的持久化存储机制二、PV和PVC的生命周期三、创建基于NFS的PV1.准备NFS共享目录2.创建PV 四、基于PVC使用PV1.创建PVC2.使用PVC 五、基于StorageClass实现动态卷制备1.获取NFS服务器的连接信息2.获取nfs-subdir-exte…

FreeRTOS菜鸟入门(十)·消息队列

目录 1. 基本概念 2. 数据存储 3. 运作机制 4. 阻塞机制 4.1 出队阻塞 4.2 入队阻塞 5. 操作示意图 5.1 创建队列 5.2 向队列发送第一个消息 5.3 向队列发送第二个消息 5.4 从队列读取消息 6. 消息队列控制块 7. 消息队列常用函数 7.1 消息队列创建…

java 洛谷题单【算法2-2】常见优化技巧

P1102 A-B 数对 解题思路 输入读取与初始化: 使用 Scanner 读取输入。n 表示数组的长度,c 表示目标差值。使用一个 HashMap 存储数组中每个数字及其出现的次数,方便快速查找。数组 a 用于存储输入的数字。 构建哈希映射: 遍历数…

视频转GIF

视频转GIF 以下是一个使用 Python 将视频转换为 GIF 的脚本,使用了 imageio 和 opencv-python 库: import cv2 import imageio import numpy as np """将视频转换为GIF图参数:video_path -- 输入视频的路径gif_path -- 输出GIF的路径fp…

计算机网络:详解TCP协议(四次握手三次挥手)

目录 1.Tcp协议介绍 1.1 Tcp协议层级 1.2 TCP协议的格式 2. 确认应答机制 2.1 确认应答 2.2 序号字段 2.3 捎带应答 3. 流量控制 4. 三次握手 四次挥手 4.1 认识标志位 4.2 简单认识 4.3 三次挥手 4.4 四次挥手 1.Tcp协议介绍 1.1 Tcp协议层级 计算机网络&#x…

小程序 IView WeappUI组件库(简单增删改查)

IView Weapp 微信小程序UI组件库:https://weapp.iviewui.com/components/card IView Weapp.png 快速上手搭建 快速上手.png iView Weapp 的代码 将源代码下载下来,然后将dict放到自己的项目中去。 iView Weapp 的代码.png 小程序中添加iView Weapp 将di…

用java实现一个简单的sql select 解析器,无需第三方依赖,完全从0开始

以下是一个简单的 SQL SELECT 解析器的 Java 实现,支持单表查询和基本条件过滤。代码包含词法分析和语法分析模块,并支持以下语法: SELECT column1, column2 FROM table WHERE column3 5 完整代码 1. Token 类型定义 (TokenType.java) pu…

阿里云 CentOS YUM 源配置指南

阿里云 CentOS YUM 源配置指南 在使用 CentOS 7 时,由于 CentOS 官方源停止维护等原因,yum install 命令可能会报错 “Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64”。以下是通过更换阿里云源解决该问题的详细步骤。 一、备份原有配…

Learning vtkjs之ThresholdPoints

过滤器 阈值过滤器 介绍 vtkThresholdPoints - 提取满足阈值条件的点 vtkThresholdPoints 是一个过滤器,它从数据集中提取满足阈值条件的点。该条件可以采用三种形式: 1)大于特定值; 2) 小于特定值; 3) 在特定值之间…

记录ruoyi-flowable-plus第一次运行流程报错

记录ruoyi-flowable-plus第一次运行流程报错 错误步骤 1.启动ruoyi-flowable-plus 正常登录后,打开流程分类然后点击新增按钮,新增了一个分类。增加成功后, 再点击流程分类,报错。 错误提示 org.springframework.cglib.core.C…

Java中的stream流介绍与使用

一、Stream 的基础概念 定义与特性 Stream 是单向数据流,对集合或数组进行高效处理,不存储数据,而是通过操作链生成新 Stream。不可变性:原始数据源不被修改,所有操作均返回新 Stream。延迟执行:中间操作&a…

OCR身份证识别(正反面)_个人证照OCR识别_开放API接口使用指南

一、接口简介 在数字化时代,快速准确地提取身份证信息变得尤为重要。**万维易源提供的“身份证OCR识别”API接口,能够快速提取二代居民身份证正反面的所有字段信息,包括姓名、性别、民族、出生日期、住址、身份证号、签发机关、有效期限等。…

25年新版潮乎盲盒系统源码 盲盒商城系统前端分享

盲盒系统市场的前景一直都很不错,最近很多问我有没有盲盒源码的客户,下面给大家分享一个新版潮乎盲盒源码! 这款盲盒源码系统 前端Uniapp 后端使用了Laravel框架进行开发。Laravel是一个流行的PHP框架,具有强大的功能和易于使用的…

Transformer四模型回归打包(内含NRBO-Transformer-GRU、Transformer-GRU、Transformer、GRU模型)

Transformer四模型回归打包(内含NRBO-Transformer-GRU、Transformer-GRU、Transformer、GRU模型) 目录 Transformer四模型回归打包(内含NRBO-Transformer-GRU、Transformer-GRU、Transformer、GRU模型)预测效果基本介绍程序设计参…