為什麼聊越久,AI 越不可靠
作者 Chatday Editorial Team ·
前十分鐘很美好。AI 懂你要什麼,回答俐落到位,你覺得自己終於找到一個靠得住的工作夥伴。
然後,大約到第三十則訊息,它開始走樣。它忘了你一開始訂下的規則。它把你早就否決的方案又端上來。你糾正它,它連聲道歉,兩個回合之後又犯同樣的錯。
這不是你沒耐心,也不是模型今天狀況不好。長對話真的會變差,市面上每個模型都一樣,而且研究者已經量出差了多少。
長對話裡,AI 的回答到底發生了什麼事
微軟和 Salesforce 的研究者做了一個很好說明的實驗。他們挑了模型平常能輕鬆完成的任務,例如寫一小段程式碼,或依據幾份文件回答一個問題,然後用兩種方式提出來。
第一種方式,整個需求寫在一則完整的訊息裡。第二種方式,完全相同的資訊被拆成好幾輪一點一點給出,就像真人說話那樣:先是一句模糊的開場,接著補一個細節,再改一處,然後又補一個細節。
同樣的模型,同樣的資訊,同樣的目標。變的只有給出的方式。
在超過 20 萬次模擬對話、六類任務上,所有受測的頂尖模型在拆開來給的那一版都明顯更差。平均降幅是 39%。這項研究於 2025 年 5 月發表,並在 4 月的 ICLR 2026 上以口頭報告呈現,那是該領域最重要的會議之一。
更有意思的是它怎麼出錯。模型並沒有變笨,而是變得不穩定,這是另一種、也更惱人的問題。把同一個拆開來問的問題向同一個模型問十次,品質的落差會比一次問清楚時大得多。
原因不難想像。當你的第一則訊息很模糊時,模型不會等你講清楚。它會悄悄用一個猜測把空白填起來,認定這個猜測,然後在上面繼續搭出答案。如果猜錯了,後面的一切都會繼承這個錯誤。研究者發現,模型一旦在對話早期轉錯彎,通常就回不來了,就算你直接糾正它也一樣。
為什麼記憶更大也救不了長對話
最直接的反駁是:現在的模型記憶大得驚人,有的一次能讀一百萬個詞,五十則訊息的對話根本不算什麼。
這在容量上沒錯,在品質上不對,而這兩者之間的落差就是全部的故事。想完整了解這塊記憶怎麼運作,我們另外寫過上下文視窗到底是什麼。簡單說,它就是模型回答時能攤在眼前的文字量。
攤在眼前,和用得好,是兩回事。Chroma 的研究團隊在 2025 年 7 月測試了 18 個主流模型,在每一個裡都看到同樣的規律:輸入越長,準確率越低,而且遠在宣稱的上限之前就開始下滑。一個技術上能吃下一百萬個詞的模型,在五萬詞的時候可能就已經明顯變差了。
那份研究裡有兩個細節特別違反直覺:
- 一段無關的內容就足以造成損害。 只加進一塊干擾性的文字,而不是一百塊,準確率就已經能測出下降。
- 整理得井然有序的文本,可能還不如打亂的一堆。 當周圍材料被打亂時,模型的分數反而比材料照邏輯排列時更高。
還有一個更早、也被反覆驗證的發現,能解釋日常中大半的煩躁。史丹佛主導的一項 2023 年研究顯示,模型最擅長找到長輸入裡最前面和最後面的資訊,對夾在中間的則差得多。你在第八則訊息裡認真寫下的要求,現在正埋在那堆文字的正中間,也就是最糟糕的位置。
把這兩點放在一起,畫面就清楚了。你的長對話不是一份 AI 會去翻的整齊檔案,而是一堆不斷變厚的文字,你那句要緊的話正跟四十則閒聊、走不通的岔路和早就翻篇的修改搶位置。
AI 實驗室知道,也做了變通方案
這不是小圈子裡的抱怨,是廠商自己寫在文件裡的。
Anthropic 的開發者文件介紹了一個叫 compaction 的功能:當對話變長時,自動把較早的部分壓成摘要。給出的理由很直白,「隨著對話變長,回答品質會下降」,所以舊內容會被一段簡短的摘要取代。
這句話值得再讀一次,因為有用的東西就在裡面。對付長對話的官方做法,是把它的大部分丟掉,只留一份摘要。同樣的事你可以在任何一個聊天應用裡手動完成,不花錢,也不用等哪個功能替你做。
對話開始跑偏時該怎麼辦
以下是可以直接照做的版本。把症狀和背後真正發生的事對上號。
| 你注意到的現象 | 背後發生了什麼 | 該怎麼做 |
|---|---|---|
| 忘了你一開始訂的規則 | 那條要求被埋在長對話的中間 | 在最新一則訊息裡重寫一次規則,不是當提醒,而是當成正式要求 |
| 反覆端出你否決的方案 | 被否決的版本還留在紀錄裡,仍然算作上下文 | 開一個新對話,只描述你想要什麼,絕不提你已經排除的 |
| 回答越來越籠統空泛 | 視窗裡互相搶注意力的材料太多 | 用一則訊息總結目前進度,從那裡繼續 |
| 糾正之後還是犯同樣的錯 | 它很早就認定了一個錯誤猜測 | 放棄這條線。一次糾正很難壓過它底下那一整段對話 |
| 對事實錯得理直氣壯 | 這是另一個問題,與對話長短無關 | 參見AI 為什麼會一本正經地胡說 |
再加上五個能提前擋掉大半麻煩的習慣:
- 把整個需求放在最前面。 這項研究最扎實的結論就是:一則寫完整的訊息,勝過把同樣的資訊拆開來餵。多花三十秒,把需求一次寫全。
- 別爭論,直接重開。 對話跑偏時,新開一個不會花你任何成本。只把有用的部分貼過去。
- 長時間使用之後,自己做一份摘要。 請 AI 把已經定下的決定簡短列一遍,你核對無誤後,開一個新對話,把它當第一則訊息貼進去。
- 不同主題分開對話。 工作專案一條線,度假計畫另一條線。混在一起等於給兩邊都添了干擾。
- 一個模型卡住就換一個。 另一個模型根本不知道你上一段對話談崩了。它是乾乾淨淨地面對這個問題,而且常常會以有用的方式給出不同看法,這一點我們在為什麼不同 AI 模型給的答案不一樣裡談過。
最後這條是所有辦法裡最省事的,也是最多人略過的,因為他們只開著一個 AI 應用。
這套建議管不到的地方
幾點實話實說的提醒,這個辦法並非萬能。
從頭開始是有代價的。如果你花了一個小時教 AI 你那份電子報的語氣,丟掉確實心疼,而摘要永遠抓不全。這種情況下,在電腦的備忘錄裡存一份簡短、可重複使用的說明,每開一個新對話就貼進去。有用的部分留下,雜亂的部分丟掉。
這項研究測試的是照著腳本行動的模擬使用者,而不是真人那種雜亂的一來一往,真人能察覺方向不對並及時喊停。一個夠留心、在第三則訊息就抓到錯誤的人,表現會比這些數字暗示的好。這也說明,早期的回答值得認真讀,因為那時候糾正幾乎不花什麼代價。
還有些工作確實需要一條長長的對話,例如啃一份大文件,摘要一壓要點就沒了。為長文件打造的模型,例如 Claude Opus 4.7,處理起來比多數模型好,但並不能消除這個問題。這類工作就保留對話,每隔幾則訊息把核心要求重寫一次,讓它待在那堆文字的靠後位置,因為模型在那裡看得最仔細。
一句話總結
長對話之所以崩,不是因為機器累了。是因為模型在早期悄悄做了一個假設,把後面的一切都蓋在上面,然後又把你最要緊的那句話,埋進了一堆它並不會平均閱讀的文字中間。
明白這一點之後,該怎麼做就很清楚了:一次說完;跑偏了就重開;把你那份說明放在隨手能貼上的地方;某個模型開始原地打轉時,別跟它較勁,把同一個問題交給另一個。