全面拆解!何为AI Agent?

爱吃牛油果的璐璐 2024-01-02 11:09:40
作者介绍

爱吃牛油果的璐璐,北京大学 电子与通信工程硕士。

 

Agent就是智能体的意思。

 

图片

 

前言

 

最近AI圈很火的一个话题就是AI Agent了!AI创投圈也在密切关注着相关创业公司的进展。很多人说大模型都没搞明白,又来了个AI Agent…... 但是别担心Agent目前也是在起始阶段。

 

AI Agent能力其实是和大模型相生的,大模型的能力边界还是决定了AI Agent的能力边界。

 

最近,复旦大学,斯坦福大学都发表了对AI AGENT的看法和认识。

 

一、研究背景

 

早在 1950 年代,Alan Turing 就将「智能」的概念扩展到了人工实体,并提出了著名的图灵测试。这些人工智能实体通常被称为 —— 代理(Agent)。「代理」这一概念起源于哲学,描述了一种拥有欲望、信念、意图以及采取行动能力的实体。斯坦福大学的一篇名为《Generative Agents: Interactive Simulacra of Human Behavior,titled》的论文深入研究了记忆、反应和计划的AI Agent。

 

图片

 

二、什么是AI Agent

 

AI Agent 被认为是 OpenAI 发力的下一个方向。OpenAI 联合创始人 Andrej Karpathy 在近期的公开活动上说 “ 相比模型训练方法,OpenAI 内部目前更关注 Agent 领域的变化,每当有新的 AI Agents 论文出来的时候,内部都会很兴奋并且认真地讨论 ” 。

 

 
 

在人工智能领域,这一术语被赋予了一层新的含义:具有自主性、反应性、积极性和社交能力特征的智能实体。

 
 
 

 

AI Agent,它被设计为具有独立思考和行动能力的AI程序。你只需要提供一个目标,比如写一个游戏、开发一个网页,他就会根据环境的反应和独白的形式生成一个任务序列开始工作。就好像是人工智能可以自我提示反馈,不断发展和适应,以尽可能最好的方式来实现你给出的目标。

 

三、NLP 到 AGI 的发展路线

 

NLP 到 AGI 的发展路线分为五级:语料库、互联网、感知、具身和社会属性,那么目前的大型语言模型已经来到了第二级,具有互联网规模的文本输入和输出。在这个基础上,如果赋予 LLM-based Agents 感知空间和行动空间,它们将达到第三、第四级。进一步地,多个代理通过互动、合作解决更复杂的任务,或者反映出现实世界的社会行为,则有潜力来到第五级 —— 代理社会。

 

图片

 

四、为什么需要AI Agent

 

为什么大语言模型(LLM)刚流行不久,就需要AI Agent呢?LLM与LangChain 等工具相结合,释放了内容生成、编码和分析方面的多种可能性,目前在ChatGPT插件中比较有代表性的插件就是code interpreter。在这方面的应用上Agent的概念应用发挥着举足轻重的作用。

 

这里可以将Agent视为人工智能大脑,它使用LLM进行推理、计划和采取行动。

 

语言模型 (LLM) 仅限于它们所训练的知识,并且这些知识很快就会过时。(每天用最新信息重新训练这么大的模型是不可行的。)

 

 
LLM的一些缺点

 

  • 会产生幻觉。

  • 结果并不总是真实的。

  • 对时事的了解有限或一无所知。

  • 很难应对复杂的计算。

 

这就是AI Agent的用武之地,它可以利用外部工具来克服这些限制。

 

这里的工具是什么呢?工具就是代理用它来完成特定任务的一个插件、一个集成API、一个代码库等等,例如:

 

  • Google搜索:获取最新信息

  • Python REPL:执行代码

  • Wolfram:进行复杂的计算

  • 外部API:获取特定信息

 

而LangChain则是提供一种通用的框架通过大语言模型的指令来轻松地实现这些工具的调用。AI Agent的诞生就是为了处理各种复杂任务的,就复杂任务的处理流程而言AI Agent主要分为两大类:行动类、规划执行类。

 

五、智能代理的框架

 

LLM-based Agent 的概念框架,包含三个组成部分:控制端(Brain)、感知端(Perception)和行动端(Action)。下面将分别介绍:

 

图片

 

 
控制端:Brain

 

是智能代理的核心。它不仅可以存储记忆和知识,还承担着信息处理、决策等不可或缺的功能。它可以呈现推理和计划的过程,并很好地应对未知任务,反映出智能代理的泛化性和迁移性。控制端作为智能代理最核心的组成成分,作者们从五个方面展开介绍其能力:

 

