简介:
基于大型语言模型(LLM)的智能体的集成和部署充满了挑战,这些挑战损害了它们的效率和功效。
这些问题包括LLM上智能体请求的次优调度和资源分配,在智能体和LLM之间的交互过程中维护上下文的困难,以及集成具有不同能力和专业化的异构智能体所固有的复杂性。智能体的数量和复杂性的快速增长进一步加剧了这些问题,往往导致资源的瓶颈和次优利用。
受这些挑战的启发,本文提出了AIOS,一种LLM智能体操作系统,它将大型语言模型作为操作系统的大脑嵌入到操作系统中,使操作系统“有灵魂”——这是迈向AGI的重要一步。
具体而言,AIOS旨在优化资源分配,促进智能体之间的上下文切换,实现智能体的并发执行,为智能体提供工具服务,并维护智能体的访问控制。
我们介绍了这样一个操作系统的架构,概述了它旨在解决的核心挑战,并提供了AIOS的基本设计和实现。我们在多个智能体的并发执行上的实验证明了我们的AIOS模块的可靠性和效率。
通过这一点,我们的目标不仅是提高LLM智能体的性能和效率,而且是在未来更好地开发和部署AIOS生态系统的先驱。
该项目开源于https://github.com/agiresearch/AIOS.
背景介绍:
在自主智能体领域,研究工作[1,2,3]针对的是能够独立运行、做出决策和执行任务的系统,而无需或最少的人工干预。这些智能体旨在理解指令、处理信息、做出决策并采取行动以实现自主状态。大型语言模型(LLM)[4,5,6]的出现为智能体开发带来了新的可能性[7]。当前的LLM在理解指令[8,9,10,11]、推理和解决问题[12,13,14,15,16]、与人类用户[17]以及外部环境[18,19]的交互方面显示出强大的能力。基于这些强大的LLM,新兴的基于LLM的智能体[7,20,21,22]可以在不同的环境中表现出强大的任务完成能力,从虚拟助理到涉及复杂和创造性问题解决、规划和推理的更复杂的系统。
从图1中可以看出,基于LLM的智能体如何解决现实世界中的任务是一个引人注目的例子:
给定用户的旅行组织请求,旅行社将任务分解为可执行的步骤。
然后,它按顺序执行步骤,根据用户的偏好预订航班、预订酒店、处理付款和更新日历。
在计划执行过程中,智能体显示出推理和决策能力,这使其与传统的软件应用程序不同,后者被限制在预定义的一组功能或工作流中。
为了实现这种旅行场景,智能体需要与LLM服务(例如:检索和理解用户偏好,决定调用哪个工具API,生成评论和响应)和传统操作系统(OS)服务(例如:访问磁盘驱动程序和执行软件)进行交互。
伴随着智能体数量和复杂性的指数增长,LLM和OS的功能受到越来越大的压力。
例如,在有限的LLM资源中对智能体请求进行调度和优先级排序是一个重大挑战。
此外,当处理冗长的上下文时,LLM的生成过程可能会变得耗时,偶尔会导致生成被调度器挂起。这就提出了设计一种机制来快照LLM的当前生成结果的问题,从而即使在LLM尚未完成对当前请求的响应生成时也能够实现暂停/恢复行为。
此外,一旦智能体获得了可用调用工具的列表,确定调用这些工具的最佳顺序就带来了另一个挑战,因为多个智能体可能需要调用同一个工具。此外,多个智能体的并发操作需要一个跨不同智能体的强大的内存管理系统,同时还确保严格执行隐私和访问控制措施。
为了解决上述挑战,我们提出了AIOS,这是一种LLM智能体操作系统(图2),用于提供LLM和OS功能的模块隔离和聚合。
为了解决与LLM相关的任务和与LLM无关的任务之间出现的潜在冲突,我们提出了LLM特定内核的设计。该内核隔离了类似操作系统的