一開始明明只是「做一個簡單的待辦清單」,聊了二十輪之後,卻多了會員系統、排行榜,連原本的按鈕名稱都換掉了。
這種需求在長對話中慢慢偏移的現象,可以稱為 Context Drift;研究上比較接近的說法是 lost in multi-turn conversation。
Day 08 問的是「此刻 AI 桌上攤著哪些東西」,那是橫切面。這篇問的是「這些東西怎麼一輪一輪堆成現在這樣」,是縱切面。
這很像傳話遊戲。每一輪只偏一點點,累積下來,最後的版本和最初的需求已經是兩件事。
常見的跡象有幾種:
會員系統和排行榜,八成不是 AI 偷偷塞的,是你在第九輪和第十四輪自己說的。
每一輪你都同意,每一輪也都只多一點點。drift 不是失控,而是一連串各自合理的小決定加起來的結果——這才是它難察覺的地方。
你在第三輪說「先用假資料就好」,那句話的重點是「先」,為的是快點看到畫面。
二十輪後它還在用假資料,而你早就忘了自己說過什麼。AI 沒有記住那是暫時的,它只看到你說過這樣可以。
同樣的事會發生在暫定的資料庫、暫定的命名、暫定的簡化邏輯上。臨時方案不會自己舉手說該退場了。
每隔一段時間問一次:
請用三句話說明我們現在在做什麼、有哪些不能改的限制。
然後跟你心裡的版本對一下。不一致的地方,就是飄掉的地方。
這個動作幾乎沒有成本,而且最容易照出那些被當成永久規格的臨時決定。
維護一份決策紀錄。 就是 Day 10 問完之後那份確認過的清單,別讓它停在當天。上面寫四件事:目前目標、不能改的限制、重要命名、已經確認的選擇。
任務切短。 一次只處理登入頁,不要在同一輪又改資料庫、首頁和部署設定。
該重開就重開。 對話累積了大量無關內容時,開新會話並把最新的需求摘要帶過去,通常比繼續在原對話裡糾正有效。研究發現,同一個任務改成多輪逐步補充之後,模型表現平均掉了 39%,而且早期一旦轉錯彎,後面很難自己回來。
傳話遊戲之所以好玩,是因為從頭到尾沒有人說錯話。每一輪都只差一點點,而終點那句話已經面目全非。定期回頭對一次原話,是唯一的解法。
Laban, P., Hayashi, H., Zhou, Y. & Neville, J. (2025). LLMs Get Lost In Multi-Turn Conversation. arXiv:2505.06120(preprint),Microsoft Research 與 Salesforce Research。研究模擬二十萬場以上的對話,比較同一個任務「一次講完」與「分多輪逐步補充」的差別:後者讓各家頂尖模型的表現平均下降 39%。作者指出,退步主要不是能力變差,而是穩定度大幅下滑——模型在早期做出錯誤假設後,往往無法在後續對話中修正回來。