繁體
  • 简体中文
  • 繁體中文

熱門資訊> 正文

「上下文工程」 已經30歲了,而你可能剛知道它

2025-11-03 10:58

AI時代,人不再只是「社會關係的總和」,而是由無數數據、記錄和互動的上下文構成的。

這不是科幻。這是正在發生的現實。

而這一切的起點,是一個被嚴重誤解的領域——Context Engineering(上下文工程)。

來自於上海創智學院劉鵬飛老師團隊,提出上下文工程2.0,剖析上下文工程的:本質、歷史與未來。

一個被遺忘的真相

2025年,當你第一次向ChatGPT輸入一段精心設計的prompt,你可能以為自己在做一件前所未有的事情——用自然語言「編程」,讓AI理解你的意圖。

但如果告訴你,早在2000年,佐治亞理工大學的研究者就在做同樣的事情呢?

那時還沒有GPT,甚至連智能手機都還沒有。

但Anind Dey和他的團隊已經在思考一個核心問題:如何讓機器理解人類所處的「上下文」(context),從而提供更智能的服務?

他們開發了Context Toolkit——一個幫助開發者構建「上下文感知應用」的框架。

當你走進辦公室,系統會自動:檢測你的位置(通過紅外傳感器)、識別你的身份(通過ID卡)、推斷你的活動(會議 vs 個人工作)、調整環境(燈光、温度、通知模式)。

這個過程需要什麼?需要工程師精心設計傳感器網絡、數據融合算法、推理規則——將高熵的原始信號(位置座標、時間戳、環境數據)轉化為機器可以理解的低熵表示(「用户正在開會,不要打擾」)。

這就是Context Engineering。

再往前推,1994年,Bill Schilit在他的博士論文中首次提出「context-aware computing」的概念。

2001年,Anind Dey給出了至今仍被廣泛引用的定義。

上下文是任何可以用來刻畫實體情境的信息。

所以,當團隊説「Context Engineering已經30歲了」,這不是誇張,而是事實。

Context Engineering不是新發明,它是一個持續30年的進化過程。

變化的是:機器能理解的「你」越來越完整;不變的是:人類一直在努力讓機器理解「什麼是人」。

而這個努力的本質是什麼?

第一性原理 —— 為什麼需要上下文工程

讓咱們先做個思維實驗。

場景1:兩個人類的對話

A: 「我有點冷」 >B: (起身關窗) / (遞過一件外套) / (調高空調温度)

場景2:人與傳統機器的對話

用户: 「我有點冷」 >系統: ERROR: Unknown command. Please specify exact operation. >用户: 無奈地走到空調前,手動調到24°C

場景3:人與ChatGPT的對話

用户: 「我有點冷」ChatGPT: 「我理解你感到冷。我可以幫你:1、如果你有智能家居,我可以幫你生成調高温度的指令 2、給你一些保暖建議 3、如果你在辦公室,建議你跟同事溝通調整空調温度…」

看出區別了嗎?

人類之間的溝通如此高效,是因為團隊擁有一種神奇的能力:團隊會主動「腦補」

當A説「我有點冷」,B的大腦會瞬間完成一系列複雜的推理:

語義理解:這不是在討論物理學,而是表達不適

意圖推斷:他可能希望我做點什麼

情境補全:窗户開着?空調太低?他忘了帶外套?

知識調用:我知道關窗/遞衣服/調温度可以解決問題

社交判斷:咱們的關係足夠好,我可以主動幫忙

這個過程,用信息論的語言描述,就是熵減少(entropy reduction)。

想象一個裝滿氣體分子的房間。分子隨機運動,高度無序,這就是「高熵」狀態。如果你想讓它們排列成某個圖案,你需要做功——這就是「熵減少」。

人類的語言也是如此:

「我有點冷」這句話本身是高熵的——它包含的信息量很少,可能的意圖很多。

但人類大腦會自動將其轉化為低熵的具體行動——基於共享的知識、經驗、情境……

機器做不到這一點——這就是人機之間的認知鴻溝(Cognitive Gap)。

如何定義認知鴻溝?

簡單來説,認知鴻溝=人類的上下文處理能力 - 機器的上下文處理能力

大致可以分為四個等級:

Era 1.0: Gap ≈ 90%(機器幾乎什麼都不懂)

Era 2.0: Gap ≈ 30%(機器懂自然語言)

Era 3.0: Gap ≈ 1%(機器接近人類水平)

