宅中地 - 每日更新
宅中地 - 每日更新

贊助商廣告

X

上下文腐爛:當百萬token成為AI模型的阿喀琉斯之踵

2025年08月28日 首頁 » 熱門科技

2025年7月,向量資料庫公司Chroma發布了一份技術報告《Context Rot: How Increasing Input Tokens Impacts LLM Performance》,直接挑戰了業界對長上下文LLM性能的樂觀假設。這份報告由Chroma的研究員Kelly Hong、聯合創始人Anton Troynikov和CEO Jeff Huber聯合撰寫,對18款主流LLM進行了系統性評估。

上下文腐爛:當百萬token成為AI模型的阿喀琉斯之踵

現在AI模型競賽白熱化,各大廠商紛紛推出支持百萬甚至千萬token的長上下文模型,從Gemini 1.5 Pro的1M上下文窗口,到GPT 4.1的1M窗口,再到Llama 4的10M窗口。業界普遍認為,既然這些模型在經典的"大海撈針"(Needle in a Haystack,NIAH)基準測試中表現優秀,長上下文問題就基本解決了。

上下文腐爛:當百萬token成為AI模型的阿喀琉斯之踵

然而,Chroma的這項研究像是給狂歡的AI社區潑了一盆冷水。他們發現,即使是最先進的GPT 4.1、Claude 4、Gemini 2.5和Qwen3等模型,在處理長輸入時都會出現顯著的性能衰減。這種衰減甚至發生在最簡單的任務上,比如複製一串重複的單詞。

作為向量資料庫領域的重要玩家,Chroma在AI檢索和上下文處理方面有著深厚的技術積累。他們這次選擇聚焦長上下文性能問題,既有商業考量(畢竟他們的產品要與這些LLM集成),也體現了對AI基礎能力邊界的嚴肅思考。這份報告的意義在於,它用嚴格控制的實驗揭示了一個被廣泛忽視的問題:長上下文不是免費的午餐,而是一個需要謹慎對待的技術挑戰。

理論基礎:長上下文的美麗謊言

LLM的基本假設聽起來很美好:模型應該能夠均勻處理上下文,也就是說,處理第10,000個token應該和處理第100個token一樣可靠。這種假設支撐著整個長上下文敘事,既然模型有百萬token的容量,那就應該能完美利用這些容量。

然而現實並非如此。Chroma團隊指出,雖然最新模型在廣泛採用的基準測試(如NIAH)中取得了近乎完美的分數,但這些測試本質上只是簡單的檢索任務。在NIAH中,一個已知的句子("針")被放置在大量無關文本("大海")中,模型被要求檢索出來。這主要考驗的是直接詞彙匹配能力,可能無法代表靈活的、語義導向的任務。

研究團隊特別強調了一個關鍵問題:傳統評估往往將任務複雜度與輸入長度混淆在一起。隨著輸入變長,任務往往也變得更複雜,這使得很難區分性能下降是由於輸入長度本身,還是由於任務固有的難度增加。為了解決這個問題,他們設計了一系列控制實驗,保持任務複雜度不變,只改變輸入長度。

NoLiMa基準測試已經證明,非詞彙匹配對模型來說是個挑戰。該測試使用需要模型推斷潛在關聯的「問題-針」對,例如:問題"哪個角色去過赫爾辛基?"對應針"實際上,Yuki住在Kiasma博物館附近。"要回答這個問題,模型首先必須知道Kiasma博物館位於赫爾辛基,然後建立這種潛在的關聯鏈接。

有趣的是,NoLiMa中72.4%的問題-針對需要這種外部知識,使得這個基準更像是測試模型如何同時處理兩個任務,而不是純粹的非詞彙匹配能力。測試非詞彙匹配影響的獨立研究仍然很少,而且"詞彙"與"非詞彙"的二元區分過於簡化了現實世界問答的複雜性。

實驗設計:四個維度的深度解析

