前几天看到一个图,感觉能帮助理解 AI Agent 的基本思想和原理,特摘过来备忘。顺道加上自己目前对相关部分的理解,不一定对,权当做个记录。

另外,专门查了下图的来源,应该是源自  Lilian Weng 的博客文章《LLM Powered Autonomous Agents》-June 23, 2023

原图: 

中文重置版:

Memory(记忆):

  • 短期记忆:特指利用上下文学习(In-Context Prompting,又称为提示工程 Prompt Engineering)让模型在短时间内“记住”并利用这些信息来提高其在特定任务上的表现。
    >>简单说就是——在提问时一并给出背景资料,引导其思想,让结果更符合我们的预期。好处是不需要去调整和专门训练大模型。
    >>现在对话模式的AI应该都是用的这个技术。包括给定资料,让大模型出题也是这个方式。
  • 长期记忆:这种设计使得 AI Agents 能够在长时间内保留和回忆大量信息的能力,一般通过外部向量存储和快速检索来实现。
    >>对这块的理解不一定对,我认为是——将以往的交流记录存储下来,并建立索引。当提问时,优先从历史信息中找到最相似的记录,来辅助这次的任务。相当于额外记录了你的喜好,而这个是不需要“写入”大模型的。
  • Planning(规划):
    • 子目标和分解:将一个大的、复杂的任务分解成多个小的、可管理的子目标。这样做可以让任务变得更加容易处理,并且可以提高任务执行的效率。
      >>这个相对好理解。通过这种方法来增强处理复杂任务的能力。
      >>这块应该是调用大模型来做到的?
    • 反思和调整:在执行任务后,对自己的行为进行评估和分析,以识别错误并找出改进的方法。通过这种方式,代理可以从经验中学习,逐步提高自己的智能和适应性,从而提高最终结果的质量。
      >>通过这种策略,来提升任务处理质量、提升“智能”,从而能较好处理复杂任务。
  • Tool use(工具使用):
    • AI Agents 可以学习如何调用外部 API,以获取模型权重中缺少的额外信息,这些信息通常在预训练后很难更改,包括当前信息、代码执行能力、对专有信息源的访问等。
      >>大模型侧重在于其强大的语言处理能力和与外部工具结合的能力,

补充资料1:

  • 大模型(LLM,Large Language Model)的概念:是指拥有大量参数的预训练语言模型,能够理解和生成自然语言文本。这些模型通过在大规模数据上进行训练,能够捕捉到语言的各种模式和规律,从而在各种语言任务中表现出色,如问答、翻译、摘要生成等。
  • AI Agent的概念:是指一种自主系统,能够感知环境并采取行动以实现特定目标。AI Agents通常具有一定的智能,能够进行决策、学习和适应环境变化。它们可以在各种应用场景中发挥作用,如自动驾驶、智能家居控制、虚拟助手等。
  • 大模型AI Agent之间的关系: |-大模型可以作为AI Agent的核心组件,提供语言理解和生成的能力。

    |-AI Agent 利用“大模型+外部工具”在真实世界中执行各种任务,拥有交互能力,可表现出较高的自主性和智能性。

补充资料2:另一个图(应该是来源于孚知流),它加上了感知(似乎也叫“多模态”):

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

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

相关文章

Android Studio启动报错:The emulator process for AVD Pixel_5_API_30 has terminated

Android Studio启动AVD报错: The emulator process for AVD Pixel_5_API_30 has terminated. 原因:安装时使用自定义安装后,修改了默认安装目录。 而avd文件默认在 C:\Users\用户名\.android 目录下。所以导致打开AVD时报错。 解决方法&am…

SadTalker数字人服务器部署

一、单独SadTalker部署 git clone https://github.com/OpenTalker/SadTalker.gitcd SadTalker conda create -n sadtalker python3.8conda activate sadtalkerpip install torch1.12.1cu113 torchvision0.13.1cu113 torchaudio0.12.1 --extra-index-url https://download.pyto…

切换node版本

一、在Linux上切换Node.js版本有多种实现方法: 1.使用nvm(Node Version Manager): 安装nvm:可以通过curl或wget来安装nvm,具体请参考nvm的官方文档。 安装不同版本的Node.js:使用nvm可以轻松…

快速上手绿联私有云UGOS Pro系统Docker | 安装/部署/管理/docker-compose一网打尽

快速上手绿联私有云UGOS Pro系统Docker | 安装/部署/管理/docker-compose一网打尽 哈喽小伙伴们好,我是Stark-C~ 因为众所周知的原因,关于最新发布的绿联私有云UGOS Pro系统咱这里也不过多说,不过有一点不可否认:新系统专业性更…

用python写一个基于ai agent协同供应链管理流程的案例

要实现一个基于AI Agent的协同供应链管理流程,我们可以参考以下步骤: 1. 首先,定义一个类SupplyChainManager,用于模拟供应链管理系统的功能。 python class SupplyChainManager: def __init__(self): self.warehouse Warehous…

代码随想录第51天|单调栈