Era 4.0: Gap < 0(機器超越人類)

現在團隊可以給上下文工程一個精準的定義:

Context Engineering是一個熵減少過程,旨在彌合人類與機器之間的認知鴻溝。

它通過收集、管理和使用上下文信息,將高熵的人類意圖和環境狀態,預處理為機器可理解的低熵表示。

Context Engineering不是「翻譯」,而是「預消化」:

翻譯:把中文變成英文,形式變了,信息量不變。

預消化:把牛排切碎、嚼爛,方便嬰兒吞嚥,也就是降低了處理難度。

你在做的是:把高熵的「你」,壓縮成機器能消化的低熵形式。

30年演化之路

如果把Context Engineering的歷史畫成一幅畫,它會是什麼樣子?

如下圖所示,看到的是一條收斂曲線——人類與機器之間的認知鴻溝,隨着技術進步不斷縮小。

每一次縮小,都引發一場交互革命。

每一次技術突破(認知鴻溝縮小),都會引發三重連鎖反應

1、Interface Revolution:需要新的交互容器來最大化新技術的潛力

2、Context Capacity Expansion:機器能處理的上下文範圍急劇擴大

3、Engineering Paradigm Shift:context engineering的方法論發生根本改變

這不是巧合,而是必然規律。

Era 1.0 (1990s-2020): 傳感器時代

想象2005年的某個下午。你想讓電腦做一件簡單的事:「把昨天的報告發給張經理」。但你不能這麼説。

你必須:打開Outlook → 新建郵件 → 搜索收件人 → 找到文件 → 附加 → 發送。

至少20步操作,幾分鍾時間。

這就是Era 1.0的真相:機器不懂你在想什麼,你必須把每一個意圖分解成機器能理解的原子操作。

而為什麼機器如此「愚蠢」?因為那個時代的計算機本質上是狀態機——只會執行預先編好的程序,不會推理,不會理解。

既然機器無法理解自然語言,那能不能讓它至少「看到」用户的狀態?

1994年,Bill Schilit做了一個實驗:在辦公室裝滿傳感器,給員工發ID卡。

當你走進會議室,系統自動檢測到:「這是張三,在301會議室,現在14點,日曆顯示有會議」。

於是自動:手機靜音、投影文檔、郵件自動回覆「開會中「。 這是人類讓機器「主動理解情境」。

研究者們設計了一個四層架構:

【應用層】智能服務(自動調節燈光、推薦文檔)

【推理層】規則決策(IF 在會議室 AND 14:00 THEN 靜音)

【上下文管理層】標準化數據(位置=301,時間=14:00)

【感知層】傳感器原始數據(GPS、時間戳、ID信號)

這是一條從高熵到低熵的流水線。

然而,機器只會執行工程師預設的if-then規則。遇到規則沒覆蓋的情況?崩潰。

就像一個只會背菜譜的廚師——菜譜上沒有的菜,他就不會做。機器沒有真正的「理解」,只有機械的「匹配」。

儘管技術受限,Era 1.0建立了深刻的理論基礎。

2001年,Anind Dey的定義至今仍是黃金標準:

「上下文指的是任何可用於刻畫相關實體(例如人、地點或物體)所處情境的信息,這些實體被認為與用户和應用程序之間的交互有關,其中也包括用户本身以及應用程序本身。」

Dey設計的Context Toolkit,第一次讓「上下文」成為可以模塊化、可複用的工程對象。

Era 2.0 (2020-now): 智能助手時代

2020年,一切都變了。

那一年,OpenAI發佈了GPT-3。

當人們第一次看到它的演示,震驚是普遍的:你輸入:「幫我寫一封郵件,告訴老闆我明天請假去看病。」 它輸出一封格式完整、措辭得體的請假郵件。

這是Era 2.0的分水嶺:機器從「狀態機」進化成了「理解者」。

還記得Era 1.0的痛苦嗎?你必須把「發郵件」分解成20個步驟。現在呢?

熵減少的工作,從人類轉移到了機器。

認知鴻溝縮小,人類終於可以用自己習慣的方式——自然語言——和機器對話。

但Era 2.0不只是「會説話」這麼簡單。革命發生在多個層面:

第一,感知升級:從單一傳感器到多模態融合。

Era 1.0的系統只能讀懂GPS、時間戳這些結構化數據。

Era 2.0的系統可以看懂圖片(你發一張菜譜照片,它能識別食材和步驟)、聽懂語音(你説「我想吃川菜」,它理解口味偏好)、讀懂文檔(你上傳PDF合同,它能提取關鍵條款)。

