AI Agent 结构与分类

一、什么是AI agent

        在人工智能中,智能代理AI Agent是以智能方式行事的代理;它感知环境,自主采取行动以实现目标,并可以通过学习或获取知识来提高其性能。人其实就是一种复杂代理。

        为了理解智能代理的结构,我们应该熟悉架构和代理程序。架构是代理执行的机器,它是一种带有传感器和执行器的设备,例如机器人;代理程序是代理功能的实现。代理函数是从感知序列(代理迄今为止感知的所有历史记录)到动作的映射:

Agent = 架构 + Agent 程序

代理通过两种方式与环境交互:

  1. 感知
    感知是一种被动交互,智能体在不改变环境的情况下获取有关环境的信息。机器人的传感器帮助它获取周围环境的信息而不影响周围环境。因此,通过传感器获取知识称为感知。
  2. 行动
    行动是改变环境的主动互动。当机器人用手臂移动障碍物时,随着环境的改变,这被称为动作。机器人的手臂在其动作时被称为“效应器”。

1.1 AI Agent代理结构

生成式人工智能代理感知环境并将它们带到内存流,在那里它们可以存储数据。根据其知识,它获取选定的数据(检索的记忆),这有助于确定它将决定的行动计划。其主要部分包括:

  • 感知:这是指人工智能代理如何接受来自周围环境的数据。感知会影响智能体稍后存储和优先考虑记忆,使其成为第一个但关键的阶段。
  • 内存流:这是代理存储和访问其所有数据的数据库。所有记忆都经过组织,以便以后轻松访问和检索。生成式人工智能代理使用时间戳和简短描述等工具来优雅地识别每个记忆。不只是回忆;框架的这一部分还可能记录生成人工智能代理过去的决策和行为。人工智能代理之所以聪明,是因为它如何对这些记忆进行优先级排序,以相应地检索它们。例如,最近的相关记忆最重要。
  • 检索的内存:一旦内存流中的数据被正确存储,代理现在就会考虑回收操作所需的相关内存。如前所述,检索标准包括以下内容:
    – 数据的最新程度,
    – 数据的相关程度,以及
    – 记忆的重要性。
  • 反思:在分析检索到的记忆后,人工智能代理会产生复杂且超标准的暗示/想法。这些定期生成的结论和分数被存储回内存流中,以便将来访问它们。另一方面,在智能体采取相应行动之前,从检索到的记忆中进行反思也至关重要。
  • 规划:AI智能体根据检索到的记忆决定的行动意义。它们不仅影响当前的行动,而且还存储在内存流中,以在未来的决策中保持平衡。此步骤确保代理根据收集的数据热衷于关注细节。
  • Act/React:Action是agent处理后给出的响应。相反,反应是智能体对环境的看法的一部分。经过规划后,它决定要么感知更多数据,要么根据现有记录做出反应。

2.2人工智能代理的现实例子

人工智能代理的一些现实例子展示了人工智能的多样化应用,包括自然语言处理和机器人技术。通过探索这些示例,您可以更深入地了解人工智能如何改变行业并改善我们的日常生活:

应用

二、AI agent 分类

1. 简单反射代理-Simple reflex agents

简单的反射代理是一个遵循预定义规则做出决策的人工智能系统。它仅对当前情况做出反应,而不考虑过去或未来的影响。

简单的反射代理适用于具有稳定规则和直接操作的环境,因为它的行为纯粹是反应性的,并且对即时环境变化做出响应。

它是如何工作的?

简单的反射代理通过遵循条件动作规则来执行其功能,该规则指定在特定条件下采取什么动作。

例子

为支持自动化客户支持交互而开发的基于规则的系统。如果客户的消息包含指示密码重置的关键字,系统可以自动生成包含重置密码说明的预定义响应。

简单反射剂的优点
  • 易于设计和实现,需要最少的计算资源
  • 实时响应环境变化
  • 在提供输入的传感器准确并且规则设计良好的情况下高度可靠
  • 无需大量培训或复杂的硬件
简单反射代理的局限性

以下是简单反射代理的局限性:

  • 如果输入传感器有故障或规则设计不当,则容易出错
  • 没有记忆或状态,这限制了它们的适用范围
  • 无法处理未明确编程的部分可观察性或环境变化
  • 仅限于一组特定的行动,无法适应新的情况

2. 基于模型的反射代理

基于模型的反射根据当前感知和表示不可观察单词的内部状态来执行操作。它根据两个因素更新其内部状态:

  • 世界如何独立于智能体而演化
  • 特工的行为如何影响世界