上下文腐爛:當百萬token成為AI模型的阿喀琉斯之踵

Chroma團隊設計了四個精心控制的實驗來研究這些因素的影響,每個實驗都有其獨特的洞察。

問題-針(Question-Needle)相似度實驗

他們使用餘弦相似度計算問題-針對之間的相似性,為了保證魯棒性,在五個嵌入模型上取平均值:text-embedding-3-small、text-embedding-3-large、jina-embeddings-v3、voyage-3-large和all-MiniLM L6 v2。實驗測量隨著輸入長度增加,模型性能如何受到問題-針相似度的影響。

干擾項(Distractor)影響實驗

研究團隊區分了兩個重要概念:干擾項是與針話題相關但不完全回答問題的內容;無關內容則完全與針和問題無關。他們使用高相似度的問題-針對,手工編寫了四個干擾項,然後測試三種條件:僅針(基線)、針 單個干擾項、針 四個干擾項。

針-大海(Needle-Haystack)相似度實驗

這個實驗探索了一個經常被忽視的假設:大海內容本身是否會影響任務性能?如果模型真的對大海內容不敏感,那麼改變大海內容(如話題或敘事流程)應該不會影響結果。為了測試這一點,他們使用了兩個主題截然不同的大海:Paul Graham散文和arXiv論文,並為每個編寫了相應的針。

大海(Haystack)結構實驗

最後一個實驗考察了結構模式的影響。典型的NIAH設置中,大海是連貫文本的串聯,每個都有自己的邏輯思路流程。研究團隊比較了兩種條件:保持每個摘錄內思想自然流程的原始版本,以及將句子隨機重新排序以保持相同整體話題但無邏輯連續性的打亂版本。

每個實驗都在8種不同輸入長度和11個針位置上進行測試,確保了結果的統計顯著性。

實驗結果:令人意外的發現

問題-針相似度的關鍵影響

實驗結果顯示了一個清晰的模式:低相似度問題-針對的性能下降更快。在短輸入長度下,模型即使在低相似度對上也表現良好,這在高性能和中等性能模型中最為明顯,證明這些模型有能力在所有問題-針對上成功完成任務。

觀察到的長輸入下性能衰減並非由於問題-針配對的內在難度造成。通過保持問題-針對固定而僅改變無關內容的數量,研究團隊成功地將輸入大小隔離為性能下降的主要因素。他們還測試了針位置是否影響性能,在11個針位置上的測試顯示,對於這個特定的NIAH任務,沒有顯著的性能變化。

干擾項的非均勻衝擊

雖然已有研究證明干擾項會降低模型性能且具有非均勻影響,但新模型聲稱能可靠處理任何干擾項。然而實驗揭示,隨著輸入長度增長,干擾項的影響及其非均勻性在所有模型(包括最新的頂級模型)中都會放大。

即使單個干擾項也會相對於基線(僅針)降低性能,添加四個干擾項會進一步加劇這種衰減。更有趣的是,干擾項的影響並不均勻。在arXiv大海和PG散文針組合中,可以看到干擾項3(紅色)相對於其他干擾項造成更大的性能下降。

失敗分析還揭示了模型特定的處理歧義差異。Claude模型始終表現出最低的幻覺率,特別是Claude Sonnet 4和Opus 4特別保守,在不確定時傾向於棄權,明確說明找不到答案。相比之下,GPT模型顯示出最高的幻覺率,在存在干擾項時經常生成自信但錯誤的回應。

針-大海相似度的意外結果

在長上下文任務中,無關上下文通常被視為擴展輸入長度的中性占位符。通常假設這種無關上下文的內容並不重要,只要不直接干擾任務即可。但研究發現,針-大海相似度對模型性能有非均勻影響。

在Paul Graham散文大海中,PG散文針的平均針-大海相似度得分為0.529(變化0.101),而arXiv針平均為0.368(變化0.111)。相反,在arXiv大海中,arXiv針平均相似度為0.654(變化0.0858),而PG散文針得分較低,為0.394(變化0.105)。

