人的本质是其上下文的总和!上海交大重磅研究预测上下文工程的4个时代
马克思说:人的本质是其社会关系的总和。
上海交大发布的论文化用了这一表达:人的本质是其上下文的总和。

上下文工程(Context Engineering)远非一个新潮术语,它的历史比多数人想象的要长得多。
1845年,马克思写道:人的本质是社会关系的总和。这句话在人工智能时代,被赋予了全新的计算意义。
当机器开始参与人类社会,上下文便不再局限于人与人之间,而是延伸到了人与机器的交互。
这引出了一个根本问题:机器如何才能真正理解我们所处的状况和内心的目的?
上下文工程,正是为了回答这个问题而生的实践,它负责设计、组织和管理所有的上下文信息,目标是让机器能够以符合人类意图的方式行动。
很多人以为这是大模型和智能体时代才有的新玩意儿,但实际上,相关的探索早在20多年前就开始了。
从20世纪90年代初至今,上下文工程伴随着机器智能水平的提升,经历了数个阶段的演变。
它始于围绕原始计算机构建的早期人机交互(HCI)框架,如今演变为由智能体驱动的人机协作(HAI)范式,并可能在未来通往人类水平乃至超人类智能。
大型语言模型和智能体的崛起,让人们前所未有地关注上下文如何塑造模型行为。
研究证实,上下文窗口里的内容,哪怕是微小的变动,也能显著影响模型的性能。同时,市场对能够执行多步推理和长时间任务的系统需求日益增长。
这些趋势共同指向一个核心:如何通过有效的上下文机制,让机器更好地理解并响应人类的意图,尤其是在那些旷日持久的复杂任务中?
尽管提示工程(Prompt Engineering)、检索增强生成(RAG)、工具调用和长期记忆等技术已是上下文工程在当下的具体应用,但这个领域长期被误解和窄化了。
人们常常把上下文简单等同于对话历史、系统提示或智能体所处的环境输入。
实际上,上下文的范畴要广阔得多,而上下文工程的实践也已超过20年。
早期在普适计算(Ubiquitous Computing)、上下文感知系统(Context-Aware Systems)和人机交互领域的研究,早已为今天奠定了坚实且依然适用的基础原则。
上下文工程,一场跨越三十年的进化
要理解上下文工程,我们必须跳出当下的技术热点,认识到它是人机沟通这个宏大命题中一个不断发展的基本面。它的演进,可以清晰地划分为四个阶段,每一阶段的跨越都与机器智能的重大突破紧密相连。


时代1.0:原始计算(1990年代 - 2020年)
在这个漫长的时代,机器理解上下文的能力非常有限。
它们能处理的是结构化输入和简单的环境线索,比如从菜单里选择一个选项,或是接收传感器传来的简单数据。
机器缺乏对意义或意图的深层理解。人机交互依赖于僵硬、预设的格式,所有上下文都必须由人类明确地准备好,翻译成机器能直接处理的语言。
时代2.0:以智能体为中心的智能(2020年至今)
2020年GPT-3的发布是一个分水岭,标志着上下文工程进入了以智能体为中心的时代。
这个阶段的机器展现出中等智能,核心特征是能够理解自然语言输入,并推断出部分隐含的意图。
人机协作变得流畅,用户可以用对话的方式表达需求,系统能理解大部分弦外之音。
上下文不再局限于精确的信号,它可以是模糊、不完整的信息。智能体凭借高级的语言理解和上下文学习能力,主动弥合信息鸿沟,提供更具适应性的交互。
时代3.0:人类水平智能(未来)
随着技术的进一步突破,智能系统有望达到人类水平的推理和理解能力。
到了这个阶段,上下文工程将再次飞跃。
智能体能像人类一样感知并吸收高熵信息,比如社交线索、情感状态和复杂的环境动态。
人机协作将变得真正自然无缝,AI成为一个知识渊博且善解人意的伙伴。
时代4.0:超人类智能(推测)
当智能系统超越人类,它们将拥有某种上帝视角,比人类自己更懂人类的意图。
在这个推测性的阶段,人与机器的主客关系可能发生逆转。
机器不再是被动适应人类定义的上下文,而是主动为人类构建新的上下文,揭示我们自己都未曾察觉的隐藏需求,引导人类的思维。
这种迹象已在围棋领域初现端倪,顶尖棋手正在从AI那里学习全新的、超越人类既有认知的策略。机器从工具,变成了洞察力与灵感的源泉。
为了更清晰地理解这场进化,我们可以对比1.0和2.0两个主要时代的核心特征。

