Day 05 說人要負責給 Context,那時列的是你主動提供的部分:技術環境、限制、既有程式碼、不能碰的地方。
但 AI 實際看到的,比你主動給的多很多。
可以把 Prompt 想成你交代同事的一句話,Context 則是他桌上的所有東西:目前開啟的程式碼、前面聊過的內容、需求文件、錯誤訊息、截圖、專案規則,甚至工具剛剛查回來的資料。
你以為自己只丟了一句「幫我改這裡」,他桌上其實還攤著前面二十輪對話、三個沒關掉的檔案,和一份早就過期的舊規格。
只說「修掉這個錯誤」,卻沒有給錯誤訊息、相關程式碼和執行環境,它很可能修錯地方。背景不足的時候,AI 通常不會停下來問,而是先猜一個交給你。
把整個專案、數十份文件和長篇對話全部塞進去,就像把整間圖書館倒在他桌上。東西都在,卻不代表能快速翻到真正重要的那一頁。
研究也發現,同一份關鍵資訊放在開頭或結尾時最容易被用到,夾在中間時效果明顯下滑,連標榜長 Context 的模型也一樣。
舊文件寫「使用 JWT」,新規格改成 Session,兩份資料同時存在,AI 就可能選錯版本。
這在 Vibe Coding 特別容易發生,因為對話是累積的。你二十輪前隨口定下的做法不會自動作廢,但你早就忘了自己說過。等它照著舊決定寫出來,你還會覺得它不聽話。
這幾件事合起來,就是常被稱為 Context Engineering 的工作:讓 AI 看見的資訊相關、最新,而且彼此不打架。
Prompt 決定你問了什麼,Context 決定 AI 是站在哪個世界裡回答你。
Liu, N. F. et al. (2024). Lost in the Middle: How Language Models Use Long Contexts. Transactions of the Association for Computational Linguistics, 12: 157–173(DOI: 10.1162/tacl_a_00638)。研究在多文件問答與鍵值檢索兩項任務上觀察到一條 U 形曲線:關鍵資訊落在輸入的開頭或結尾時表現最好,夾在中間時明顯下滑,即使是專為長 Context 設計的模型也一樣。