Context Engineering 在近期不斷被討論,隨著 AI 技術越來越發展,AI 開發者們也逐漸從 Prompt Engineering 的研究轉向 Context Engineering,大幅的改善了 AI 對於回答不精確、甚至出現幻覺的情況。那究竟 Context Engineering 有什麼魔力,本文將帶大家一探究竟!

做好 Context Engineering,比會下 Prompt 更重要
明明都寫好 Prompt 了,為什麼 AI 還會出現幻覺?
當我們在和 ChatGPT 聊天時,有時會遇到雞同鴨講的情況,雖然情況已較以往優化許多了,但還是偶爾會碰到。我認為會出現幻覺的原因可以歸類為以下三種:
- Prompt 下錯:在這個人均 Prompt Engineer的年代,機會已大幅的降低。你總不可能將 ChatGPT 定義為一個廚師,卻叫他教你修汽車吧…
- LLM 本身限制:LLM 是藉由預測每個字串和下一個字詞出現的機率,來產出文字、句子或文章的。這代表, LLM 在生成回覆時常常會以「最保險的方式」來進行生成,但最保險的字串可能僅涵蓋 90% 可能的結果,剩下的 10% 可能就是 LLM 的盲區,而這些盲區可能就是 AI 出現幻覺的地方。
- 訓練資料過時:眾多模型都是使用過往資料來進行訓練,例如 GPT-5 模型的訓練資料截至 2023 年底,在 2024 年之後的資料,便需要透過上網查詢來進行補充,但這部分的功能確實也會有些誤差,導致幻覺的出現。
為了要減少 AI 出現幻覺的可能性,我們也必須要提供適當的情境讓 AI 判讀我們的需求。於是 Context Engineering 便誕生了。
什麼是 Context Engineering?
比起在 Prompt 中加入一堆詠唱咒語(例如:你是一個行銷專家,幫我生成關於…的文案),Context 更注重在 AI 模型該在什麼樣的情境下做決策。
AI Agent 在執行特地任務時,常常會需要一些特定的專業知識、背景、檔案、數據等資料來進行輔助。並且在往後的任務需求,Agent 都會運用這些已經預先提供的情境、記憶,來進行任務處理。

Context Engineering 與 Prompt Engineering 的比較 Source: Anthropic
就好像你在教導一位公司的新同事,要如何處理每周的廣告報表一樣。Prompt Engineering 可能就會和這位新同事說:「你是一個數位行銷專家,請幫我根據這周的 Meta 廣告成效數據,生成一封報表信件。」這時候同事聽到可能會霧煞煞,然後上 Meta 後台來去進行數據撈取,並整理成一份「他認為的報表」但這極有可能不會是客戶想看到的。然而,Context Engineering 則是會提供給你過往的報表、表格的 Template、關注的數據要有那些、參考信件的格式長怎樣、你還可以用到的工具有什麼。接著新同事就會照著這些「規範」來執行任務,生產出來的周報才會是符合期待的。
所以 Context Engineering 其實對一個新的 AI Agent 來說,就好比是 Orientation,一個好的 Orientation,就應該要教導新人有哪些東工具可以用、哪些資料可以查、哪些地方要注意,人是如此,AI 更是如此。
跟人類一樣,AI 也需要一個舒服的環境
Context Engineering 提供了一個舒服的環境讓 AI Agent 能大展拳腳,但是 Context 也必須要符合 AI 能夠消化的範疇,當我們針對 AI 的 Context 太精確、反而限制了 AI 的洞察想法;太過模糊的話,也會導致 Agent 產出不如預期。

營造適當的 Context 讓 AI 的產出符合預期 Source: Anthropic
Anthropic 在近期的文章也有提到 Context Engineering 的一些小撇步,幫大家整理成以下幾點:
- System Prompt:在和 AI 互動前,先下好指令定義這個 Agent 執行的系統,並且以結構化的方式呈現。常見的結構會包含角色、背景知識、回覆格式等內容。
- Tools:提供 Agent 他所需要的工具,並且告訴他該如何使用。透過創建各種不同的 Agents 來針對不同的工作執行,並且將成過送交給下一位 Agent。或是使用 MCP 來讓模型與外界的特定工具進行連接,產出更精準的內容。
- Examples & Constrains:提供給 Agent 一些參考範例,並告訴他要學習這份範例的哪個部分(例如:學習他的語氣、學習他的邏輯方式等等)。並且要給 AI 限制,限制他的輸出格式、風格等,讓 AI 產出能使用的內容。
- Memories:維護模型記憶也是很重要的一點,雖然 Agent 會盡可能的記得我們所有交談過的內容,但因為 Agents 的記憶也相當有限,常常會發生記憶錯亂的情況。這時,就會需要透過定期維護更新記憶,並且去除掉不必要的記憶,或是使用外部記憶庫來保持 Context 的精簡,來讓 Agents 維持在一個正確的道路上。
有了這些 Context Engineering 的技巧,讓 AI Agent 可以從「回答」進化到「思考」階段,也讓我們從以往注重 Prompt 的階段,到驅動 AI 進行思考的地步。相信在未來, Context Engineering 會是一個很重要的專業,讓更多 AI Agents 能有不一樣的玩法,更有效率的幫助我們完成任務。