回到20多年前的1.0时代,人类是上下文的提供者,而原始计算机是接收者。
设计师扮演着意图翻译官的角色,将复杂的人类想法拆解、转化为机器可读的结构化格式。这与今天的AI时代形成鲜明对比,现在的机器可以自主解释非结构化的高熵信息。
要理解1.0时代,必须回顾20世纪80、90年代的技术背景。
那时,计算正从命令行界面(CLI)转向图形用户界面(GUI),电脑变得更加亲民。但这并未减轻用户的认知负担,只是改变了交互方式,人类仍需精确地适应机器的限制。
1991年,Mark Weiser提出了普适计算的愿景,设想计算能无缝融入日常生活。
这个想法催生了上下文感知计算,即系统能否通过感知用户状态、环境和任务来动态调整自身行为。
这也引出了那个时代的基础性问题:到底什么是上下文?该如何定义、处理和使用它?
尽管概念先行,但当时的技术瓶颈是巨大的。
机器只能执行预设的程序逻辑,无法理解自然语言的语义,也无法有效处理错误。
人类思维与机器处理能力之间存在一道鸿沟。上下文工程的早期实践,就是为了弥合这道鸿沟。设计师必须设计清晰的交互路径,确保机器能按预定逻辑工作。
21世纪初,Anind K. Dey在2001年为上下文给出了一个沿用至今的经典定义:
上下文是可用于表征实体情境的任何信息。实体是与用户和应用程序之间交互相关的人、地点或对象,包括用户和应用程序本身。
这个定义强调了上下文的多维性,为系统化地利用上下文改善用户体验奠定了理论基础。那个时代的理论工作是全面而深刻的,强调对上下文的整体理解,这与今天常常只关注聊天历史等特定方面的狭隘视角形成了对比。
在实践层面,1.0时代的一个关键创新是从键盘、鼠标等传统输入设备,转向以分布式传感器为中心的模式。
一个通用的上下文感知系统框架被提出,并将其实现为上下文工具包(Context Toolkit)。
该工具包定义了五个核心抽象:上下文小部件(Widgets)、解释器(Interpreters)、聚合器(Aggregators)、服务(Services)和发现器(Discoverers)。
这种模块化的设计,为构建可扩展的上下文感知系统建立了早期的工程基础。
20年后,我们进入了2.0时代。从1.0到2.0的演变,是从原始计算到智能体的飞跃。这场飞跃体现在上下文处理的全流程中。
在上下文获取上,传感器技术日新月异。智能手机、可穿戴设备和环境物联网设备极大地扩展了上下文的来源和种类。2.0时代不仅传感器更多样,从单个传感器中提取多元化信号的能力也更强。

