CONTEXT ENGINEERING

约束
即智能。

一个失去筛选机制的大脑,和一个塞满信息的 context window,是同一个困境的两种长相。

一个奇怪的病人

他什么都正常,
除了没法做决定。

1990 年代,神经科学家 Antonio Damasio 遇到一个奇怪的病人。这人叫 Elliot,脑部手术切除了一个肿瘤,顺带损伤了前额叶的一小块区域。手术后,智商测试正常,逻辑推理正常,记忆力正常,所有认知指标都没问题。但他没法正常生活了。

他没法做决定。不是不会分析,恰恰相反,他分析得太好了。选午餐吃什么,他能花半小时权衡每家餐厅的优缺点。选用蓝笔还是黑笔签字,他能陷入无尽的比较。老板解雇了他,妻子离开了他。

Damasio 研究了很久,最后得出结论:Elliot 损伤的那块脑区,负责把情绪和决策连接起来。没有了情绪的"偏见"来帮他筛选,所有选项在他眼里同等重要。

核心反转

所有选项同等重要,
等于没有选项重要。

我们通常把"限制"当成坏事:更多信息更好,更多选择更好,更强的处理能力更好。Elliot 的案例指向相反的结论。

第一个命题

约束不是决策的
障碍,而是前提。

人类的情绪系统本质上是一套筛选机制。当你面对选择时,它把你过去的经验、当前的身体状态、社会信号,整合成一个"感觉",比如"这个选项让我不舒服"。你不需要推演导致这个感觉的所有原因,情绪直接给你一个倾向。

这是一种偏见。但没有这种偏见,你会像 Elliot 一样卡在原地

这和 AI 有什么关系

同一个问题的
两种表现。

表面上看,Elliot 的问题是"情绪缺失",AI agent 的问题是"context 管理",一个是神经科学,一个是工程实践。但往深一层看,它们是同一个问题的不同表现:

有限的处理能力,
如何面对无限的信息?

Elliot 的处理能力没问题,但他失去了告诉他"关注这里、忽略那里"的机制。AI agent 的处理能力也没问题,但 context window 有上限:它必须决定把什么放进去、把什么留在外面。人类用情绪来筛选。AI 用什么?

FACT已被实证验证

context 越长,
表现不一定越好。

研究显示,当 context 变长时,模型容易"迷失在中间":对 context 开头和结尾的信息关注度高,中间的信息容易被忽略。更多的信息塞进去,反而可能稀释真正重要的内容。

这不完全是 Elliot 的问题,但有相似的结构:当所有信息都摆在面前,没有机制来区分重要和不重要,系统的表现会下降。

一系列技术

看起来五花八门,
本质上都在做同一件事。

AI 领域发展出了一系列技术来应对这个问题,本质上都在回答:决定 LLM 应该"看到"什么。

A能力组织方式

内化,
还是外包?

Skills把能力内化 · 我自己学会

你想让 agent 会写 PPT,就把工具说明、调用方式、注意事项塞进它的 context,它读完说明自己动手。所有过程发生在同一个 context 里,信息互通,但 context 会越来越臃肿。

SubAgent把能力外包 · 我找人帮忙

你派一个专门的 agent 去写 PPT,它做完把结果交回来。两个 agent 各有独立的 context,主 agent 的工作空间保持干净,但信息在交接时有损耗,你只拿到对方选择告诉你的东西。

本质区别是 context 的边界:共享,还是隔离。

B另一层的东西 · 通信协议

协议是管道,
不决定筛选。

MCPModel Context Protocol

规定 agent 怎么发现和调用外部工具:有哪些工具可用,怎么传参数,怎么拿结果。

A2AAgent2Agent

规定 agent 之间怎么对话:怎么发现对方,怎么协商任务,怎么交换信息。

它们定义的是信息怎么流动,不规定信息怎么筛选。一个 MCP 工具,你可以直接塞进主 agent 的 context,也可以让另一个 agent 去调用然后汇报结果。

协议是管道,架构才是决定 context 怎么组织的地方。

C空间不够时的取舍

Context
compression。

当空间不够,必须做取舍。两种主流方法,各有各的代价:

1直接砍掉旧内容

只保留最近的信息。

粗暴 · 可能砍掉重要的早期信息
2用模型生成摘要

把长历史压缩成短结论,保留信息的"精华"。

留住精华 有损转换 · 被丢的细节可能恰恰是后续要用的
$一个经常被忽略的因素

Context
不是免费的。

更长的 context 意味着更多的计算量、更高的延迟、更贵的 API 账单。在生产环境里,一个任务跑几分钟还是几秒钟,可能决定了这个方案能不能用。

所以 context 管理不只是"怎么让 agent 更聪明"的问题,也是"怎么在预算内完成任务"的问题。你可能有能力把所有相关信息都塞进 context,但你付不起那个钱。

约束不只来自技术上限,也来自经济现实。

把它们放在一起看

所有决策,
都是 context
管理决策。