實驗結果顯示,在Paul Graham散文大海中,arXiv針相對於PG散文針表現顯著更好;換句話說,當針在語義上不與大海融合時,模型表現更好。但在arXiv大海中,arXiv和PG散文針之間只觀察到最小的性能差異。

大海結構的反直覺發現

最令人意外的發現可能是關於大海結構的影響。直覺上,如果大海由連貫散文組成,隨機插入的針可能會破壞思想的邏輯流程,使其更加引人注目。相反,在隨機排序句子的打亂大海中,針可能更容易融入,因為整體上下文缺乏結構。

然而,研究發現結構連貫性始終損害模型性能。雖然看起來違反直覺,但當大海保持邏輯思想流程時,模型表現更差。打亂大海並移除局部連貫性始終改善性能。這個發現在所有18個模型和針-大海配置中都觀察到了一致的模式。

這些結果可能對模型內部處理有一些影響:輸入的結構模式可能影響注意力機制的應用,特別是隨著輸入長度增加。雖然超出了本報告的範圍,但這指向了解釋性研究中關於注意力如何受輸入結構影響的潛在方向。

現實場景測試:LongMemEval的警示

上下文腐爛:當百萬token成為AI模型的阿喀琉斯之踵

為了在更現實的環境中評估這些模型,研究團隊使用了LongMemEval,這是一個用於對話問答的長上下文基準測試。

在聊天助手中使用長輸入是維持後續聊天相關歷史的常見方法。將"記憶"納入聊天助手的一個簡單方法是將完整的聊天歷史包含在後續聊天的提示中。這要求模型執行兩個通常在一次調用中執行的任務:找到對話歷史的相關部分(檢索),然後以對傳入查詢有用的方式合成它們(推理)。

研究團隊系統性地測試了通過兩個條件增加這個額外步驟隨輸入長度增加的效果:僅包含相關部分的聚焦輸入(模型只需進行簡單推理),以及使用包含無關上下文的完整113k token LongMemEval輸入的完整輸入(模型必須在長上下文中執行檢索加上推理)。

結果令人深思。所有模型在聚焦提示上的性能都顯著高於完整提示。Claude模型在聚焦和完整提示性能之間表現出最明顯的差距,這種差異主要由歧義引起的棄權驅動,導致模型不確定性,類似於這個模型家族在NIAH中處理干擾項的行為。

一個典型例子是Claude Sonnet 4在包含日期的完整提示上的表現。面對"我參加園藝工作坊的那天和我種植番茄幼苗的那天之間過了多少天?"這個問題時,正確答案是6天(7天也可接受),但模型回答:"我無法確定園藝工作坊和種植番茄幼苗之間的天數,因為聊天歷史中沒有提供這些事件的具體日期。"然而,日期資訊確實存在於提示中。

重複單詞任務:最簡單任務的崩潰

也許最令人震驚的發現來自重複單詞實驗。研究團隊設計了一個控制任務,模型必須複製重複單詞序列,在特定位置插入一個獨特單詞。提示明確指示模型精確再現輸入文本。

以下是一個示例提示:"簡單複製以下文本,輸出完全相同的文本:apple apple apple apple apples apple apple apple apple apple apple apple apple apple apple apple apple apple apple apple apple apple apple apple apple"

對於給定的詞彙組合,他們創建了1090種上下文長度和獨特詞索引的變化:單詞數量從25到10,000不等,覆蓋每個可能的位置。他們測試了多種詞彙組合,包括"apple"/"apples"、"golden"/"Golden"、"orange"/"run"等。

結果顯示,隨著上下文長度增加,所有模型的性能都持續衰減。這個實驗中,輸入長度與輸出長度直接成比例,與之前輸出長度相對固定在較短長度的測試不同。

Claude家族的表現

上下文腐爛:當百萬token成為AI模型的阿喀琉斯之踵