谨慎的基于模型的反射代理是基于模型的反射代理的变体,它在执行操作之前也会考虑其操作可能产生的后果。

它是如何工作的?

基于模型的反射代理遵循条件操作规则,该规则指定在给定情况下要采取的适当操作。但与简单的反射代理不同,基于模型的代理还利用其内部状态来评估决策和行动过程中的状况。

基于模型的反射代理分四个阶段运行:

  1. 感知:它通过传感器感知世界的当前状态。
  2. 模型:它根据所看到的内容构建世界的内部模型。
  3. 原因:它使用其世界模型来决定如何根据一组预定义的规则或启发式采取行动。
  4. 行动:代理执行它所选择的行动。
例子

Amazon Bedrock是基于模型的反射代理的最佳示例之一。

Amazon Bedrock 是一项使用基础模型来模拟操作、获取见解并做出明智决策以进行有效规划和优化的服务。

通过依靠各种模型,Bedrock 获得洞察、预测结果并做出明智的决策。它利用真实世界的数据不断完善其模型,使其能够适应和优化其运营。

然后,Amazon Bedrock 针对不同的场景进行规划,并通过模拟和调整模型参数来选择最佳策略。

基于模型的反射代理的优点
  • 基于对世界的理解快速高效地做出决策
  • 通过构建世界的内部模型,更好地做出准确的决策
  • 通过更新内部模型来适应环境的变化
  • 通过使用其内部状态和规则来确定条件,做出更明智的战略选择
基于模型的反射代理的缺点
  • 构建和维护模型的计算成本可能很高
  • 这些模型可能无法很好地捕捉现实世界环境的复杂性
  • 模型无法预测可能出现的所有潜在情况
  • 模型需要经常更新以保持最新状态
  • 模型可能在解释和理解方面提出挑战

3. 基于目标的智能体

基于目标的代理是使用环境中的信息来实现特定目标的人工智能代理。他们使用搜索算法来寻找在给定环境中实现其目标的最有效路径。

这些代理也称为基于规则的代理,因为它们遵循预定义的规则来实现其目标并根据某些条件采取特定操作。

基于目标的代理易于设计并且可以处理复杂的任务。它们可用于机器人、计算机视觉和自然语言处理等各种应用。

与基本模型不同,基于目标的代理可以根据其期望的结果或目标确定决策和采取行动过程的最佳过程。

它是如何工作的?

给定一个计划,基于目标的智能体尝试选择实现目标的最佳策略,然后使用搜索算法和启发式方法找到实现目标的有效路径。

基于目标的Agent的工作模式可以分为五个步骤:

  1. 感知:代理使用传感器或其他输入设备感知其环境,以收集有关周围环境的信息。
  2. 推理:智能体分析收集到的信息并决定实现其目标的最佳行动方案。
  3. 行动:代理采取行动来实现其目标,例如移动或操纵环境中的对象。
  4. 评估:采取行动后,智能体评估其实现目标的进度,并在必要时调整其行动。
  5. 目标完成:一旦智能体实现了目标,它要么停止工作,要么开始致力于新的目标。
例子

我们可以说Google Bard是一个基于目标的代理。毫无疑问,它也是一个学习代理。

作为基于目标的代理,它的目标或目的是为用户查询提供高质量的响应。它选择可能帮助用户找到他们寻求的信息并实现获得准确和有用的响应的预期目标的操作。

基于目标的代理的优点
  • 易于实施和理解
  • 有效实现特定目标
  • 根据目标完成情况轻松评估绩效
  • 它可以与其他人工智能技术相结合来创建更高级的代理
  • 非常适合定义明确的结构化环境
  • 它可用于各种应用,例如机器人、游戏人工智能和自动驾驶汽车。
基于目标的代理的缺点
  • 仅限于特定目标
  • 无法适应不断变化的环境
  • 对于变量太多的复杂任务无效
  • 需要丰富的领域知识来定义目标

4. 基于效用的代理

基于效用的代理是基于效用函数或价值最大化做出决策的人工智能代理。他们选择预期效用最高的行动,该效用衡量结果的好坏。

这有助于他们更加灵活和适应性地处理复杂和不确定的情况。基于实用程序的代理通常用于必须在多个选项之间进行比较和选择的应用程序,例如资源分配、调度和玩游戏。

它是如何工作的?

基于效用的代理旨在选择导致高效用状态的操作。为了实现这一点,它需要对其环境进行建模,该环境可以是简单的也可以是复杂的。

