上下文工程(context engineering)的 6 種型式
生成式AI剛流行起來時,有些人預言將來會有一種職業叫「提示詞工程師」。結果,現在已經沒有多少人在提示詞工程了,反而是上下文工程更重要。它的核心概念是將上下文(Context)視為一種關鍵但有限的資源,並採取策略來策展與管理這些資訊,以確保模型能持續產生所需的行為和成果。想要了解更多這方面的資訊,可以參考這個影片。

上下文工程是提示工程(Prompt Engineering)的自然演進,它關注的不再僅僅是提示的措辭,而是「何種上下文配置最有可能產生模型所需的行為」。這是一項迭代的藝術與科學,核心目標是優化這些 token 的實用性,同時應對大型語言模型(LLMs)固有的限制。
以下是實現最佳成果的上下文工程策略與實踐細節:
——————————————————————————–
一、 上下文工程的指導原則:最小化與最大化
上下文工程的指導原則是:找到最小化且信號強度最高的 tokens 集合,以最大化達成預期成果的可能性。
由於 LLMs 就像人類一樣,在某一時間點之後會失去焦點或感到困惑,並且存在「上下文腐爛」(Context Rot)的現象——隨著 tokens 數量增加,模型準確回憶資訊的能力會下降。因此,即使模型速度快、能處理的資料量越來越大,上下文仍必須被視為一種邊際效益遞減的有限資源。
為了有效利用AI有限的注意力,上下文工程主要聚焦於以下兩大策略:
1. 策略一:選擇(Selection)— 只放入需要的資訊
選擇意指不將所有資訊都放入上下文視窗,而是挑選有用的資訊。
| 項目 | 實踐方法 | 細節與說明 |
| 系統提示 (System Prompts) | 精準且簡潔地傳達。 | 系統提示應極其清晰,使用簡單、直接的語言,並以「恰當的高度」呈現想法。這需要達到一個平衡:既要具體到能有效引導行為,又要足夠靈活,以避免過於複雜、脆弱或假設共享上下文。應追求最小化的資訊集,但仍需提供足夠資訊確保模型遵循預期行為。 |
| 工具運用 (Tools) | 最小化工具集,並促進效率。 | 工具定義了代理(agents)與環境之間的契約。設計的工具應當自洽、不易出錯、目標明確,且輸入參數應具描述性且無歧義。最常見的失敗模式是工具集臃腫,功能過多或導致工具選擇的歧義點。 |
| 範例提供 (Examples) | 策展多樣性、典範性的範例。 | 範例(或稱 few-shot prompting,在 GPT-3 時代被稱為 in-context learning)是眾所周知的最佳實踐。團隊不應將所有邊角案例塞入提示中,而是應當策展一組多樣化、具有代表性的典範範例,因為對 LLM 來說,範例就像「價值千言萬語的圖片」。 |
| 即時檢索 (Just-in-Time Retrieval) | 動態載入資料,而非預先處理。 | 為了處理過期或有限的知識,應使用檢索增強生成(RAG)等技術,即在回答前透過搜尋引擎或資料庫獲取額外資訊,再將其放入上下文。即時(Just-in-Time)方法是讓代理維持輕量級識別符(如檔案路徑、連結),並在運行時使用工具動態載入資料,如同人類認知方式,需要時才檢索相關資訊。 |
| 工具檢索 (Tool RAG) | 只將相關工具的說明放入上下文。 | 如果有大量工具(例如 1000 個),不應將所有使用說明都放入上下文,因為這會塞爆上下文。應根據使用者的需求,透過檢索只找出相關的工具說明放入上下文。 |
| 記憶挑選 (Memory Selection) | 對長期記憶進行 RAG。 | 語言模型無法每次決策都回憶其「一生」。應將記憶儲存在外部(如硬碟或檔案系統),並在必要時根據時間、重要性(由模型自行評估)和相關性等指標,挑選出最相關的記憶放入上下文。 |
| 內部思考過程 (Reasoning) | 讓模型生成思考過程。 | 許多模型(如 Claude、GPT-4o、Gemini)可以執行深度思考(Deep Thinking),即在給出最終答案前,先在內部進行腦內小劇場,演練各種解法。這些思考過程(如規劃、嘗試、驗證)也應被視為上下文的一部分,讓模型根據自己產生的上下文來生成最終答案。 |
2. 策略二:管理與精煉(Managing and Refining)— 應對長時程任務
對於需要跨越多個行動序列(甚至超過上下文視窗限制)的長時程任務(Long-horizon tasks),即使未來上下文視窗變得更大,上下文污染和資訊相關性的挑戰仍將存在。此時,需要特別的技巧來管理和精煉上下文:
| 技術 | 實踐方法 | 細節與說明 | 來源 |
| 壓縮 (Compaction) | 高保真度地提煉對話內容。 | 壓縮是將接近上下文視窗限制的對話內容進行總結,並以摘要重新啟動新的上下文視窗。藝術在於選擇保留與丟棄的內容,例如,應當丟棄多餘的工具呼叫和輸出結果,但保留關鍵的架構決策和未解決的錯誤。 | |
| 結構化筆記/記憶 (Structured Note-taking) | 將關鍵資訊持久化到外部記憶。 | 這是一種代理記憶(agentic memory)技術,讓代理定期寫下筆記並持久化到上下文視窗之外的記憶中(例如,像一個 NOTES.md 檔案)。這提供了持久性記憶,可幫助代理跨複雜任務追蹤進度,並在上下文重置後,通過閱讀自己的筆記保持連貫性。 | |
| 多代理架構 (Sub-agent Architectures) | 隔離專業任務的上下文。 | 透過使用多個專業化的子代理(sub-agents),每個子代理處理一個聚焦的任務,擁有乾淨的上下文視窗。主代理負責高層次協調和合成結果,而子代理執行深入的技術工作或工具使用。子代理執行完畢後,只返回一個濃縮、提煉的摘要(例如 1,000-2,000 tokens),從而實現關注點的清晰分離,有效隔離詳細的搜尋上下文。 |
——————————————————————————–
二、 融入工作流程以取得最終成果
要將上下文工程的成果轉化為實際工作效益,應將 AI 融入工作流程的三階段路線中:
| 階段 | 目的 | AI 輔助的關鍵點 |
| 階段一:阻擋分心 | 騰出連續的大腦空間。 | 將分散專注的瑣事,如會議前的零碎任務、郵件分類或跨分頁比對,交給助理型 AI 處理。 |
| 階段二:擴大自我能力 (Scale Yourself) | 放大研究、分析與彙整能力。 | 利用 AI 進行「一人分飾多角」的市場調查、競品分析或範本建立。關鍵在於建立一套可以反覆利用的工作流。這階段的 AI 協助進行研究分析,從而刺激深度思考,進行放大的循環。 |
| 階段三:取得成果 (Get Results) | 輸出深入有效的成果。 | 將前兩階段放大的能力,轉化為實際的輸出,例如提案、客製化外展信件、績效報告或進入新市場的策略稿。 |
通過將「工具清單」轉變為「流程思維」,從處理瑣事開始,接著讓 AI 協助研究分析,最後才能有效設計出 AI 輔助輸出的結果。
總結來說,最有效的上下文工程要求我們要有意識地規劃要納進模型資訊,包含:在寫提示詞時,追求極度的清晰和恰當的高度;在設計代理(Agent)時,應設計出 token 效率高的工具集;在處理長時程任務時,則需靈活運用即時檢索、上下文壓縮和多代理架構等方法,以確保代理能夠在複雜和持續的互動中保持連貫性與專注力。
文末小測驗:你抓到上下文工程的重點了嗎?
根據本文內容,回答下面 4 題小問題,看看你對「上下文工程(context engineering)」掌握多少 😊
Q1. 文章提到,上下文工程的核心指導原則是什麼?
Q2. 底下哪一項「不是」文章中歸類在「策略一:選擇(Selection)」下面的實踐方法?
Q3. 文章中的「即時檢索(Just-in-Time Retrieval)」主要是在解決什麼問題?
Q4. 在「將 AI 融入工作流程的三階段」中,「階段二:擴大自我能力(Scale Yourself)」比較像是請 AI 幫你做什麼?
