随着人工智能技术的不断发展,大型语言模型(LLM)在自然语言处理和智能代理领域的应用日益广泛。在这一背景下,上下文工程成为提升智能代理长期运行能力和状态管理水平的关键环节。上下文工程指的是设计和动态调整智能代理上下文窗口结构的实践,它不仅关乎数据的精准组织,更决定了代理能否实现状态持久化、记忆积累和复杂任务处理。理解上下文工程,必须先厘清LLM操作系统(LLM OS)中用户上下文与内核上下文的区别与联系,这两者在系统架构中相辅相成,共同保障了代理的高效运行与智能表现。 在传统操作系统中,资源分为用户空间和内核空间,类似的架构理念也被引入到了LLM OS,目的是将上下文资源进行层级管理,使得系统运行更加安全有效。LLM OS管理着上下文窗口,提供了关于上下文工程的抽象接口,让开发者能够灵活设计和演化代理的记忆结构。
用户上下文相当于操作系统中的用户空间,是消息缓冲区所在,负责存储与用户交互的所有消息,包括用户输入、系统消息、助理回复以及工具调用与响应。而内核上下文则对应操作系统的内核空间,是系统管理的上下文状态,包括系统提示、工具架构、内存块和文件等,且只能通过系统调用接口进行控制与修改。 内核上下文作为系统管理的核心,承载着智能代理重要的状态数据和配置。它包括系统提示,它定义了代理的架构和控制流程,起到了核心的行为指导作用,同时明确了记忆、模块和文件等关键概念。工具架构则规定了代理可以使用的工具及其接口,使代理理解并执行对应操作。系统元数据则记录代理运行统计和内部状态信息,为优化与监控提供数据支撑。
内存块是持久化上下文的基本单位,可被设计为长期记忆或工作上下文,由代理自身或后台子代理管理。文件与工件提供了操作代码、文档等多样化信息的载体与管理机制。这些组件共同构成了内核上下文的多维结构,使得系统具备了集中管理与高效维护的能力。 在内核上下文中,所有修改操作必须通过受控接口完成,类似传统操作系统中的系统调用。LLM OS提供了一套系统调用接口,包括内存操作工具如memory_replace、memory_append、memory_rethink,用于智能代理对内存块的增删改查;文件操作工具如open、close、grep,支持文件的打开、关闭及搜索;以及支持自定义操作的API工具,使得代理或辅助子代理能够灵活管理状态信息和上下文内容。系统调用接口不仅保障了内核上下文的安全性和稳定性,还允许在此基础上构建更为复杂和智能的功能。
记忆块(Memory Blocks)是内核上下文中的核心概念,它们代表了预留的上下文窗口区域,用于记录智能代理的持久记忆。记忆块具有严格的大小限制,以防止上下文过载并保证信息的有效性。每个记忆块都有标签和描述,这些元数据指导代理存储何种信息,并且支持访问模式设定,包括只读保护以防止误修改。通过记忆块,代理能够在多轮对话中持续保留信息,学习用户偏好,积累知识,甚至可将记忆块在多个代理间共享,实现跨代理协同。记忆块在支持深度研究和复杂任务处理中发挥着不可替代的作用。 文件系统在内核上下文中提供了另一重要抽象。
智能代理由于后训练过程中大量涉及代码任务,对文件操作自然具有高度适应性。文件可以处于“打开”状态,直接加载进上下文窗口,也可以处于“关闭”状态,只存储元信息以节省空间。通过文件系统,代理可以执行代码编辑、文档维护、数据解析等任务。文件搜索工具如向量检索和grep,可以快速定位文件内容,提升信息检索效率。特殊的工件文件则允许代理进行多轮内容迭代修改,无论是代码优化还是创意写作,都可以通过工件进行持续精炼。 用户上下文主要由消息缓冲区构成,类似于操作系统中运行用户程序的空间。
这里既是用户与代理交流的界面,也是代理获取外部上下文资源的入口。用户上下文中包含用户消息、助手回复、系统消息等,支持智能代理的实时交互和反馈。此外,用户上下文还负责记录工具调用日志和响应结果,作为系统动态状态的反应镜像。代理可以通过在用户上下文空间调用系统工具,将新信息注入内核上下文,从而实现双向的数据流转和状态同步。 在工具分类上,LLM OS同样借鉴传统操作系统的设计理念,区分了系统级工具和用户自定义工具。系统工具即系统调用,具备修改内核上下文的特权权限,是保障系统状态管理安全与一致性的关键。
用户自定义工具则在用户上下文中运行,权限受限,主要用于拉取外部数据和上下文,比如基于搜索的实时信息获取或模型上下文协议(MCP)支持的上下文检索。这种权限划分既维护了系统资源的完整,也为外部信息的动态整合提供了通道。 上下文工程与智能代理记忆的关系尤为密切。传统大型语言模型多为无状态设计,每次对话相互独立,缺乏连续性和记忆能力。通过精心设计的上下文工程,智能代理能够实现真正意义上的持久化记忆,逐渐积累经验和知识,进而解决更复杂的问题并通过学习不断改进性能。合理管理上下文资源,能有效避免代理状态崩溃和信息丢失,保持系统的稳定与一致。
目前,Letta作为一款领先的LLM操作系统,积极推动上下文工程的发展。其独特的代理开发环境(ADE)赋能开发者可视化上下文窗口,便于设计和调试智能代理的上下文结构。Letta支持访问长期记忆、海量数据源及文件系统,同时整合外部工具接口如MCP,实现了上下文的灵活管理和动态更新。通过Letta,开发者能够高效构建具备深度记忆和复杂推理能力的智能代理。 总结来看,用户上下文与内核上下文分别承担了智能代理交互及系统管理的不同职责。内核上下文维护核心状态与持久内存,通过严格接口实现安全修改;用户上下文负责实时交互与外部信息交换,为代理提供生动、动态的工作环境。
两者相辅相成,构成完整的上下文工程体系。通过深入理解和合理运用这一体系,智能代理能够突破传统无状态限制,迈向真正具备记忆、学习和长期自我改进能力的智能新时代。未来,随着上下文工程方法不断完善和工具链不断丰富,LLM OS将在推动人工智能走向广泛实用和深度智能方面发挥更大作用。