然后,它根据概率分布和效用函数评估每个可能结果的预期效用。

最后,它选择具有最高预期效用的操作,并在每个时间步重复此过程。

例子

Anthropic Claude是一种人工智能工具,其目标是帮助持卡会员最大限度地提高使用卡的奖励和利益,是一种基于实用程序的代理。

因为为了实现其目标,它使用效用函数将代表成功或幸福的数值分配给不同的状态(持卡人面临的情况,例如购物、支付账单、兑换奖励等)。然后比较每个状态下不同行动的结果,并根据其效用值做出权衡决策。

此外,它还使用启发式和人工智能技术来简化和改进决策。

基于实用程序的代理的优点
  • 处理广泛的决策问题
  • 从经验中学习并调整决策策略
  • 为决策提供一致且客观的框架
基于实用程序的代理的缺点
  • 需要准确的环境模型,否则会导致决策错误
  • 计算成本昂贵并且需要大量计算
  • 不考虑道德或伦理因素
  • 人类难以理解和验证

5. 学习代理

AI学习代理是一种软件代理,可以从过去的经验中学习并提高其性能。它最初使用基础知识进行操作,并通过机器学习自动适应。

学习代理包含四个主要组件:

  • 学习元素:它负责根据从环境中获得的经验进行学习和改进。
  • Citric:它根据预定义标准的代理表现向学习元素提供反馈。
  • 表现元素:它根据来自学习元素和批评者的信息选择并执行外部动作。
  • 问题生成器:它建议采取行动,为学习元素创造新的、信息丰富的体验,以提高其性能。

它是如何工作的?

人工智能学习代理遵循观察、学习和基于反馈采取行动的循环。他们与环境互动,从反馈中学习,并修改自己的行为以适应未来的互动。

该循环的工作原理如下:

  • 观察:学习代理通过传感器或其他输入观察其环境。
  • 学习:代理使用算法和统计模型分析数据,从有关其行为和性能的反馈中学习。
  • 行动:根据所学到的知识,代理在其环境中采取行动来决定如何行事。
  • 反馈:代理通过奖励、惩罚或环境线索接收有关其行为和表现的反馈。
  • 适应:利用反馈,代理改变其行为和决策过程,更新其知识并适应其环境。

这个循环随着时间的推移不断重复,使代理能够不断提高其性能并适应不断变化的环境。

例子

学习代理程序的一个很好的例子是由 Significant Gravitas 创建的 AutoGPT。

想象一下您想购买一部智能手机。因此,您提示AutoGPT对排名前十的智能手机进行市场研究,提供有关其优缺点的见解。

一旦完成这项任务,AutoGPT 就会通过探索各种网站和来源来分析排名前十的智能手机的优缺点。它使用子代理程序评估网站的真实性。最后,它生成一份详细的报告,总结调查结果并列出十大智能手机公司的优缺点。

学习代理的优点
  • 代理可以根据人工智能决策将想法转化为行动
  • 学习智能代理可以遵循基本命令(例如语音指令)来执行任务
  • 与执行预定义操作的经典代理不同,学习代理可以随着时间的推移而发展
  • 人工智能代理考虑效用测量,使它们更加现实
学习代理的缺点
  • 容易做出有偏见或不正确的决策
  • 开发和维护成本高
  • 需要大量计算资源
  • 对大量数据的依赖
  • 缺乏类人的直觉和创造力

6. 分层代理

分层代理按层次结构构建,高级代理监督较低级别的代理。但是,级别可能会根据系统的复杂性而有所不同。

分层代理可用于各种应用,例如机器人、制造和运输。他们擅长协调多项任务和子任务并确定优先级。

它是如何工作的?

层级代理的工作方式就像公司组织一样。他们以由不同级别组成的结构化层次结构来组织任务,其中较高级别的代理监督目标并将其分解为更小的任务。

随后,较低级别的代理执行这些任务并提供进度报告。

在复杂系统的情况下,可能存在中间级别的代理来协调较低级别代理与较高级别代理的活动。

例子

UniPi是 Google 推出的一款创新的分层人工智能代理,它利用文本和视频作为通用界面,使其能够在各种环境中学习各种任务。

UniPi 包含生成指令和演示的高级策略和执行任务的低级策略。高层策略适应各种环境和任务,而低层策略通过模仿和强化学习进行学习。

这种分层设置使 UniPi 能够有效地将高级推理和低级执行结合起来。

