Context as an Environment: Programmatic Context Management for Long-Horizon Agents
本文介绍了 Scroll,一种程序化上下文管理系统,它将智能体会话视为具有追加式事件日志和持久化 Python 内核的可执行环境,使大语言模型能够通过代码动态管理长程状态,并在长上下文基准测试中实现了最先进的性能。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一场永无止境的对话。你正在与一个非常聪明的计算机程序交谈,它能帮你编写代码、规划复杂的旅行或研究深奥的话题。起初,对话很轻松。程序记得你在过去几分钟内说过的所有话。但随着对话延伸到数小时甚至数天,信息量不断增长。最终,这会超出程序能够承载的即时记忆范围。在人工智能领域,这种即时记忆被称为“上下文窗口”。它的大小是固定的,就像一张只能放一定数量纸张的办公桌。当纸堆变得太高时,程序必须丢弃一些纸张,以便为新纸张腾出空间。
问题在于,程序在意识到之前并不知道哪些纸张是重要的。如果你询问关于三天前提到的事情,程序可能已经把那张纸丢弃了。传统的解决方案试图通过将旧纸张总结成简短的笔记,或者挑选出一些事实保存在单独的笔记本中来解决这个问题。但这些方法是有风险的。如果程序丢弃了一个特定的细节,比如一个日期或一个数字,那个细节就永远消失了。它无法被找回。对于那些需要回顾长期历史以寻找精确事实或追踪情况如何随时间变化的任务,丢失哪怕一个细节都可能导致程序失败。
一组研究人员提出了一种处理这种不断增长的对话的不同方式。他们将他们的系统称为 Scroll。Scroll 不再试图将整个历史塞进程序的即时记忆中,而是将历史视为一个程序可以在需要时随时访问的独立、永久的环境。把它想象成一个庞大且有组织的档案库,就坐落在程序办公桌之外。程序不会一次性阅读整个档案库。相反,它会写下一条简短的指令,比如一个搜索查询或一条命令,进入档案库,找到它需要的特定页面,并将那一页带回办公桌。
该系统的核心是一个记录每一次交互的永久记录,称为“事件日志”(Event Log)。这个日志就像一台永不停歇的录音机,捕捉每一条消息、每一个工具结果和每一个决策,并以精确的细节进行记录。它被安全地存储在程序的即向记忆之外,因此没有任何东西会丢失。与此日志相伴随的是一个“持久工作区”(persistent workspace),这是一个数字沙盒,程序可以在其中保存其当前的思考和计算。当程序需要回忆过去的事情时,它并不依赖于摘要。它会编写一段代码来搜索“事件日志”,找到它正在寻找的那个精确时刻,并将该信息加载到它的工作区中。
这种方法改变了程序对自身记忆的思考方式。它不再猜测该保留什么,而是在需要的时候决定去查找什么。如果程序正在规划一次旅行,需要记住用户几周前提到的一项偏好,它会编写一条命令来搜索该特定偏好。然后,它会加载用户使用的确切词句,并利用它们做出决策。程序只将必要的信息带入它的即时视野。其余的对话历史则安全地存储在档案库中,等待着在以后需要时被检索。
为了防止即时视野变得过于拥挤,系统有一种清理当前未使用之旧信息的方法。当工作区变得拥挤时,系统会将对话中最旧的部分移回档案库。然而,与那些可能会删除或总结这些旧部分的其他系统不同,Scroll 会原封不动地保留它们。它创建了一个小型的地图——一个索引,准确地告诉程序这些旧部分存储在档案库中的哪个位置。如果程序稍后意识到它需要检查一段旧的对话,它可以利用这张地图直接跳转到正确的位置并检索原始文本。这确保了程序始终可以回到源头,即使该信息已不再处于它的即时视野内。
研究人员在几个极具挑战性的测试中测试了这个系统,这些测试旨在观察人工智能如何处理长对话。在一项测试中,系统必须根据超过一百万字的对话历史来回答问题。在另一项测试中,它必须作为一个智能体在长时间内做出决策,使用工具来收集信息并解决问题。结果显示,这种新方法非常有效。在一项衡量系统在长历史中记忆和推理能力的测试中,它达到了 94.8% 的得分。在另一项涉及一千万字历史的测试中,它获得了 73.1% 的得分,高于此前发表的任何系统。在测试系统管理不断增长的环境以解决复杂任务时,它达到了 86.7%,远超之前的最佳结果。
该系统的成功源于它将记忆视为一项编程任务的能力。通过允许程序编写自己的指令来寻找和使用信息,该系统利用了程序日益增强的编写代码的能力。它并没有强迫程序将历史压缩成可能丢失重要细节的摘要。相反,它赋予了程序在需要时访问完整、未经编辑的历史的工具。研究人员发现,这种方法在不同类型的强大程序中都表现良好,这表明通过代码管理长期记忆是一种可以被各种系统学习的通用技能。
这项工作暗示了我们构建智能体的方式正在发生转变。我们不再仅仅试图让程序的即时记忆变得更大或更擅长总结,而是可以给它提供一个永久的、可搜索的自身生命记录的访问权限。程序学会了如何导航这一记录,决定将什么内容带向前,以及将什么内容留在身后。这保持了即时视野的清晰与专注,同时确保了过去的完整真相始终可用。研究人员认为,这种方法可以帮助人工智能在未来处理更长、更复杂的任务,使其能够在不丢失重要细节的情况下,从更深厚的历史中学习。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。