這叫「多模態感知」——機器學會了用人類的方式接收信息。

第二,「高熵上下文消費能力」提升:從「只吃精加工食品」到「能消化原材料」。

這是Era 2.0最關鍵的突破。

用一個比喻:Era 1.0的機器像嬰兒,只能吃米糊(結構化數據);Era 2.0的機器像成年人,可以直接吃牛排(原始信息)。

什麼是「原始信息」?

你隨手寫的一段話:「我覺得最近壓力有點大,想找個安靜的地方度個假。」 這句話是高熵的:沒有明確説去哪里、預算多少、什麼時間。

但GPT可以理解:「壓力大」→需要放松,「安靜的地方」→避開熱門景點,「度假」→可能3-7天。然后它會問:「您預算大概多少?傾向國內還是國外?」

這就是「高熵上下文消費能力」——機器學會了處理模糊、不完整、高熵的輸入。

用信息論的語言:Era 2.0的系統可以接受高熵輸入,並通過自身的智能進行熵減少。

第三,從「被動響應」到「主動協作」。

Era 1.0的系統是反應式的:「IF 位置=會議室 THEN 手機靜音」。

Era 2.0的系統是協作式的:你在寫論文→系統分析你的寫作進度→發現你卡在第三章→主動建議:「要不要我幫你梳理一下邏輯?」→你同意→它生成大綱→你修改→它根據反饋調整。

這不是「感知你的狀態」,而是「理解你的目標並幫你達成」。 團隊從context-aware(上下文感知) 進化到了context-cooperative(上下文協作)。

以GitHub Copilot為例,工程師不再需要寫「IF用户輸入函數名THEN提示參數列表」這樣的規則。

相反,模型通過學習數十億行代碼,自己理解了「上下文」意味着什麼。

但這里有個微妙之處:上下文窗口的限制

GPT-3的上下文窗口只有4096個token(約3000字)。這意味着,即使模型很聰明,它也只能「看到」有限的上下文。

所以context engineering又變成了精選上下文的藝術:什麼信息最重要?如何在有限空間里塞進最多價值?如何組織信息讓模型更好理解?這就是Prompt Engineering

在agent的背景下,prompt engineering偏向於單次,而當對話更加偏向多輪維護和演化,團隊又有了普遍理解下的context engineering。

這個是基於現實需求的:需要多次推理和更長時間範圍內運行的AI 智能體。

context engineering在動態策劃和管理進入context window 的信息流:包括收集、存儲、管理、利用。

這個本身就有很多的設計元素,所以Karpathy説:context engineering是藝術和科學。

諷刺的是,當機器變得更聰明,context engineering反而變得更復雜了。

為什麼?因為選擇太多了:

我應該給它多少上下文?

以什麼順序組織?

如何平衡細節和概括?

何時用few-shot,何時用zero-shot?

如何避免「lost in the middle」問題?

這就是為什麼團隊需要一個系統化的框架。

如何做好Context Engineering 2.0?

理解了context engineering的本質(熵減少)和歷史(30年演化),讓咱們回到最實際的問題:

在大模型時代,如何做好context engineering?

基於對100+篇論文的分析和實踐經驗,團隊提出一個系統化框架:

Context Engineering = Collection × Management × Usage

即:上下文工程 = 如何收集上下文 × 如何管理上下文 × 如何使用上下文

這三個維度是正交的——你可以在每個維度上獨立優化。

維度1:Context Collection(收集)

核心問題在於:如何收集並存儲有價值的上下文?

Collection的本質是回答:機器需要知道「你」的哪些方面?

在Era 1.0時代,那時候機器趨向單設備、結構化,機器只需要知道你的「指令」。

機器能收集的上下文極其有限:GPS: 你在哪;Clock: 現在幾點;Keyboard: 你打了什麼字

存儲?全在本地硬盤里,txt日誌或簡單數據庫。網絡上傳?那時候網速慢、不穩定,根本不現實。

Era 2.0時代,多設備、多模態開始成熟,機器需要知道你的「意圖」。

機器可以從無數「觸角」收集上下文,傳感器更加強大了:手機的GPS/加速度計/攝像頭、可穿戴設備的心率/步數、智能家居的温度/光線、雲服務的郵件/日曆、第三方API的天氣/交通。

更重要的是,機器學會了「多模態融合」: 看圖片(識別你在吃什麼)、聽語音(理解情緒和意圖)、讀文檔(分析工作內容)。