分层代理的优点
  • 分层代理通过将任务分配给最合适的代理并避免重复工作来提高资源效率。
  • 层级结构通过建立明确的权力和方向来加强沟通。
  • 分层强化学习 (HRL) 通过降低动作复杂性和增强探索来改进代理决策。它采用高级操作来简化问题并促进代理学习。
  • 分层分解具有通过更简洁和可重用地表示整体问题来最小化计算复杂性的优点。
分层代理的缺点
  • 使用层次结构解决问题时会产生复杂性。
  • 固定的层次结构限制了对变化或不确定环境的适应性,阻碍了代理调整或寻找替代方案的能力。
  • 分层代理遵循自上而下的控制流,即使较低级别的任务已准备就绪,这也可能导致瓶颈和延迟。
  • 层次结构可能缺乏跨不同问题域的可重用性,需要为每个域创建新的层次结构,这非常耗时且依赖于专业知识。
  • 由于需要标记的训练数据和仔细的算法设计,训练分层代理具有挑战性。由于涉及的复杂性,应用标准机器学习技术来提高性能变得很困难。

三、AI agent和大模型LLM的关系。

人工智能代理是可以使用LLM和工具来执行各种任务和功能的系统。他们可以通过使用外部信息源、计算和验证来克服语言模型的一些限制。他们还可以计划和执行需要多个步骤或子任务的复杂操作。

参考:

1、Agents in Artificial Intelligence | Understanding How Agents Should Act

2、6 Types of AI Agents: Exploring the Future of Intelligent Machines

3、https://medium.com/springchain-ai/architecture-of-ai-framework-comparing-ai-agent-memory-to-human-brain-5b446ebc99dd

4、https://medium.com/@VAI_LABS/navigating-the-ai-agent-landscape-insights-into-advancements-and-opportunities-75c4e67ffc8e

5、一文读懂:AI Agent究竟是什么?-虎嗅网

6、Intelligent Agents that Astound: Generative AI agents - Markovate 

7、New Era of Collaboration with AI Agents

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

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

相关文章

录视频人不在电脑旁,怎么设置定时关机

如果你平常工作比较忙,或者要录制的视频/音频文件需要很长时间,最好选择预约录制,这样可使录屏软件自动开始和停止录制,并且定时关机。此外,你还可以设置保存录制文件、关闭录屏软件。是不是听起来很感兴趣&#xff1f…

鸿蒙系统扫盲(四):鸿蒙使用的是微内核?

我们常说,看一个系统是不是自研,就看它的内核,常见的内核分为:宏内核和微内核,当然还有两者结合体,他们到底有什么区别? 1.白话宏内核和微内核 有一天,你结婚了,你和你…

使用Notepad++编辑器,安装AnalysePlugin搜索插件

概述 是一款非常有特色的编辑器,Notepad是开源软件,Notepad中文版可以免费使用。 操作步骤: 1、在工具栏 ->“插件”选项。 2、勾选AnalysePlugin选项,点击右上角“安装”即可。 3、 确认安装插件 4、下载插件 5、插件已安装…

【算法专题】前缀和

前缀和 前缀和1. 前缀和【模板】2. 二维前缀和【模板】3. 寻找数组的中心下标4. 除自身以外数组的乘积5. 和为K的子数组6. 和可被K整除的子数组7. 连续数组8. 矩阵区域和 前缀和 1. 前缀和【模板】 题目链接 -> Nowcoder -DP34.前缀和【模板】 Nowcoder -DP34.前缀和【模…

15、pytest的fixture调用fixture

官方实例 # content of test_append.py import pytest# Arrange pytest.fixture def first_entry():return "a"# Arrange pytest.fixture def order(first_entry):return [first_entry]def test_string(order):# Actorder.append("b")# Assertassert orde…

failed to install plugin grafana 插件安装失败

升级时忽略plugins 权限问题,导致安装插件失败!调整权限即可

论文解读--PointPillars- Fast Encoders for Object Detection from Point Clouds

PointPillars--点云目标检测的快速编码器 摘要 点云中的物体检测是许多机器人应用(如自动驾驶)的重要方面。在本文中,我们考虑将点云编码为适合下游检测流程的格式的问题。最近的文献提出了两种编码器;固定编码器往往很快,但牺牲了准确性,而…

【报名】2023产业区块链生态日暨 FISCO BCOS 开源六周年生态大会

作为2023深圳国际金融科技节系列活动之一,由深圳市地方金融监督管理局指导,微众银行、金链盟主办的“2023产业区块链生态日暨FISCO BCOS开源六周年生态大会”将于12月15日下午14:00在深圳举办。 今年的盛会将进一步升级,以“FISCO BCOS和TA的…