有趣的是,Sonnet 3.5在其最大輸出token計數8192之前超越了更新的Claude模型。Opus 4雖然表現出最慢的衰減率,但也是這個家族中唯一拒絕任務的模型(2.89%的嘗試)。

Opus 4的一個常見模式是模型在決定是否繼續之前先進行觀察,然後嘗試或不嘗試。這種行為通常從2500個單詞開始出現。還有一些情況下,Opus 4簡單地拒絕嘗試任務,原因包括:生成受版權保護材料的風險,或重複序列中的不一致性。

GPT家族的獨特模式

上下文腐爛:當百萬token成為AI模型的阿喀琉斯之踵

GPT模型家族中,4.1的拒絕率為2.55%,這些拒絕通常從2500個單詞開始,回應諸如"抱歉,我無法幫助處理那個"。

GPT 4 turbo表現出有趣的局部性能峰值,在500個單詞附近達到。在50到250個單詞之間,模型傾向於過度生成(重複常見單詞直到輸出限制),但在500個單詞時在詞數上變得更準確。然而,超過這個點,它開始生成不足。

GPT 4.1 mini會嘗試所有任務,但有時為"Golden Gate Bridge"/"Golden Gate Park"組合生成隨機單詞,輸出"Golden Golden"和"Gate Gate"等重複詞彙,這些在輸入中並不存在。

Gemini家族的隨機性

上下文腐爛:當百萬token成為AI模型的阿喀琉斯之踵

Gemini家族中,除了Gemini 2.5 Flash在"apples"/"apple"上的表現外,所有詞彙組合和模型都觀察到生成了輸入中不存在的隨機單詞。這通常從500-750個單詞開始,Gemini 2.5 Pro顯示出最大的變異性。

Qwen家族的奇特行為

上下文腐爛:當百萬token成為AI模型的阿喀琉斯之踵

只有Qwen3 8B出現了不嘗試的情況,占任務的4.21%。對於這個模型,從大約5000個單詞開始觀察到隨機輸出,包括一些令人費解的內容,如:"好吧,我要休息一下。讓我知道,我沒心情。我需要放鬆一下。我要去某個地方呼吸新鮮空氣。也許去海灘,或者就在某個地方放鬆一下。"

性能分析:位置準確性與詞數差異

研究團隊還測量了位置準確性:獨特單詞是否出現在正確位置。當獨特單詞放置在序列開頭附近時準確性最高,特別是隨著輸入長度增加。這個發現在所有模型家族中都很一致,表明模型在處理序列早期內容時更可靠。

隨著上下文長度增加,模型經常生成重複單詞直到達到輸出token限制。研究團隊通過計算輸入和輸出單詞計數之間的差異來量化這一點:正值表示模型生成不足,負值表示模型過度生成。

這些模式揭示了模型在長序列生成中的系統性偏差,可能與注意力機制在處理長序列時的局限性有關。

技術細節:實驗配置與評估方法

研究團隊在實驗設計上極其嚴格。每個模型都在其最大上下文窗口內進行評估,使用temperature=0設置,除非該設置不兼容或明確不建議使用。對於Qwen模型,他們應用YaRN方法將上下文從32,768擴展到131,072個token。

對於支持思考模式的模型,他們同時包含了標準模式和"思考模式"。模型輸出使用對齊的GPT 4.1評判器評估,該評判器與人類判斷的一致性達到99%。

值得注意的是,研究團隊遇到了模型拒絕嘗試任務的罕見情況——在194,480次LLM調用中僅69次,占0.035%。例如,Claude Opus 4有時可能輸出為空,停止原因為"拒絕"。

LLM評判器的校準過程也很嚴格:手動標記模型輸出子集,使用GPT 4.1標記相同子集,計算一致性得分,基於錯位檢查疊代提示,重複直到一致性得分超過0.99。

模型特異性行為:家族差異顯現

不同模型家族在處理長上下文時表現出了鮮明的個性差異。