而對於存儲,context的存儲甚至可以不侷限於context window,也可以擴展到本地文件存儲,甚至上傳到雲端,甚至可以存放在大模型參數中。

團隊預測,Era 3.0時代將實現無感採集,機器需要知道你的「狀態」。

此時,context的收集應當更加順滑。通過腦機接口,可以獲得人的注意力、情緒、認知負荷等等;通過AR眼鏡,人的視線、環境、社交互動可以被更好地捕捉… …

維度2:Context Management(管理)

收集到上下文之后呢?

想象你剛結束一場3小時的頭腦風暴會議。筆記本上寫滿了想法、疑問、決策、待辦事項。現在,你會怎麼處理這些信息?

如果你什麼都不做,只是把筆記本扔進抽屜——那麼之后,你可能只剩下幾個模糊的印象。

如果你花30分鍾整理——提煉核心決策、標註優先級、歸檔到不同文件夾——這樣,你就可以快速找到關鍵信息,接着干活。機器也面臨同樣的問題。

這就是Context Management的本質:存儲和組織原始信息,讓上下文可以被更好地利用。

你和AI聊了3小時,生成了20萬個token。

現在你問新問題,AI需要讀完這20萬個token嗎?顯然不行。在設計時,人往往會採取一系列組織策略:

分層記憶架構:團隊可以將記憶分成長短期。比如短期記憶(RAM)可能存儲當前對話的最近10條消息,長期記憶(硬盤)可能存儲跨會話的重要知識和偏好。

子代理隔離上下文:Claude Code創建子代理執行獨立任務(「搜索文檔」),給它獨立的上下文窗口和最小權限。完成后只返回結果——不污染主上下文。就像人類臨時叫同事查數據,他只告訴你結論。

輕量引用:不把大文件塞進上下文,而是存到外部,只放「指針」。平時只看摘要,需要時再調用完整數據。

不過,如果只原樣存儲對話,那只是「記憶」——得翻遍所有對話才能找信息。

但如果AI能主動提煉——把100條對話壓縮成「用户偏好清淡口味,關注健康,預算中等」——這就變成了「知識」。

就像人類認知過程: 短期記憶(今天吃了什麼)→語義記憶(我喜歡吃川菜);具體經歷(每次開車細節)→技能(開車技能)。

這個把記憶不斷抽象化乃至形成認知的過程,被稱為Self-Baking

團隊的策略可能是——

自然語言摘要:保存完整對話,定期生成摘要。

結構化提取:提取關鍵事實填入預定義結構,構建實體圖(用户-偏好-航班-關係)。

漸進式向量壓縮:把信息編碼成數學向量,多級壓縮(100條對話→10個向量→1個超級向量)。舊向量定期「合併「成更抽象的向量。

而Self-Baking的本質,其實就是把「存儲」和「學習」分開。

沒有Self-Baking:AI只會回憶(「你上次說了什麼?」)

有了Self-Baking:AI可以積累知識(「我知道你喜歡什麼」)

這是從「工具」到「夥伴」的分水嶺。

維度3: Context Usage(使用)

收集了上下文,管理好了上下文,最終還是要用起來。

咱們還是分三個階段來討論:

Era 1.0: 被動響應

那個時代,機器只會「if-then」。

你走進辦公室,傳感器檢測到:「位置=辦公室,時間=9:00」,於是系統執行:「手機靜音,打開電腦」。

上下文的使用完全是被動的、固定的、局部的——每個模塊各自為政,通過集中式上下文服務器讀取數據,遵循全局schema,沒有協作,沒有推理,沒有適應。

這不是「理解」,只是「匹配」。

Era 2.0: 主動理解

現在,機器學會了初步「理解」和初步「協作」。

對於上下文的利用,2.0時代有很多設計考量:

在多agent系統中,多agent之間的上下文怎麼共享?

在RAG的過程中,怎麼進行更好的選取和搜索?怎麼更好地讓回答符合用户個性化?

甚至未來,上下文的長度越來越長,中間會遇到什麼樣的挑戰?

工業上,也有很多細節性策略。比如怎麼處理kv cache?怎麼更好地設計tool?claude code的相關設計是什麼?Deep research相關的設計是什麼?

Era 3.0:流暢協作

那時,交互將變得完全自然——你感覺像在和一個深刻理解你的朋友交流。