图片

 

自然语言交互:语言是沟通的媒介,其中包含着丰富的信息。得益于 LLMs 强大的自然语言生成和理解能力,智能代理能够通过自然语言与外界进行多轮交互,进而实现目标。具体而言,可以分为两个方面:

 

  • 高质量文本生成:大量评估实验表明,LLMs 能够生成流畅、多样、新颖、可控的文本。尽管在个别语言上表现欠佳,但整体上具备良好的多语言能力。

 

  • 言外之意的理解:除了直观表现出的内容,语言背后可能还传递了说话者的意图、偏好等信息。言外之意有助于代理更高效地沟通与合作,大模型已经展现出了这方面的潜力。

 

知识:基于大批量语料训练的 LLMs,拥有了存储海量知识(Knowledge)的能力。除了语言知识以外,常识知识和专业技能知识都是 LLM-based Agents 的重要组成部分。

 

虽然 LLMs 其本身仍然存在知识过期、幻觉等问题,现有的一些研究通过知识编辑或调用外部知识库等方法,可以在一定程度上得到缓解。

 

记忆:在本文框架中,记忆模块(Memory)储存了代理过往的观察、思考和行动序列。通过特定的记忆机制,代理可以有效地反思并应用先前的策略,使其借鉴过去的经验来适应陌生的环境。

 

  • 短期记忆:我认为所有的上下文学习(参见提示工程)都是利用模型的短期记忆来学习。

 

  • 长期记忆:这为代理提供了长时间保留和回忆(无限)信息的能力,通常是通过利用外部向量存储和快速检索。

 

通常用于提升记忆能力的方法有三种:

 

  • 扩展 Backbone 架构的长度限制:针对 Transformers 固有的序列长度限制问题进行改进。

 

  • 总结记忆(Summarizing):对记忆进行摘要总结,增强代理从记忆中提取关键细节的能力。

 

  • 压缩记忆(Compressing):通过使用向量或适当的数据结构对记忆进行压缩,可以提高记忆检索效率。

 

此外,记忆的检索方法也很重要,只有检索到合适的内容,代理才能够访问到最相关和准确的信息。

 

推理 & 规划:推理能力(Reasoning)对于智能代理进行决策、分析等复杂任务而言至关重要。具体到 LLMs 上,就是以 思维链(Chain-of-Thought,CoT) 为代表的一系列提示方法。而规划(Planning)则是面对大型挑战时常用的策略。它帮助代理组织思维、设定目标并确定实现这些目标的步骤。在具体实现中,规划可以包含两个步骤:

 

  • 计划制定(Plan Formulation):代理将复杂任务分解为更易于管理的子任务。例如:一次性分解再按顺序执行、逐步规划并执行、多路规划并选取最优路径等。在一些需要专业知识的场景中,代理可与特定领域的 Planner 模块集成,提升能力。

 

  • 计划反思(Plan Reflection):在制定计划后,可以进行反思并评估其优劣。这种反思一般来自三个方面:借助内部反馈机制;与人类互动获得反馈;从环境中获得反馈。

 

迁移性 & 泛化性:拥有世界知识的 LLMs 赋予智能代理具备强大的迁移与泛化能力。一个好的代理不是静态的知识库,还应具备动态的学习能力:

 

  • 对未知任务的泛化:随着模型规模与训练数据的增大,LLMs 在解决未知任务上涌现出了惊人的能力。通过指令微调的大模型在 zero-shot 测试中表现良好,在许多任务上都取得了不亚于专家模型的成绩。

 

  • 情景学习(In-context Learning):大模型不仅能够从上下文的少量示例中进行类比学习,这种能力还可以扩展到文本以外的多模态场景,为代理在现实世界中的应用提供了更多可能性。

 

  • 持续学习(Continual Learning):持续学习的主要挑战是灾难性遗忘,即当模型学习新任务时容易丢失过往任务中的知识。专有领域的智能代理应当尽量避免丢失通用领域的知识。

 

 
感知端:Perception

 

多模态感知能加深代理对工作环境的理解,显著提升了其通用性。

 

图片

 

文本输入:作为 LLMs 最基础的能力,这里不再赘述。

 

视觉输入:LLMs 本身并不具备视觉的感知能力,只能理解离散的文本内容。而视觉输入通常包含有关世界的大量信息,包括对象的属性,空间关系,场景布局等等。常见的方法有:

 

  • 将视觉输入转为对应的文本描述(Image Captioning):可以被 LLMs 直接理解,并且可解释性高。

 

  • 对视觉信息进行编码表示:以视觉基础模型 + LLMs 的范式来构成感知模块,通过对齐操作来让模型理解不同模态的内容,可以端到端的方式进行训练。

 

