跳转到主要内容

热门内容

今日:


总体:


最近浏览:


Chinese, Simplified

category

摘要


基于大型语言模型(LLM)的智能代理的集成和部署充满了挑战,这些挑战损害了它们的效率和功效。这些问题包括LLM上代理请求的次优调度和资源分配,在代理和LLM之间的交互过程中维护上下文的困难,以及集成具有不同能力和专业化的异构代理所固有的复杂性。药剂数量和复杂性的迅速增加进一步加剧了这些问题,往往导致资源的瓶颈和次优利用。受这些挑战的启发,本文提出了一种LLM代理操作系统AIOS,它将大型语言模型嵌入到操作系统中。具体而言,AIOS旨在优化资源分配,促进代理之间的上下文切换,实现代理的并发执行,为代理提供工具服务,并维护代理的访问控制。我们介绍了这样一个操作系统的架构,概述了它旨在解决的核心挑战,并提供了AIOS的基本设计和实现。我们在多个代理的并发执行上的实验证明了我们的AIOS模块的可靠性和效率。通过这一点,我们的目标不仅是提高LLM代理的性能和效率,而且是在未来更好地开发和部署AIOS生态系统的先驱。该项目开源于https://github.com/agiresearch/AIOS.
 

1简介


在自主智能体领域,研究工作(wooldridge1995intelligent,;jennings1998roadmap,;bresciani2004tropos,)针对的是能够独立运行、做出决策和执行任务的系统,而无需或仅需最少的人工干预。这些代理旨在理解指令、处理信息、做出决策并采取行动以实现自主状态。大型语言模型(LLM)(OpenAIGPT4,;llama,;team2023gemini,)的出现为代理开发带来了新的可能性(ge2023penagi,)。当前的LLM在理解指令(ouyang2022training,;chung2022scaling,;touvron2023Lallama2,;geng2022recommendation,)、推理和解决问题(kojima222large,;nijkamp2022codegen,;taylor2022galatica,;hao2023reasoning,;kim2023language,)、与人类用户交互(ross2023programmer,)以及外部环境干旱2023palm方面显示出强大的能力;布罗汉2023年。基于这些强大的LLM,新兴的基于LLM的代理(ge2023penagi,;yao2023react,;shinn2023reflection,;deng2023mind2web,)可以在不同的环境中表现出强大的任务完成能力,从虚拟助理到涉及复杂和创造性问题解决、规划和推理的更复杂的系统。
从图1中可以看到一个引人注目的例子,说明基于LLM的代理如何解决现实世界中的任务。给定用户的旅行组织请求,旅行社将任务分解为可执行的步骤。然后,它按顺序执行步骤,根据用户的偏好预订航班、预订酒店、处理付款和更新日历。在计划执行过程中,代理显示出推理和决策能力,这使其与传统的软件应用程序不同,后者被限制在预定义的一组功能或工作流中。为了实现这种旅行场景,代理需要与LLM服务(例如,检索和理解用户偏好,决定调用哪个工具API,生成评论和响应)和传统操作系统(OS)服务(例如访问磁盘驱动程序和执行软件)进行交互。

Figure 1:A motivating example of how an agent (i.e., Travel Agent) requires both LLM level and OS level resources and functions to complete a task.

伴随着代理数量和复杂性的指数增长,LLM和OS的功能受到越来越大的压力。例如,在有限的LLM资源中对代理请求进行调度和优先级排序是一个重大挑战。此外,当处理冗长的上下文时,LLM的生成过程可能会变得耗时,偶尔会导致生成被调度器挂起。这就提出了设计一种机制来快照LLM的当前生成结果的问题,从而即使在LLM尚未完成对当前请求的响应生成时也能够实现暂停/恢复行为。此外,一旦代理获得了可用调用工具的列表,确定调用这些工具的最佳顺序就带来了另一个挑战,因为多个代理可能需要调用同一个工具。此外,多个代理的并发操作需要一个跨不同代理的强大的内存管理系统,同时还确保严格执行隐私和访问控制措施。

为了解决上述挑战,我们提出了AIOS,这是一种LLM代理操作系统(图2),用于提供LLM和OS功能的模块隔离和聚合。为了解决与LLM相关的任务和与LLM无关的任务之间出现的潜在冲突,我们提出了LLM特定内核的设计。该内核隔离类似操作系统的职责,特别是与LLM代理、其相应资源和开发工具包的监督相关的职责。通过这种分离,LLM内核旨在加强LLM相关活动的管理和协调。在所提出的LLM内核中,我们设计了一套模块,每个模块专门用于处理与LLM操作相关的不同功能。下文概述了这些模块及其各自的功能,第4节详细讨论了其基本机制。

