Andrej Karpathy 最近抛出了一个很有意思的观点:别再用“提示词工程”这个说法了,它应该被叫作“上下文工程”。这不只是换了个名字那么简单,背后有一套完整的逻辑。
人们一听到“提示词”,脑袋里浮现的就是聊天框里那一小段任务描述。但在真正的工业级 LLM 应用里,往上下文窗口里填充什么、怎么填,才是一门既讲科学又看艺术的手艺。
为什么说是艺术与科学?
说它是科学,因为这事背后是一整套系统工程:任务描述和解释怎么写,少样本示例怎么挑,RAG 检索怎么搭,多模态数据怎么塞,工具调用如何组织,状态和历史记录怎么管理,内容又该怎么压缩——全是技术活。
信息给得太少或者格式不对,LLM 缺乏必要上下文,性能上不去;塞得太多或者不相关,成本涨了不说,性能反而可能往下掉。这个平衡确实不好拿捏。
而说它是艺术,是因为做这事需要一种对 LLM“心理学”的直觉——Karpathy 戏称它为引导“人类精神”的直觉。有人对这个说法颇有微词,但观点本身是站得住脚的:这确实既是科学,也是艺术。
从 Software 3.0 说起
要理解为什么“上下文工程”这么重要,得先回到 Karpathy 在 YC AI Startup School 上提出的 Software 3.0 概念。Software 1.0 是传统编程,开发者用 Python、C++ 写明确指令。Software 2.0 进入神经网络时代,通过数据训练,代码变成了模型权重。而 Software 3.0,就是用自然语言与 LLM 打交道的新范式。
Karpathy 有一个极具洞察力的比喻:LLM 不只是一个工具或者 API,它正在成为一种新型操作系统。它有自己版本的“CPU”——推理能力,有自己的“RAM”——上下文窗口,甚至还有自己的“文件系统”——通过 RAG 访问的知识库。
他甚至把现在的 AI 格局比作 1960 年代的大型机和分时共享时代:算力昂贵且集中,用户通过“终端”——也就是聊天界面——远程访问,计算能力以分时方式分配。这个类比,细想之下确实精准。
上下文工程也只是冰山一角
另一个值得注意的点是:Karpathy 强调,上下文工程本身只是 LLM 应用里的一小块。一个完整的 LLM 应用需要做的事远比这多——怎么恰当地把问题拆分成控制流,怎么精准地打包上下文窗口,怎么调度不同类型和能力的 LLM 调用,怎么处理生成-验证的用户交互流程,还有防护栏、安全、评估、并行处理、预取……一长串。
所以,“ChatGPT 套壳”这个曾经带着贬义的说法,现在看来不仅过时,而且大错特错。那个叫做“套壳”的东西,实际上正在成为新的攻坚方向。
有人提出了一个不同的视角:叫“行为工程”可能更合适。不仅包括上下文,还包括包围它的那一整套抽象——控制流、状态、上下文的分割和隔离。这确实把视角拉得更宽了。还有人从实践出发,认为评估工程才是关键——有了好的答案集和手工整理的正确答案,你才能搞清楚什么样的上下文才能解决特定的提示。
一个有趣的小插曲:有网友发现 contextengineering.com 这个域名 20 年前就被注册了。冥冥中似乎早有预兆。
如果说得更日常一些,“上下文工程”对个人智能至关重要——尤其是在设备上运行的小型专用模型。围绕个人构建有意义、持久的上下文,不仅会解锁新的使用场景,还会改变人们与技术互动的方式,甚至重塑生活方式。
有个生动的例子很能说明问题:选择正确的上下文太重要了,因为 LLM 会把你传给它的任何东西当作权威。“在披萨上加胶水”那个经典翻车案例还记得吗?虽然模型已经改进了,但依然不够好。所以在正确的时间设计正确的上下文,这项能力至关重要。
有人用了一个精妙的比喻:上下文工程 ≈ 为模型策划一个即时记忆馈送——只包含最相关、经过验证、隐私安全的数据片段。只要把这个“物流层”做好了,即使上下文窗口不那么宽裕,也能胜过那些只靠花哨提示词的做法。
LLM 的“心理学”特征
Karpathy 在演讲中生动地把 LLM 描述为“易错的天才”——一个很有画面感的说法。
- 锯齿状智能:LLM 可能在某些任务上表现超人,但在看似简单的问题上却会翻车。能搞定复杂的数学题,却可能认为 9.11 比 9.9 大。
- 顺行性失忆症:一旦训练结束,模型就无法巩固或建立长期知识,只有短期记忆——也就是上下文窗口。就像一位患有顺行性失忆症的同事。
- 幻觉:有时会犯人类不会犯的错误,比如坚持“strawberry”里有两个“r”。听起来令人信服,但完全是错的。
- 易受欺骗:极易受到提示注入类攻击的影响。
下一个爆火方向?
有人问,这个概念能像 vibe coding 那样真正火起来吗?有人比较悲观,觉得“提示工程”这艘船已经起航了,现在想改名太难了。也有人调侃说,vibe coding 的概念太强大了,像火一样蔓延,改名的时机已经过了。
但不管名字怎么叫,真正的问题在于:怎么让上下文工程具有未来适应性?模型本身在快速迭代,上下文窗口在不断变大,但获取和理解完整上下文的挑战,并不会因此消失。
更大的上下文图景
回到 Karpathy 的核心观点。当他说 LLM 正在成为一种新型操作系统时,我们或许还需要追问一下:什么是真正完整的上下文?现在的上下文工程主要聚焦于如何在有限的窗口里塞入最相关的信息,但这可能只是开始。
真正的上下文,应该包括用户刚才看了什么网页,正在用什么软件,在 IM 上与谁进行了什么对话,当前的时间、地点、环境状态,甚至用户的情绪、意图和长期目标。
正如 Karpathy 在特斯拉的经历所示,自动驾驶系统发展了十年,仍然需要人类监督。这说明一个道理:即使模型再强,获取和理解完整的上下文依然是一个巨大的工程挑战。
Karpathy 用“钢铁侠战衣”来做比喻——AI 增强和完全自主之间是一个光谱。战衣既可以被托尼·斯塔克直接驾驶,也可以作为智能体半自主运行。这个光谱上的不同位置,对应着不同的上下文需求。
或许,当我们从“提示词”走向“上下文”,再走向更完整的环境感知时,我们才真正接近 AGI 的可能性。模型的能力提升可能会遇到瓶颈,但如果能更全面、更精准地获取和提供上下文,让 AI 真正理解“此时此地此人”的完整语境,那可能会迎来一次新的范式转变。
从给机器下指令,到为机器构建理解世界的框架,再到让机器真正感知和理解它所处的世界。
这,或许才是通向 AGI 的开始。