42. 接雨水 参考 思路1: 暴力解法 找每个柱子的左右高度超时 O(N^2) 思路2: 双指针优化 class Solution { public:int trap(vector<int>& height) {vector<int> lheight(height.size(), 0);vector<int> rheight(height.size(), 0);lheight[0] hei…

nginx的正向与反向代理

正向代理与反向代理的区别 虽然正向代理和反向代理都涉及代理服务器接收客户端请求并向服务端转发请求&#xff0c;但它们之间存在一些关键的区别&#xff1a; 正向代理&#xff1a; 在正向代理中&#xff0c;代理服务器代表客户端向服务器发送请求&#xff0c;并将服务…

ctfshow-web入门-php特性(web104-web108)

目录 1、web104 2、web105 3、web106 4、web107 5、web108 1、web104 需要传入的 v1 和 v2 进行 sha1 加密后相等。 解法1&#xff1a; 这里都没有判断 v1 和 v2 是否相等&#xff0c;我们直接传入同样的内容加密后肯定也一样。 ?v21 post&#xff1a; v11 拿到 flag…

SQL 多变关联使用子查询去重

不去重状态 select a.*,b.recon_amt from free_settlement_first aleft join free_settlement_second b on a.settlement_first_id b.settlement_first_id 有2条数据出现了重复 使用子查询去重 select a.*,b.recon_amt from free_settlement_first aleft join free_settlem…

Vue 最新动态!!!

大家好,我是CodeQi! 一位热衷于技术分享的码仔。 当Vue 3.4在六个月前发布时,整个前端开发社区都为之振奋。这次更新不仅带来了许多新特性,还解决了许多开发过程中遇到的痛点。 然而,时间飞逝,随着我在项目中不断应用这些新特性,逐渐积累了很多宝贵的经验和心得。 今…

一篇学通Axios

Axios 是一个基于 Promise 的 HTTP 客户端&#xff0c;用于浏览器和 node.js 环境。它提供了一种简单易用的方式来发送 HTTP 请求&#xff0c;并支持诸如请求和响应拦截、转换数据、取消请求以及自动转换 JSON 数据等功能。 Axios 名字的由来 Axios 的名字来源于希腊神话中的…

Linux操作系统入门(适用java软件开发)

1.什么是操作系统? 操作系统&#xff08;Operating System&#xff0c;简称 OS&#xff09;是一种系统软件&#xff0c;它管理和控制计算机硬件与软件资源&#xff0c;为用户和应用程序提供一个接口和环境来访问计算机系统的服务和功能。操作系统的主要目标是提供一个方便、有…

探索性数据分析:使用Python与Pandas库实现数据洞察

探索性数据分析&#xff1a;使用Python与Pandas库实现数据洞察 引言 在当今数据驱动的时代&#xff0c;数据分析已成为决策制定、策略规划和业务优化的关键环节。无论是商业智能、金融分析还是市场研究&#xff0c;数据分析都扮演着至关重要的角色。Pandas库作为Python生态系统…

微积分-导数8(线性近似和微分)

线性近似 我们已经看到&#xff0c;在切点附近&#xff0c;曲线与其切线非常接近。事实上&#xff0c;通过放大可微函数图上的某一点&#xff0c;我们注意到图形看起来越来越像它的切线&#xff08;见图&#xff09;。这一观察是找到函数近似值的方法的基础。 这个想法是&am…

Java [ 进阶 ] JVM双亲委派机制✨

目录 ✨探索Java进阶 双亲委派机制✨ 理解 Java 的双亲委派机制 什么是双亲委派机制&#xff1f; 类加载器的层次结构 双亲委派机制的工作原理 优缺点分析 优点 缺点 一些面试题目&#xff1a; 什么是双亲委派机制&#xff1f; 双亲委派机制的工作流程是怎样的&am…

monodepth代码与原理对照实现

先实现demomonodepth/monodepth_simple.py at master mrharicot/monodepth GitHub import os os.environ[TF_CPP_MIN_LOG_LEVEL]0 这行代码是为tensorflow设置环境变量TF_CPP_MIN_LOG_LEVEL,用来控制tensorflow c后端输出的日志级别。0就是输出所有级别的日志信息。包括(调…

vue2学习笔记3 - 开发环境知识补充:live server简介

学习笔记1搭建开发环境中&#xff0c;在vs code里安装了live server插件&#xff0c;后续多次使用open with live server来打开浏览器&#xff0c;展示代码运行效果。本着知其然也要知其所以然的态度&#xff0c;稍稍了解了一下Live server。 什么是Live Server Live Server是…

探索Conda的依赖迷宫:包依赖树的构建与解析

探索Conda的依赖迷宫&#xff1a;包依赖树的构建与解析 引言 在复杂的软件项目中&#xff0c;依赖管理是确保软件正常运行的关键。Conda作为流行的Python包管理器&#xff0c;提供了强大的依赖树功能&#xff0c;帮助用户理解和管理包依赖关系。本文将详细介绍如何在Conda中使…

个性化你的编码世界:深度定制PyCharm主题与字体

个性化你的编码世界&#xff1a;深度定制PyCharm主题与字体 引言 在编码的旅途中&#xff0c;一个舒适且个性化的环境能够显著提升开发体验。PyCharm作为业界领先的集成开发环境&#xff08;IDE&#xff09;&#xff0c;提供了丰富的定制选项&#xff0c;允许用户根据个人喜好…

力扣--20. 有效的括号

目录 题目 思路 注意 题目 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括…