听觉输入:听觉也是人类感知中的重要组成部分。由于 LLMs 有着优秀的工具调用能力,一个直观的想法就是:代理可以将 LLMs 作为控制枢纽,通过级联的方式调用现有的工具集或者专家模型,感知音频信息。此外,音频也可以通过频谱图(Spectrogram)的方式进行直观表示。频谱图可以作为平面图像来展示 2D 信息,因此,一些视觉的处理方法可以迁移到语音领域。

 

其他输入:现实世界中的信息远不止文本、视觉和听觉。作者们希望在未来,智能代理能配备更丰富的感知模块,例如触觉、嗅觉等器官,用于获取目标物体更加丰富的属性。同时,代理也能对周围环境的温度、湿度和明暗程度有清楚的感受,采取更 Environment-aware 的行动。

 

此外,还可以为代理引入对更广阔的整体环境的感知:采用激光雷达、GPS、惯性测量单元等成熟的感知模块。

 

 
行动端:Action

 

在大脑做出分析、决策后,代理还需要做出行动以适应或改变环境:

 

图片

 

文本输出:作为 LLMs 最基础的能力,这里不再赘述。

 

工具使用:尽管 LLMs 拥有出色的知识储备和专业能力,但在面对具体问题时,也可能会出现鲁棒性问题、幻觉等一系列挑战。与此同时,工具作为使用者能力的扩展,可以在专业性、事实性、可解释性等方面提供帮助。例如,可以通过使用计算器来计算数学问题、使用搜索引擎来搜寻实时信息。

 

另外,工具也可以扩展智能代理的行动空间。例如,通过调用语音生成、图像生成等专家模型,来获得多模态的行动方式。因此,如何让代理成为优秀的工具使用者,即学会如何有效地利用工具,是非常重要且有前景的方向。

 

目前,主要的工具学习方法包括从演示中学习和从反馈中学习。此外,也可以通过元学习、课程学习等方式来让代理程序在使用各种工具方面具备泛化能力。更进一步,智能代理还可以进一步学习如何「自给自足」地制造工具,从而提高其自主性和独立性。

 

具身行动:具身(Embodyment)是指代理与环境交互过程中,理解、改造环境并更新自身状态的能力。具身行动(Embodied Action)被视为虚拟智能与物理现实的互通桥梁。

 

传统的基于强化学习的 Agent 在样本效率、泛化性和复杂问题推理等方面存在局限性,而 LLM-based Agents 通过引入大模型丰富的内在知识,使得 Embodied Agent 能够像人类一样主动感知、影响物理环境。根据代理在任务中的自主程度或者说 Action 的复杂程度,可以有以下的原子 Action:

 

  • Observation 可以帮助智能代理在环境中定位自身位置、感知对象物品和获取其他环境信息;

 

  • Manipulation 则是完成一些具体的抓取、推动等操作任务;

 

  • Navigation 要求智能代理根据任务目标变换自身位置并根据环境信息更新自身状态。

 

通过组合这些原子行动,代理可以完成更为复杂的任务。例如「厨房的西瓜比碗大吗?」这类具身的 QA 任务。为了解决这个问题,代理需要导航到厨房,并在观察二者的大小后得出答案。

 

六、智能代理的应用场景

 

图片

 

LLM-based Agent 的三种应用范式:单代理、多代理、人机交互。

 

 
单代理场景

 

可以接受人类自然语言命令,执行日常任务的智能代理目前备受用户青睐,具有很高的现实使用价值。作者们首先在单智能代理的应用场景中,阐述了其多样化的应用场景与对应能力。

 

在论文中,单智能代理的应用被划分为如下三个层次:

 

图片

 

单代理应用场景的三个层次:任务导向、创新导向、生命周期导向。

 

  • 任务导向的部署中,代理帮助人类用户处理日常基本任务。它们需要具备基本的指令理解、任务分解、与环境交互的能力。具体来说,根据现有的任务类型,代理的实际应用又可以分为模拟网络环境与模拟生活场景。

 

  • 创新导向的部署中,代理能够在前沿科学领域展现出自主探究的潜力。虽然来自专业领域的固有复杂性和训练数据的缺乏给智能代理的构建带来了阻碍,但目前已经有许多工作在化学、材料、计算机等领域取得了进展。

 

  • 生命周期导向的部署中,代理具备在一个开放世界中不断探索、学习和使用新技能,并长久生存的能力。在本节中,作者们以《我的世界》游戏为例展开介绍。由于游戏中的生存挑战可以被认为是现实世界的一个缩影,已经有许多研究者将其作为开发和测试代理综合能力的独特平台。

 

 