•Agent Scheduler:对Agent请求进行优先级排序和调度,以优化LLM利用率。
•上下文管理器:支持LLM中的中间生成状态的快照和恢复,以及LLM的上下文窗口管理。
•内存管理器:为每个代理的交互日志提供短期内存。
•Storage Manager:将代理交互日志保存到长期存储中,以备将来检索。
•工具管理器:管理代理对外部API工具(如搜索、科学计算)的调用。
•Access Manager:在代理之间强制执行隐私和访问控制策略。
除了模块之外,内核还公开了LLM系统调用接口,代理可以通过该接口透明地利用这些服务。此外,我们设计了AIOS SDK来进一步封装LLM系统调用,为代理开发人员提供了更方便的代理库功能。有了AIOS架构,像旅行规划师这样的代理可以将其任务分解为多个步骤,这些步骤将LLM推理(例如,计划生成和工具调用决策)和操作系统级动作(例如,访问存储和执行软件服务)流畅地结合在一起。这种能力的协同组合使多个LLM代理能够处理越来越复杂的多模式任务,这些任务需要推理、执行和与物理世界的交互。

展望未来,我们设想扩展AIOS,以支持更紧密的代理世界集成(例如,通过机器人控制)、更智能的资源管理和更安全的多代理协作。最终,AIOS是促进各种复杂LLM代理的开发、部署和使用的关键平台。

2相关工作


2.1操作系统的发展


操作系统(OS)的演变是以渐进的方式展开的,从初级系统演变为今天复杂而交互式的操作系统。最初,操作系统用于弥合用户级任务与计算机硬件的二进制功能(如电子和门操作)之间的差距。它们的发展见证了从简单的批处理作业处理(操作系统历史)到更先进的过程管理技术的转变,如分时(UNIX时间共享)和多任务处理(囤积1974监视器,;engler1995exokernel,),这有助于处理越来越复杂的任务。在操作系统中,进展朝着模块化方向发展,明确了特定的职责,如进程调度(liu1973scheduling,;dijkstra2002coopering,)、内存管理(denning1968working,;daley1968virtual,)和文件系统管理(rosenblum1992design,;mckusick1984ast,),提高了效率和可管理性。图形用户界面(GUI)的进一步出现,例如Macintosh1、Windows2和GNOME3,使操作系统更加交互式和以用户为中心。与此同时,操作系统生态系统也得到了扩展,提供了一套全面的开发工具(OS SDK)和运行库。这些工具使应用程序开发人员能够在操作系统环境ge2023llm中高效地设计、实现和运行应用程序。操作系统生态系统的显著例子包括Android Studio4、XCode5和Cloud SDK6。在这些生态系统中,操作系统提供了大量资源来促进软件开发,并作为部署和托管软件应用程序的平台,从而形成了繁荣的操作系统应用程序生态系统。如今,我们正处于变革阶段,以看到智能操作系统的潜力。随着大型语言模型(LLM)的加入,这些先进的系统有望进一步缩小人与机器之间的通信差距,开创用户与计算机交互的新时代。

2.2大型语言模型代理


基于大型语言模型(LLM)的自治主体以自然语言指令为输入进行复杂任务求解。基于LLM的智能体研究一般可分为单智能体系统和多智能体系统ge2023llm。

基于LLM的单代理系统。


基于LLM的单代理系统(SAS)使用单个LLM代理来解决复杂的任务,如旅行计划、个性化推荐和艺术设计ge2023penagi。代理以用户的自然语言指令为输入,将任务分解为多步骤的任务解决计划,其中每个步骤都可以调用外部工具来完成,例如收集信息、执行专门的模型或与外部世界交互。根据要解决的任务,单代理应用程序可以与数字环境或物理环境或两者都参与。例如,虚拟或数字环境中的代理可以调用API(ge2023penagi,;schick2023toolformer,;yao2023impact,;parisi2022talm,;tang2023oolalpaca,)、浏览网站(nakano2022webgpt,;deng2023mind2web,)或执行代码(zhang2023toolcoder,),而物理环境中的Agent可以操作brohan2023can对象;fan2022minedojo;王2023voyager,进行boiko2023emergent实验室实验;bran2023chemcrow,或做出可行的决定黄2022语言;向2023语言。

基于LLM的多Agent系统。


基于LLM的多智能体系统(MAS)利用多个智能体之间的交互来解决问题。多个代理之间的关系可以是合作的、竞争的,也可以是合作与竞争的混合。在协作多智能体系统中,每个智能体获取并评估其他智能体提供的信息,从而共同解决复杂的任务,如角色扮演li2023camel、社会模拟park2023generative和软件开发hong2023metagpt;钱2023通讯;wu2023汽车;Josifoski2023流。在竞争性多智能体系统中,智能体可以在游戏环境中相互分离、协商和竞争,以实现其目标,例如提高谈判技能fu2023改进和辩论正确答案du2023改进;chan2023chateval;梁2023令人鼓舞。一些多智能体系统可能表现出智能体之间的合作和竞争。例如,WarAgent hua2023war将每个国家建模为基于LLM的代理人,以研究国家之间的互动如何导致国际冲突,在国际冲突中,国家可能相互合作,例如建立联盟和达成和平协议,或者相互竞争,如军备竞赛、动员和宣战。

Figure 2:An overview of the AIOS architecture.

本文地址
最后修改
星期五, 五月 3, 2024 - 22:13

Tags

Article