更根本的转变在于系统对原始上下文的容忍度。
1.0时代的系统只能处理简单的结构化信号,如GPS坐标或预定义的用户状态。开发者需要提前定义好什么算作有意义的上下文。
相比之下,2.0时代的系统能直接从类似人类自然表达的信号中解释上下文,比如自由格式的文本、图像甚至视频。系统能处理过去被认为过于原始、混乱和模糊的数据,上下文可以以其原生形式被直接吸收,无需大量预处理。
在上下文的理解和利用上,也从被动感知进化为主动理解与协作。
1.0时代的系统遵循简单的条件-动作规则,比如如果位置在办公室,则手机静音。它响应的是你在哪里,而非你在做什么。
而2.0时代的系统旨在主动理解用户正在做什么,并协作达成共同目标。比如在你写论文时,系统能分析你写过的内容和当前的意图,为你推荐合适的下一部分。
它不再仅仅感知环境,而是深度集成到你的工作流中。我们从上下文感知系统,进化到了上下文协作系统。
机器如何收集、管理和抽象上下文
有效的上下文工程,远不止于收集原始数据。如何处理、组织和抽象这些信息,才决定了智能系统的上限。
随着计算环境日益复杂,上下文的收集也从单一设备扩展到多个端点,包括手机、可穿戴设备、云服务和第三方应用程序接口(API)。智能体将这些多模态信号整合成连续的上下文流。
存储也变得多样化,本地设备、云平台等各有其在延迟、容量和安全性上的权衡。
两个基本设计原则贯穿始终。
一是最小充分性原则,即系统只应收集和存储完成任务所必需的信息,价值在于够用而非海量。
二是语义连续性原则,即上下文的目的是保持意义的连贯,而不仅仅是数据的连续。
在1.0时代,上下文主要在单个设备上收集,存储也以本地为主,比如日志文件或简单的本地数据库。临时状态存在内存里,系统关闭就丢弃。
进入2.0时代,存储通常采用分层架构。
短期或频繁访问的数据缓存在内存或边缘节点以降低延迟。
中期数据如用户偏好,可存储在本地嵌入式数据库(如SQLite、LevelDB、RocksDB)中。
长期持久化、可扩展和跨设备同步则依赖云存储。
对于需要长时间运行的代码智能体,仅依赖容量有限的短期上下文窗口是不现实的。
系统会定期将任务状态和进度存入长期记忆,以便智能体在中断后能恢复工作。例如,Claude Code通过维护结构化的外部笔记,让智能体能够跟踪复杂任务的进度,避免丢失关键信息。
这种结构化的外部记忆,将智能体的规划视野延伸到了短暂的上下文窗口之外。
未来在3.0时代,AI系统将拥有与人类媲美的上下文感知能力。
它们能无缝整合触觉、嗅觉、味觉信息,还能从语调、眼神甚至沉默中捕捉意图和情感。
这些上下文将被统一成长期的个人数字记忆,它不再是静态的数据仓库,而是动态的认知基础设施,支持跨场景的连续推理,甚至实现类似人类的遗忘与回忆。
原始上下文需要经过精心处理才能发挥最大价值。
对于文本上下文,有几种常见的设计。
用时间戳标记上下文,保留其生成顺序。这种方法简单,在聊天机器人中很流行,但它不提供语义结构,难以捕捉长期依赖关系。
按功能和语义属性标记上下文,比如明确标出目标、决策、行动。这让每个条目更易解释,但可能略显僵化。
用问答对压缩上下文,将信息重构成Q&A形式以提高检索效率。这在搜索引擎中很有效,但破坏了原始的思维流,不适合需要全面理解的任务。
用分层笔记压缩上下文,以树状结构组织信息。这有助于清晰呈现信息的分组,但通常无法表示思想之间的逻辑关系,比如因果。
随着上下文变得多模态,如何处理结构、密度和动态完全不同的信息(如文本、图像、音频)成了一个核心挑战。

2.0时代有几种常见策略。
将多模态输入映射到可比较的向量空间。不同模态的输入(文本、图像)被各自的编码器处理后,通过一个投影层映射到共享的嵌入空间。在这个空间里,语义相关的内容在位置上彼此靠近,实现了意义上的对齐。
结合不同模态进行自注意力计算。在映射到共享空间后,不同模态的token被一个统一的Transformer架构联合处理。文本和视觉token在每一层都相互关注,允许模型进行细粒度的跨模态推理。
通过交叉注意力让一种模态关注另一种。这种方法允许一种模态(如文本)直接关注另一种模态(如图像)的特定部分,实现了更灵活、更有针对性的信息检索。
著名AI学者Andrej Karpathy曾做过一个精妙的比喻:LLM就像计算机的CPU,而它的上下文窗口则像是内存——速度快但容量有限。上下文工程就如同操作系统,决定了应该将哪些数据加载到内存中进行有效推理。
AI架构因此也受益于分层记忆的设计。
这种分层方法将记忆分为不同层级,使系统能在保持对近期信息快速访问的同时,将有价值的知识保存在更稳定的长期存储中。
短期记忆存储的是时间相关性高的上下文,而长期记忆存储的是经过处理和抽象、具有高重要性的上下文。信息会从短期记忆转移到长期记忆,这个过程类似于人类的记忆巩固。
上下文隔离是另一种有效的组织策略。
子智能体(Sub-agent)通过功能隔离来管理上下文。
比如Claude Code的子智能体系统,每个子智能体都是一个专门的AI助手,拥有自己隔离的上下文窗口和工具权限。主系统可以将特定任务委托给它,它独立运行,不会污染主对话的上下文。
这既绕过了上下文长度限制,也降低了上下文污染的风险。
轻量级引用则是将大量信息存储在外部,只在模型的窗口中保留一个轻量级的书签或引用。
例如,HuggingFace的CodeAgent将庞大的代码输出存储在沙盒中,模型只与简洁的引用交互,需要时再从沙盒中检索完整数据。这极大地减少了token开销。
原始上下文的累积速度很快,如果不加处理,系统会被淹没。因此,上下文抽象成为可扩展智能体的关键能力。我们称这个过程为自烘焙(self-baking):智能体选择性地将自己的上下文消化成持久的知识结构。