多代理场景

 

图片

 

多代理应用场景的两种交互形式:合作型互动、对抗型互动。

 

合作型互动:作为实际应用中部署最为广泛的类型,合作型的代理系统可以有效提高任务效率、共同改进决策。具体来说,根据合作形式的不同,作者们又将合作型互动细分为无序合作与有序合作。

 

  • 当所有代理自由地表达自己的观点、看法,以一种没有顺序的方式进行合作时,称为无序合作。

 

  • 当所有代理遵循一定的规则,例如以流水线的形式逐一发表自己的观点时,整个合作过程井然有序,称为有序合作。

 

对抗型互动:智能代理以一种针锋相对(tit for tat)的方式进行互动。通过竞争、谈判、辩论的形式,代理抛弃原先可能错误的信念,对自己的行为或者推理过程进行有意义的反思,最终带来整个系统响应质量的提升。

 

 
人机交互场景

 

图片

 

人机交互场景的的两种模式:Instructor-Executor 模式 vs. Equal Partnership 模式。

 

  • Instructor-Executor 模式:人类作为指导者,给出指令、反馈意见;而代理作为执行者,依据指示逐- 步调整、优化。这种模式在教育、医疗、商业等领域得到了广泛的应用。

 

  • Equal Partnership 模式:有研究观察到代理能够在与人类的交流中表现出共情能力,或是以平等的身份参与到任务执行中。智能代理展现出在日常生活中的应用潜力,有望在未来融入人类社会。

 

 
AI Agent 一览表

 

图片

 

开放性问题讨论

 

1、智能代理与大语言模型的研究该如何互相促进、共同发展?

 

大模型在语言理解、决策制定以及泛化能力等方面展现出强大的潜力,成为代理构建过程中的关键角色,而代理的进展也为大模型提出了更高的要求。

 

2、LLM-based Agents 会带来哪些挑战与隐忧?

 

智能代理能否真正落地,需要经过严谨的安全性评估,避免对真实世界带来危害。作者总结了更多潜在威胁,例如:非法滥用、失业风险、对人类福祉造成影响等等。

 

3、代理数量的提升(scaling up)会带来哪些机遇和挑战?

 

在模拟社会中,提升个体数量可以显著提升模拟的可信度与真实性。然而,随着代理数量的上升,通信与消息传播问题会变得相当复杂,信息的失真、误解或者幻觉现象都会显著降低整个模拟系统的效率。

 

4、网络上关于 LLM-based Agent 是否是通向 AGI 的合适道路的争论。

 

有研究者认为,以 GPT-4 为代表的大模型已经在足够的语料上进行了训练,在此基础上构建的代理有潜力成为打开 AGI 之门的钥匙。但也有其他研究者认为,自回归语言建模(Auto-regressive Language Modeling)并不能显现出真正的智能,因为它们只是作出响应。一个更完备的建模方式,例如世界模型(World Model),才能通向 AGI。

 

5、群体智能的演化历程。群体智能是一种集结众人的意见进而转化为决策的过程。

 

然而,一味通过增加代理的数量,是否会产生真正的「智能」?此外,如何协调单个代理,让智能代理社会克服「团体迷思」和个人认知偏差?

 

6、代理即服务(Agent as a Service,AaaS)。

 

由于 LLM-based Agents 比大模型本身更加复杂,中小型企业或个人更加难在本地构建,因此云厂商可以考虑以服务的形式来将智能代理落地,即 Agent-as-a-Service。就像其他的云服务一样,AaaS 有潜力为用户提供高灵活性和按需的自助服务。

 

>>>>

论文参考

 

  • https://arxiv.org/pdf/2309.07864.pdf

  • https://arxiv.org/abs/2304.03442

     

 

作者丨爱吃牛油果的璐璐
来源丨知乎:https://zhuanlan.zhihu.com/p/657737603?utm_psn=1712176822735945729
dbaplus社群欢迎广大技术人员投稿,投稿邮箱:editor@dbaplus.cn
最新评论
访客 2023年08月20日

230721

访客 2023年08月16日

1、导入Mongo Monitor监控工具表结构(mongo_monitor…

访客 2023年08月04日

上面提到: 在问题描述的架构图中我们可以看到,Click…

访客 2023年07月19日

PMM不香吗?

访客 2023年06月20日

如今看都很棒

活动预告