C# - Opencv应用(3) 之矩阵Mat使用[图像截取粘贴、ROI操作、位运算、数学计算]

C# - Opencv应用(3) 之矩阵Mat使用[图像截取粘贴、ROI操作、位运算、数学计算] 图像读取,大小、截取、位运算图像ROI操作:粘贴赋值、滤波图像数学计算部分结果如下: 1.图像读取,大小、截取、位运算 //图…

nodejs微信小程序+python+PHP天天网站书城管理系统的设计与实现-计算机毕业设计推荐

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…

vs 安装 qt qt扩展 改迅雷下载qt

Qt5.14.2安装教程和VS2019中的qt环境配置-CSDN博客 1 安装qt 社区版 免费 Download Qt OSS: Get Qt Online Installer 2 vs安装 qt vs tools 3 vs添加 qt添加 bin/cmake.exe 路径 3.1 扩展 -> qt versions 3.2 4 新版要源码安装 需要自己安装 安装独立安装的旧版 官网…

【AUTOSAR】【通信栈】IPduM

AUTOSAR专栏——总目录_嵌入式知行合一的博客-CSDN博客文章浏览阅读310次。本文主要汇总该专栏文章,以方便各位读者阅读。https://xianfan.blog.csdn.net/article/details/132072415 目录 一、概述 二、相关模块 2.1 OS

Python-docx 深入word源码 自定义页码页脚以动态显示总页数和当前页数

代码和效果图 先上能够正常显示页码页脚的Python代码和效果图,之后再解释原理和思路 from docx import Document from docx.shared import Pt from docx.oxml import OxmlElement from docx.enum.text import WD_PARAGRAPH_ALIGNMENT from docx.oxml.ns import qn…

06 数仓平台MaxWell

Maxwell简介 Maxwell是由Zendesk公司开源,用 Java 编写的MySQL变更数据抓取软件,能实时监控 MySQL数据库的CRUD操作将变更数据以 json 格式发送给 Kafka等平台。 Maxwell输出数据格式 Maxwell 原理 Maxwell工作原理是实时读取MySQL数据库的二进制日志…

.NET Core6.0 MVC+layui+SqlSugar 简单增删改查

HTML部分: {ViewData["Title"] "用户列表"; } <!DOCTYPE html> <html> <head><meta charset"utf-8"><title>用户列表</title><meta name"renderer" content"webkit"><meta …

网络安全(二)-- Linux 基本安全防护技术

4.1. 概述 安全防护基础主要是会用Linux系统&#xff0c; 熟悉Linux基本操作命令。 在这个章节中&#xff0c;我们主要探讨自主访问控制&#xff08;许可位、ACL&#xff09;、文件属性、 PAM技术、能力机制等。 4.1.1. 补充命令 本章节中&#xff0c;涉及一些新的命令&#…

洛谷P1044 [NOIP2003 普及组] 栈 递归方法

目录 核心&#xff1a; 问题转化&#xff1a; 状态转化&#xff1a;&#xff08;你得先读懂题&#xff0c;理解我们要干什么&#xff09; 对应不同情况下的状态转化&#xff1a;&#xff08;比如栈空就不能出栈&#xff0c;&#xff0c;&#xff09; AC代码&#xff1a; 题…

GAN:ImprovedGAN-训练GAN的改进策略

论文&#xff1a;https://arxiv.org/abs/1606.03498 代码&#xff1a;https://github.com/openai/improved_gan 发表&#xff1a;NIPS 2016 一、文章创新 1&#xff1a;Feature matching&#xff1a;特征匹配通过为生成器指定新目标来解决GANs的不稳定性&#xff0c;从而防止…

css实现正六边形嵌套圆心

要实现一个正六边形嵌套圆心&#xff0c;可以使用CSS的::before和::after伪元素以及border-radius属性。以下是具体的解析和代码&#xff1a; 使用::before和::after伪元素创建正六边形。设置正六边形的背景色。使用border-radius属性使正六边形的内角为60度。在正六边形内部创…

Qt 软件调试——windbg初篇(一)

在上一篇《Qt 软件调试&#xff08;二&#xff09;使用dump捕获崩溃信息》中我们结尾处提示大家先准备好windbg&#xff0c;windbg是非常强大的调试工具&#xff0c;对于我们进行代码调试和分析异常有着非常重要的意义。 在Qt软件调试这个系列的首篇&#xff0c;我们介绍了《Qt…