这反映了人类的认知过程,比如情景记忆产生语义记忆,重复动作被抽象为习惯。没有自烘焙,智能体只是在回忆;有了它,它们才是在积累知识。
自烘焙有几种常见设计。
添加自然语言摘要。系统在存储完整上下文的同时,定期生成摘要,提供事件的压缩视图。这种方法简单灵活,但因为摘要是纯文本,缺乏结构,难以进行深度推理。
使用固定模式提取关键事实。系统不仅存储原始上下文,还将关键信息提取到预定义的结构化格式中,如实体图、事件记录或任务树。例如,CodeRabbit在代码审查前会构建一个结构化的案例文件,编码跨文件依赖、历史信息等,使AI能基于完整的系统上下文进行推理,而非孤立地看文件更改。
将上下文逐步压缩为向量。信息被编码为反映其含义的密集数值向量(嵌入)。这些向量可以被压缩和分层,旧的嵌入被定期总结或与现有长期状态融合,形成逐渐更抽象和稳定的语义记忆。这种方法紧凑灵活,但生成的结果不是人类可读的。
上下文的流动与应用决定了智能的边界
上下文的价值最终体现在使用上。它如何在系统内部和系统之间流动,以及如何被选择和应用,决定了智能系统的能力边界。
现代LLM应用常常包含多个智能体,协同完成一个大任务。
多智能体系统的一个实际好处是,它们能处理比单个智能体更多的token,有效扩展了整体的上下文容量。但这带来一个新挑战:这些智能体如何共享上下文以实现连贯协作?