系統間協作不再需要翻譯器,AI代理們像人類一樣自然理解彼此,動態對齊概念和意圖。上下文選擇變成主動構建——預測你下一步需要什麼,提前準備好支持性上下文。

記憶系統真正像人腦一樣自主進化,自己發現複雜關係,動態調整結構,主動決定什麼該記、什麼該忘。

甚至AI不再需要你明確説明需求,通過微妙線索就能把握你的真實意圖,甚至在你自己沒意識到時就提供幫助。

那時的人機共生應當是這樣的:AI成為你的認知延伸,而非外部工具。

關鍵轉變兩點點:

1、從感知上下文,到協作上下文,到構建上下文,

2、機器不再只是理解你的上下文,而是開始為你構建新的上下文。

當AI超越人類

現在,團隊做了一個大膽的思想實驗。

如果認知鴻溝的收斂曲線繼續延伸下去,進入Rea 4.0時代會發生什麼?

團隊認為,在某些任務上,AI的能力將超越普通人類。這不是科幻,而是正在發生:

Chess: AI早已超越人類(1997)

Go: AlphaGo超越人類(2016)

Protein Folding: AlphaFold超越人類(2020)

Code Generation: Copilot在特定任務上接近專家水平(2023)

Mathematical Reasoning: 正在快速逼近(2024-2025)

問題是:當AI全面超越普通人類時,Context Engineering會變成什麼樣?

可能是:AI不再等你問問題;AI通過分析你的行為模式,推斷出你自己還未明確的需求;AI主動構建上下文,而不是被動接收……

這是認知倒置:從「人教機器「到「機器引導人」。

因此,團隊認為,上下文會構成新的人類身份。

當員工離職后,組織可能仍保留其「上下文表示」,系統可以諮詢、模擬甚至與這個上下文協作。

這些上下文的總和,在某種意義上,就是「數字化的你」。

簡單來説——

傳統觀念:人 = 身體 + 意識

新觀念:人 = 上下文的總和

你想留下什麼樣的上下文?

寫到這里,咱們跟隨團隊完成了一次30年的時空旅行:

從1994年的Context-Aware,到2024年的Context-Cooperative,再到2050年可能的認知融合。

Context Engineering的核心,從未改變:

彌合人與機器之間的認知鴻溝,讓兩種不同的智能形態能夠相互理解、協作、共生。

但它的形態,在不斷演化:

Era 1.0: 硬件密集型(傳感器、規則引擎)

Era 2.0: 數據密集型(用户畫像、知識圖譜)

Era 3.0: 語言密集型(Prompt Engineering)

Era 4.0: 認知密集型(超智能引導人類)

Era 5.0: …

人類正站在通向到3.0的轉折點上。

基於此,團隊給出了三個行動建議——

對研究者:

這個領域還有太多未解之謎:如何評估上下文質量?如何在隱私和效用間平衡?如何設計ethical context engineering?如何處理上下文的動態演化?如何在多智能體系統中管理上下文?

這些問題的答案,將定義下一個十年。

對開發者:

下一個Interface Revolution正在醖釀。從CLI到GUI用了20年,從GUI到Mobile用了15年,從Mobile到Chat用了10年,下一次革命會更快。

誰能設計出最好的「上下文容器」,誰就能定義下一個時代的交互範式。機會窗口正在打開。

對所有人:

思考一個問題:如果你是你的上下文的總和,如果你的上下文會在你之后繼續存在,如果未來的AI會基於你的上下文來「模擬」你,那麼,你想留下什麼樣的上下文?

這不是一個技術問題,這是一個存在主義問題。你的每一次對話、每一個決策、每一個創作,都在塑造你的「數字遺產」。

你在書寫你的上下文,而你的上下文,也在定義你。

你的上下文,塑造了你看到的這篇文章。

這篇文章,也將成為你上下文的一部分。

論文地址:https://arxiv.org/pdf/2510.26493

Github 地址:https://github.com/GAIR-NLP/Context-Engineering-2.0

SII Personal Context:https://www.opensii.ai/

本文來自微信公眾號「量子位」,作者:上海創智學院,36氪經授權發佈。

風險及免責提示:以上內容僅代表作者的個人立場和觀點,不代表華盛的任何立場,華盛亦無法證實上述內容的真實性、準確性和原創性。投資者在做出任何投資決定前,應結合自身情況,考慮投資產品的風險。必要時,請諮詢專業投資顧問的意見。華盛不提供任何投資建議,對此亦不做任何承諾和保證。