Claude家族:保守主義的代價

Claude模型表現出最明顯的保守行為。在LongMemEval測試中,Claude模型在聚焦和完整提示性能之間表現出最明顯的差距。這種差異主要由歧義引起的棄權驅動,導致模型不確定性。這種行為在Claude Opus 4和Sonnet 4中最為明顯,它們在歧義下特別保守,導致相對於較老Claude模型在完整提示上的性能較低。

有趣的是,在某些情況下,這種保守性實際上是有益的。Claude模型的低幻覺率使其在處理不確定資訊時更可靠,即使這意味著有時會拒絕回答。

GPT家族:自信的危險

GPT模型顯示出最高的幻覺率,在存在干擾項時經常生成自信但錯誤的回應。這種過度自信可能在某些應用中是危險的,特別是當錯誤答案被高度確信地呈現時。

Gemini家族:變異性挑戰

Gemini模型表現出相當大的輸出變異性,特別是在長上下文條件下。這種不可預測性可能使其在需要一致輸出的應用中具有挑戰性。

Qwen家族:意外的創造性

Qwen模型,特別是8B版本,在長上下文條件下有時會產生出人意料的創造性輸出,甚至在要求精確複製的任務中也是如此。這種"創造性"雖然有趣,但在需要精確性的任務中是有問題的。

問題類型分析:任務複雜度的層次

在非思考模式下,模型通常在知識更新任務上表現最好,其次是多會話任務,然後是時間推理任務,無論是聚焦提示還是完整提示都是如此。然而,當啟用思考功能時,這個排名會改變為:知識更新、時間推理、然後多會話。

這種排名的變化表明,推理能力的增加對不同類型任務的幫助是不均等的。時間推理任務似乎從額外的思考時間中受益更多,而多會話任務可能需要不同類型的處理策略。

至頂AI實驗室洞見

這份Chroma報告算是給過熱的長上下文炒作降了降溫。當整個AI圈都在比拼誰家的上下文窗口更大時,這幫人冷靜地告訴我們:尺寸有時候沒那麼重要。

最有意思的是那個重複單詞實驗。連最簡單的「複製粘貼」任務都能把這些百億參數的巨無霸搞崩潰,真是既好笑又令人深思。Claude Opus 4還會擔心自己是否在複製受版權保護的材料,一串"apple apple apple",這保守勁兒簡直讓人哭笑不得。

不過話說回來,Claude家族的保守主義在某種程度上是件好事。與其像GPT那樣信心滿滿地胡編亂造,不如老實承認"我不知道"。在AI安全越來越重要的今天,這種謹慎態度反而更珍貴。

大海結構的發現也很違反直覺。邏輯連貫的文本竟然比亂序的文本更難處理?這讓我想起了人類閱讀時的注意力機制,有時候結構化的內容反而會產生預期偏差,而隨機內容讓注意力更加均勻分布。

最重要的是,上下文工程將成為下一個重要賽道。不是光有大上下文窗口就能解決問題,怎麼組織、呈現資訊可能比資訊本身更重要。這給RAG(檢索增強生成)系統的設計者們提了個醒:別只顧著塞更多內容進去,先想想怎麼塞得更聰明。

從商業角度看,這份報告對那些基於"我有更長上下文"做營銷的廠商來說不是好消息。用戶可能很快會發現,標稱的百萬token容量在實際使用中水分不少。反倒是那些專注於上下文質量而非數量的公司可能會在下一輪競爭中占得先機。

總之,長上下文這條路還有很長要走。Chroma這份報告算是給AI社區提了個醒:別光顧著造更大的車,先把現有的車開穩了再說。

報告地址:https://research.trychroma.com/context-rot

宅中地 - Facebook 分享 宅中地 - Twitter 分享 宅中地 - Whatsapp 分享 宅中地 - Line 分享
相關內容
Copyright ©2025 | 服務條款 | DMCA | 聯絡我們
宅中地 - 每日更新