有几种常见的共享模式。
将先前上下文嵌入提示。一个智能体将其思考过程总结为纯文本,包含在下一个智能体的输入提示中。这种方式在AutoGPT等系统中很常见。
交换结构化消息。智能体使用固定的格式(如JSON)交换消息,包含任务类型、输入数据等字段,保证了信息传递的清晰和一致。
使用共享记忆进行间接通信。智能体不直接发送消息,而是通过读写一个共享的记忆空间(如黑板或数据库)来通信。
MemGPT等系统采用这种方式支持异步协作。记忆也可以被组织成图结构,如任务记忆引擎(TME)将推理过程表示为任务图,每个节点编码一个步骤及其依赖关系,使智能体能够可靠地跟踪、重用和恢复多步推理。
上下文共享也发生在不同的系统之间。比如在编程助手Cursor和ChatGPT之间共享代码上下文。
系统内的共享相对容易,因为组件通常是为互操作而设计的。跨系统共享则更具挑战性,因为每个系统可能有自己的数据格式和逻辑。
解决方案通常有两种。
一是使用适配器转换上下文。每个系统保留自己的格式,但增加一个翻译器,将上下文转换为其他系统能理解的格式。
二是使用共享表示。所有系统从一开始就同意使用相同的表示格式,如共享的JSON模式、API、人类可读的摘要,或是语义向量。这避免了为每对系统都构建翻译器的麻烦。
即使上下文窗口再大,LLM的性能仍然受限于输入token的质量。一个关键问题随之而来:在所有可用的上下文中,应该选择哪个子集用于当前步骤的推理?
不相关或嘈杂的记忆会分散模型的注意力,增加推理成本。
经验表明,当上下文窗口占用超过50%时,AI的编码性能通常会下降。这说明过多和过少的上下文都会损害效果。
没有强大的过滤机制,智能体有被自己记忆淹没的风险。因此,有效的上下文选择,成了一种注意力之前的注意力——选择什么才值得被关注。
在2.0时代,上下文过滤是一个动态的、由目标驱动的过程。在选择记忆时,需要考虑几个因素。
语义相关性。选择与当前查询或目标在意义上最相似的记忆。这通常通过基于向量的检索实现。
逻辑依赖性。当前任务直接依赖于先前步骤产生的信息,如规划决策或工具输出。
近期性和频率。最近或经常访问的条目更有可能被再次需要。
重叠信息。如果多条信息传达相同的意思,可以过滤掉较旧或不太详细的。
用户偏好和反馈。AI智能体可以学习用户的习惯,了解他们倾向于重视哪类信息。
考虑到这些因素,系统会采用不同的过滤策略。在RAG管道中,通常包括对源文档进行分块,然后通过语义检索、非语义检索(如关键词匹配)或结构化检索(如知识图谱)来获取候选信息,最后再通过一个重排序阶段来优化相关性。
当前大多数上下文的使用是被动的,系统坐等用户的明确指令。但用户常常难以完全表达他们的需求。因此,上下文工程应让智能体能够主动行动,推断用户未明说的潜在需求、偏好和目标。
这就像一个优秀的人类助手,他会随着时间学习到老板更喜欢看视觉化摘要或晚上是头脑风暴的最佳时间。这些洞察不是预设的,而是从日积月累的交互上下文中挖掘、抽象和验证出来的。
2.0时代,主动推断有几种常见形式。
学习和适应用户偏好。通过分析对话历史、用户文档和过去的交互,识别用户的沟通风格、兴趣和决策模式,并将其整合到一个不断演进的用户画像中。
从相关问题中推断隐藏目标。如果一个用户先问了Python装饰器,接着又问性能调优,系统可以推断出他可能有一个提高软件设计效率的更宏大目标,从而提供更有针对性的帮助。
基于用户的挣扎主动提供帮助。当系统检测到用户可能陷入困境时,比如反复尝试多种方案,它可以主动提供有用的工具,如可视化图表或检查清单,以提高决策质量。
随着交互的不断积累,上下文最终会呈现出一种终身的形式。
这提出了一个终极挑战:当上下文贯穿个体一生时,应如何保存和更新,才能使其保持连贯、适应性,并对人类和机器都可用?
这需要的不仅仅是可扩展的存储,而是一个动态、语义健壮且具备时间感的记忆系统。
这带来了几个严峻的技术挑战。
存储瓶颈。如何在严格的资源限制下,以高压缩率、高精度检索和低延迟的方式,保留尽可能多的相关上下文?我们目前缺乏统一的解决方案。
处理退化。基于Transformer的模型依赖的全局注意力机制,其计算复杂度是输入长度的平方。随着上下文变长,推理延迟、GPU内存占用和I/O吞吐量都会急剧恶化,使得实时处理大规模上下文变得不切实际。同时,推理质量也会下降,模型难以在长输入中保持对关键信息的关注。
系统不稳定性。随着记忆的积累,即使是微小的错误也可能被放大并广泛传播,导致系统行为变得不可预测。没有清晰的边界和验证机制,系统会变得更加脆弱。
评估困难。记忆积累得越多,就越难判断系统的推理是否正确。目前的基准测试大多只检查信息能否被检索,而不检查它是否依然相关、准确或有帮助。这种缺乏可解释性的情况,让信任和改进系统变得异常困难。
要应对终身上下文的挑战,不能再简单地指望扩大上下文窗口或提高检索准确性。我们需要构建一个能够随时间演进的上下文的语义操作系统。这样的系统需要支持大规模、高效的语义存储,并展现出类似人类的记忆管理能力:主动地添加、修改和遗忘知识。它还需要新颖的计算架构来取代Transformer的平面时间建模,实现更强大的远程上下文推理。
在一些新兴的工程实践中,我们已经看到了朝这个方向努力的迹象。例如,通过精细管理键值缓存(KV Cache)来提高推理效率;通过精确设计工具的描述和规模来提升智能体的可靠性;在上下文中保留错误,让模型能从失败中学习;以及在多智能体系统中,通过明确的任务分解和指导来保证协作的有效性。
在具体的应用中,无论是Google的Gemini CLI通过文件系统层级来组织项目上下文,还是通义DeepResearch通过周期性地将长历史压缩为上下文快照来进行深度研究,我们都能看到上下文工程正在变得越来越系统化和精密化。
我们正处在一个转折点。
马克思的论断在数字世界回响:个体的本质越来越多地由他们生成的数字上下文所定义——他们的对话、决策和互动的痕迹。
这些上下文可以在一个人离世后依然存在、演变,甚至通过AI系统继续与世界互动。人类的心智或许无法上传,但人类的上下文可以。
上下文本身,正在成为知识、记忆和身份的一种持久形式。
参考资料:
https://arxiv.org/pdf/2510.26493
https://github.com/GAIR-NLP/Context-Engineering-2.0
END