这一轮推理,LLM 应该"看到"什么?所有东西都是 context 的一部分:

System prompt
预加载的背景
Few-shot examples
塞进去的参考案例
RAG 检索
按需拉取的外部知识
Tool schema
能力的说明书
用户消息
实时输入
一个更大的框架

怎么组织信息,让有限的工作记忆
处理超出其容量的任务。

有人开始用 context engineering 来描述这件事。它不是 prompt engineering 的新说法,而是一个更大的框架。

人类的解法

组织架构,本身就是
一套 context 管理系统。

谁需要知道什么,信息怎么流动,在哪里汇总,在哪里展开。人类解决这个问题已经有很长的历史。

专业分工让不同的人处理不同的信息;层级结构让细节在底层处理、结论向上传递;文档系统把信息外化、需要时再加载。

AI 目前没有对应物

三个更底层的
人类机制。

01渐进遗忘

人类的记忆不是"有"或"没有",而是会逐渐模糊。你记得三年前和某人吃过饭,细节没了,但"那次聊得挺愉快"的印象还在,这种低精度的记忆仍然能指导决策。

AI:context 是二元的,在窗口里就完整保留,不在就彻底消失。
02重要性标记

你更容易记住让你意外、紧张、开心的事情,情绪充当了重要性的标签。

AI:没有内在的重要性判断,只能依靠位置(最近的更重要)或外部规则(用户说重要的更重要)。
03重建而非检索

人类回忆不是从存储里读取文件,而是每次基于碎片重新构建。这意味着同一段经历在不同情境下回想会呈现不同的侧面,有失真的风险,但也有适应当前需求的能力。

能直接移植吗

不一定。

人类的记忆机制是为人类的任务优化的。人类的"任务"是什么?活下去、繁衍、维持社会关系,模糊、长期、多目标。渐进遗忘、情绪标记、重建式记忆,在这个框架下是 adaptive 的。

AI agent 的任务通常更明确、更短期、更单一:写这份报告、修这个 bug、回答这个问题。在这种任务下,人类记忆机制的"模糊性"可能反而是负担,你不希望 agent "隐约记得"你的需求是什么。

但有一个趋势

AI 的任务正在变化

任务变得更模糊、更长期、更复杂。这意味着为简单任务设计的 context 管理方式,可能在新的任务类型上失效。

还有一个问题

经过多次处理后,
它还可靠吗?

压缩会丢细节,摘要会引入偏差,跨 agent 传递时每一方都只传自己认为重要的内容。链条拉长后,最终 agent 做决策时依据的信息,可能和原始事实有显著偏离。

这个问题人类也有,叫组织里的信息失真:一线发生的事,经过几层汇报传到决策者那里,可能已经变形了。每一层都在压缩、都在筛选、都在用自己的框架重新解读。

人类发展出的对策

给被压缩掉的信息,
一条绕过压缩的路。

冗余通道
同一件事通过多条线传递来交叉验证。
越级机制
允许信息绕过某些层级直接向上。
实地考察
决策者偶尔下到一线,直接接触未经过滤的信息。
匿名反馈
让原本不敢说的话有出口。

AI 系统需要对应的设计吗?如果一个 SubAgent 的摘要漏掉了关键信息,主 agent 怎么知道?

目前没有好的答案

如果一个 SubAgent 的摘要漏掉了关键信息,主 agent 怎么知道?

如果 context 经过多轮压缩后失真了,系统怎么发现?

这是 context engineering 还没认真处理的一个维度。

回到开头

Elliot 获得了纯粹理性,
结果是瘫痪。

Damasio 的研究告诉我们,约束不是决策的障碍,而是决策的前提。Elliot 失去了帮他筛选的机制,获得了"纯粹理性"的分析能力,结果是瘫痪。

SCALE正在快速扩大

容量约束,
可能很快消失。

4K
几年前
128K
现在标配
1M~10M
有的模型宣称

tokens · 如果这个趋势持续,context 容量可能很快不再是硬约束。

这是好事吗

问题不会消失,
只会换一种形式。

如果你有无限的 context,但没有机制告诉你什么重要、什么可以忽略,你会陷入 Elliot 的困境:所有信息同等重要,等于没有信息重要。

你需要的不是更大的窗口,而是一套筛选标准。

移除一种,另一种突出

约束的
四种形态。

容量的
塞不下
注意力的
看不过来
经济的
付不起
认知的
不知道该关注什么

人类用情绪、直觉、经验沉淀下来的"感觉"来提供认知约束,AI 目前没有对应物,它的筛选标准来自外部:位置、规则、用户指令。当容量不再是瓶颈时,这个缺失会变得更明显。

最后一个问题

当 context 容量不再是瓶颈时,
什么会成为新的瓶颈?

也许答案是

一套内生的重要性判断机制,不依赖外部规则,能让系统自己知道该关注什么、可以忽略什么。

Elliot 需要的不是更大的脑容量。

他需要的是一个能告诉他"这个选项不对劲"的声音。