一直以来,人们都在追求能够达到或超越人类水平的人工智能,AI Agent目前被视为能够实现这一目标的有前途的载体。Agent是能够感知环境、做出决策并采取行动的智能体。
本文会对基于LLM的Agent做一个全面概述,包括为什么LLM适合作为Agent的基础,以及包含三个主要组成部分:大脑(brain)、感知(perception)和行动(action)的框架,并可以根据不同的应用进行定制。
一、为什么LLM适合作为Agent大脑的主要组成部分?
- 知识获取能力:通过在大规模文本数据上的预训练,能够获得丰富的知识,包括语言知识、常识知识以及特定领域的专业知识。
- 指令理解:LLM展现出了对自然语言指令的理解能力,这使得它们能够遵循用户的指令并据此做出决策。
- 泛化能力:LLM在预训练过程中学习到了广泛的语言模式,这使得它们能够在没有明确编程的情况下处理各种任务。
- 推理和规划:LLM能够进行一定程度的逻辑推理和规划,这对于Agent在复杂环境中做出决策至关重要。
- 交互能力:LLM能够与用户进行自然的多轮对话,这有助于Agent更好地理解用户的需求和上下文。
- 自我改进:LLM具有一定的自我改进能力,它们可以通过反馈学习来优化自己的行为和决策。
- 可扩展性:LLM可以通过微调来适应特定的任务或领域,这为Agent的定制化提供了可能。
- 多模态处理:尽管LLM主要处理文本数据,但它们也可以与其他类型的输入(如视觉、听觉)结合,以支持更丰富的感知能力。
二、Agent大脑
基于LLM的Agent的大脑模块,是Agent的核心组成部分,负责存储知识、记忆,并执行信息处理、决策制定、推理和规划等关键任务。研究是也是非常非常的多,但是他可以细分为以下5大模块:
1. 自然语言交互:
- 高质量的文本生成:LLM如何生成高质量、准确、流畅的文本,以及如何通过不同的方法控制文本的风格和内容。
- 深入理解,包括对用户指令的意图和含义的理解
2. 知识:
- 预训练模型中的知识: 讨论了LLM在预训练阶段如何吸收和记忆知识,以及这些知识如何帮助Agent理解世界。
- 语言知识: 包括语法、语义和语用学的知识。
- 常识知识: 涉及日常世界的事实,如物体用途、事件结果等。
- 可操作知识: 与特定任务或领域相关的知识,如编程、医学等。
- 潜在问题: 探讨了如何处理LLM中的不正确或过时知识,以及如何减少幻觉现象。
3. 记忆:
- 记忆能力,包括提高Transformer模型长度限制的方法
- 记忆的总结和压缩
- 记忆检索,包括自动检索和交互式检索
4. 推理与规划:
- 推理,如链式推理和其他推理方法
- 规划,包括计划制定和计划反思
5. 可转移性与泛化:
- 未见任务泛化,如多任务学习
- 上下文学习,即模型通过上下文中的示例进行学习。
- 持续学习,指模型在不断学习新任务的同时保留以前的知识。
大脑模块的设计灵感来自于人类大脑,它不仅是信息处理的中心,也是决策和创造性思维的源泉。在LLM基础的Agent中,大脑模块通过模仿这些人类智能的方面,使得Agent能够展示出智能行为,并能够适应和处理各种任务和环境。
三、Agent感知
1. 文本输入
这是LLM Agent的主要输入方式。
2. 视觉输入
- 视觉编码器(Visual Encoder): 一般使用不同类型的视觉编码器,如ViT、VQVAE等,这些编码器将图像转换为模型可以理解的格式。
- 可学习的架构(Learnable Architecture): 通过查询(Query-based)或投影(Projection-based)方法将视觉信息与LLM结合。
3. 听觉输入
一般使用音频编码器,如HuBERT、AST等,级联方式,Agent还可以串联使用多个音频处理模型,如Text-to-Speech等
4. 其他输入
除了文本、视觉和听觉之外的其他输入方式,如触觉、手势等
四、Agent行动
1. 文本输出
LLMAgent生成文本响应,包括对话、回答问题、撰写报告等。
2. 工具使用
- 学习工具: Agent学习使用各种工具,例如通过示范学习或反馈学习。
- 使用工具: Agent调用外部工具来增强其能力,例如搜索引擎、数据库、APIs等。
- 制作工具: Agent创造或修改工具以适应特定的任务或需求。
3. 具体行动:
Agent在物理世界或虚拟环境中执行具体动作,如移动、抓取、操作对象等。
五、Agent应用
1. 单一Agent
- 任务导向: Agent根据用户的具体指令执行任务,例如在网页浏览、家庭自动化和客户服务等领域的应用。
- 创新导向: Agent在科学研究、药物发现和新材料设计等创新领域的应用。
- 生命周期导向: Agent在一个开放和持续的环境中,如Minecraft,进行长期的生存和发展。
2. 多Agent交互
- 合作交互: Agent在需要团队合作的场景中协同工作,例如通过角色分配和任务协调来提高效率。
- 对抗交互: Agent在竞争环境中如何通过对抗和辩论来提高自身的性能和决策质量。
3. 人机交互
- 指导者-执行者模式: 人类作为指导者提供指令和反馈,而Agent则作为执行者来完成任务。
- 平等伙伴模式: Agent作为人类的平等伙伴参与对话和任务,例如在情感交流和创造性工作中。
文章标题:The Rise and Potential of Large Language Model Based Agents: A Survey
项目地址:https://github.com/WooooDyy/LLM-Agent-Paper-List