作者?|?郝博陽 郭曉靜
?導語:kimi爆火背后的大模型長文本能力,有哪些技術難點?是否能形成護城河?未來的發(fā)展?jié)摿τ卸啻螅?? Kimi火了…… ? 這是這波AI浪潮中,國內創(chuàng)業(yè)公司第一次真正“破圈”。最明顯的標志是,在二級市場中,Kimi已被市場作為一個概念板塊來對待,它們被稱之為“Kimi概念股”。在之前爆炒的板塊中,可能有華為產業(yè)鏈、蘋果產業(yè)鏈,但是,因為一家創(chuàng)業(yè)公司而發(fā)酵一波行情還是第一次。 ? 除了資本市場的關注,實際的用戶量飆升,也能看出kimi的火爆程度。在“AI產品榜(aicpb.com)”統(tǒng)計的數(shù)據顯示,Kimi智能助手在2024年2月的訪問量達305萬,較上個月增長107.6%,幾乎成倍增長。
據第三方機構的最新統(tǒng)計數(shù)據顯示,目前國內已經發(fā)布的大型語言模型數(shù)量已經超過了300個。這些大型模型的發(fā)布主體涵蓋了科技巨頭、國內頂尖的高等學府、以及各類科研機構,他們在資金投入、資源配置、人才聚集等方面都擁有絕對的優(yōu)勢。
然而,在這樣一個競爭激烈的環(huán)境中,為什么月之暗面這樣一個成立僅僅一年的創(chuàng)業(yè)公司會引起最大的關注?
“起爆點”始于3月18日,月之暗面宣布在大模型長上下文窗口技術上取得新的突破,其自研的Kimi智能助手已支持200萬字超長無損上下文,并于今日開啟產品內測。
kimi上線的時間是2023年10月,當時可以支持無損上下文長度最多為20萬漢字。在5個月的時間內,月之暗面直接將長文本能力提高10倍。按照AI領域的計算標準,200萬漢字的長度大約為400萬token。
這種能力在全球知名大模型中的水平如何?下圖可以比較明顯看出,長文本能力最強的谷歌gemini 1.5、Claude3支持100萬token,kimi 200萬漢字上下文長度或已超越海外頂尖大模型水平。

但是,大模型僅僅某項能力的領先,似乎并不足以吸引所有的注意力,畢竟幾乎所有大模型在發(fā)布的時候,都會交出一個優(yōu)秀的基準測試成績單,幾乎所有大模型,都是“一位超越上一個被發(fā)布的模型”的優(yōu)等生。
大模型的痛點:同質化嚴重
所以,在這樣“卷”的大模型市場,kimi究竟為什么會火?其實它的火爆,也從側面反應了大模型市場的痛點,過去一年,市場見到了太多大模型的發(fā)布,每次標準動作有以下幾個:
1、公布模型參數(shù)量;
2、公布模型是開源還是閉源;
3、公布測試集的成績(這些測試集被用于評估大模型在不同領域的能力,包括語言理解、知識問答、文本創(chuàng)作等。通過這些測試集,研究人員和開發(fā)者可以比較不同模型的性能,并識別模型的優(yōu)勢和不足,具體測試集的測試功能,如下圖所示)。
4、行業(yè)內人士或極客們的評測文章。

一番標準動作之后,對于非行業(yè)用戶,面對一些晦澀難懂的參數(shù)及技術詞語,很難記住任何一個大模型有任何突出的特點。再加上國內大模型對C端開放的不多,且即使開放,對C端開放的也為比較基礎的版本。
用戶對國產大模型的印象,基本停留在類似于ChatGPT的聊天機器人??梢試L鮮,但是并不知道大模型對我“實際能有什么用”。
于是大模型的宣發(fā)也進入了大眾看來的行業(yè)內的自High——“看不懂有多牛,體驗不到有什么用?!?/p>
懂營銷的大模型公司
kimi選擇了一個更有辨識度的方式亮相。2023年10月10日,月之暗面的官方公眾號發(fā)布kimi的上線官宣文章,標題中別有心裁地用了“歡迎與Moonshot AI共同開啟Looooooooooong LLM時代”,"long"這個單詞中間,特地敲入了十個“o",long一下子變得視覺可見的長。
而公眾號的第一句就是“今天,Moonshot AI帶著首個支持輸入20萬漢字的智能助手產品Kimi Chat與大家見面了”。
所有的宣發(fā)內容,用戶一眼就能記住一個詞“長文本”。月之暗面是懂營銷的,直接占領用戶心智。從此,用戶看到“長文本”,只能想到“月之暗面”。
月之暗面的目標是C端,為了讓C端用戶能夠理解“長文本”這個技術名詞,楊植麟用了更形象的比喻“支持更長的上下文”意味著大模型擁有更大的“內存”。
這個世界已經被計算機、手機教育過了,每個普通人都有一個“簡單粗暴”的認知,“內存大”就意味著這個手機或電腦配置更高、性能更牛、價格也更貴。
一波漂亮的宣傳,在“卷評測分數(shù)”的大模型界輕松地贏得了普通用戶的心。
在后續(xù)的重要宣發(fā)中,月之暗面不斷重復kimi的長文本能力,創(chuàng)始人楊植麟也在采訪中強調“為什么長文本是登月第一步?它很本質。它是新的計算機內存?!?/p>
早在20世紀60年代,艾·里斯與杰克·特勞特就提出了經典的《定位》理論,它的核心概念在于將品牌建設的焦點從產品本身轉移到潛在客戶的心理認知上。
在定位理論中,占領用戶心智意味著在目標消費者心中為品牌或產品創(chuàng)造一個獨特、明確且吸引人的位置。這樣,當消費者考慮購買某一類產品或服務時,你的品牌能夠成為他們首先想到的選擇。
當用戶認為在國內的大模型中,長文本=kimi的時候,除非競爭對手能以絕對的實力碾壓幾個量級,但凡與kimi打平或者是微弱超越,都很難威脅到kimi在用戶心目中的地位。
即使是如百度、阿里等科技大廠也宣布開放長文本能力,似乎也絲毫沒有影響到kimi的熱度。
而且,kimi只有一個,在資本市場上,可以享受泡沫,但是當退潮的時候,還是要保持一分清醒。
長文本為何重要?
從營銷策略拉回技術本質,kimi選擇堅決攻克的大模型長文本能力,究竟有多重要?月之暗面創(chuàng)始人楊植麟把它解讀為“新計算范式”,通用的世界模型,是需要long context的(長文本)的。
如何理解這句話?如果你把大模型當成一個和你對話的人,可以想象他和我們一樣有短期記憶和長期記憶。長期記憶就是那些在大模型里的通過訓練得到的向量和參數(shù),你可以理解為這是它自身的知識庫。
而上下文就是短期記憶,當你想和他交流的時候,這些不在長期記憶中的新內容,乃至你們對話的全部過程必須以上下文為窗口提供給大模型,超過其上下文承載能力的部分,大模型就會忘掉。
GPT3.5-Turbo初版上下文窗口長度僅有4k token,也就是大概2000字,你和它對答超過兩千字的內容它就基本記不住了,更別提讓他記住復雜的文件了。在這種上下文環(huán)境中,可以說很難讓LLM完成真正復雜,多步的操作,也無法處理文檔等長格式。
為了讓大模型能夠做更多事,拓展上下文就成了各路大模型爭相競爭的一個重要目標。
作為OpenAI被公認的最強大對手,Antropic的大模型Claude的殺手锏就是長文本,其初代模型就支持100k token的上下文,直接可以處理5萬字,使得不那么長的閱讀分析任務足以在上下文限制中完成。這也使它一直在整體性能劣于OpenAI的情況下,總是能保有一群核心粉絲。
同時,長文本也能促進大模型基礎能力的提升,前四個能力是大模型功能優(yōu)化和拓展方面的,通過長文本去實現(xiàn)過去難以支持的功能,或增強過去支持很差的功能:
①?更好地理解文檔。通過擴展LLM的上下文窗口,模型可以更好地捕捉文檔中的長距離依賴和全局信息,從而提高摘要、問答等任務的性能。這是我們作為一般用戶最經常要用的功能。
②?增強指代消解。更長的上下文窗口可以幫助模型更好地確定代詞所指代的實體,從而提高指代消解的準確性。也就是說模型不會忘掉或搞混你們前面提到的“那個男人”,“那份文檔”。
③?改進機器翻譯。擴展上下文有助于更好地保留原文的語義,尤其是在專業(yè)術語、歧義詞等方面,提高翻譯質量。
④?增強few-shot學習能力。通過在擴展上下文中提供更多示例,LLM可以更好地進行few-shot學習,提高在新任務上的泛化能力。如今隨著模型命令跟隨的能力逐步增強,很多時候直接通過Prompt指令就可以讓模型學到新的能力,比如做個英語教師,當個醫(yī)生之類的。但這些功能描述會非常復雜,還需要舉出例子幫助模型學習,長文本支持越好,在Prompt指令中能添加的例子就越多,模型就會學的越好。
另兩項則是對模型基礎功能的提升,因為現(xiàn)在的上下文增加模式除了RAG(檢索增強生成)等引入外部存儲的模式外,內生上下文提升都需要更改Transformer模型本身。
因此在這個過程中模型的能力也會得到相應的提升,簡單來說就是傳統(tǒng)Transformer模型根本理解不了文本間隔比較遠的內容間的聯(lián)系,現(xiàn)在它能了,理解能力也就自然提升了。
①?提升大模型的語言理解和生成能力。更長的上下文有助于LLM更好地理解多輪對話、復雜文本中的語義,并生成更連貫、相關的響應。這對于對話系統(tǒng)、文本生成等應用很重要。
②?提高長文本推理和QA能力。擴展上下文使LLM能更好地處理涉及多文檔、長文本的推理和QA任務。
在去年GPT4-Turbo還沒有推出上下文長度128k版本的時候,OpenAI的開發(fā)者關系經理Logan Kilpatrick就曾經表示過,“上下文就是大語言模型的下一個關鍵突破”。從大語言模型的功能滿足上看,也確實如此。
目前使用大語言模型的大多數(shù)人群,還是泛科技行業(yè),有嘗鮮能力的從業(yè)者、愛好者以及相關專業(yè)的學生,長文本處理能力毫無疑問是論文、深度研報、會議摘要這些有明確應用場景的剛需能力。月之暗面的登月第一步,從用戶需求角度講肯定是邁對了。
但這一步,從技術角度來講,真的能領先多少?
上下文長度真的能形成護城河嗎?
如文章開頭所述,在占領心智方面,Kimi已經形成了暫時的用戶護城河,這其中“長文本”是一個重要的因素,但不是全部因素。
它能否像去年的Claude 一樣,憑借著上下文長度形成一條穩(wěn)定的護城河?在去年,這個答案也許是肯定的,但進入2024年,這項技術本身已經很難說的上是護城河了。當下,已經有越來越多成熟的手段去處理上下文的問題。
上下文擴展的問題之所以這么難解決,主要原因還是Transformer這個基礎框架本身。
它最核心的問題有三個:
1)對文本長度記憶非常死板,超過訓練集最大長度就無法處理:Transformer為輸入序列的每個token的位置都映射了一個固定長度的向量。
這是一個絕對的位置信息,導致模型對文本長度的記憶非常死板。一旦你給了模型超出訓練集最大長度的信息時,這些超出的位置他就定位不了,也就讀取和理解不了。
很可惜的是,根據Sevice Now的研究員Harm de Vries的技術博客分析,現(xiàn)在模型訓練用的主要素材之一公開可用的互聯(lián)網抓取數(shù)據集CommonCrawl中,95%以上的語料數(shù)據文件的token數(shù)少于2k,并且實際上其中絕大多數(shù)的區(qū)間在1k以下。
也就是說,它在訓練這個過程中就是很難拓展到2k以上的文本長度。
2)注意力機制占據資源,耗費算力:因為自注意力機制需要計算每個token與其他所有token之間的相對注意力權重,所以token越長,計算量就越大,耗時越長。
而且算出來的結果,還要儲存成注意力得分矩陣,大量矩陣會占據巨大的存儲空間,快速存儲能力不足也不行。而且大部分 token之間其實就沒啥關系,非要這么來回算一遍純粹浪費資源。
3)不擅長處理遠端信息:深度學習的基本邏輯之一是梯度下降,它通過不斷地調整模型參數(shù)來最小化與結果差異的損失函數(shù),從而使模型的預測能力得到提高。另一個邏輯就是反向傳播,將梯度傳播到更高的神經網絡層級中,從而使模型能識別更復雜的模式和特征。
當序列較長時,梯度在反向傳播過程中可能變得非常小(梯度消失)或非常大(梯度爆炸),這導致模型無法學習到長距離的依賴關系。而且注意力機制本身就傾向于近距離詞匯,遠距離依賴關系對它來說優(yōu)先級不高。
這三大難題其實已經有非常多的手段去規(guī)避。學界把增加上下文的方法主要歸類為外推(Extrapolation)和內插(Interpolation)。一般都會并行使用。
外推負責解決訓練外資料無法編碼的問題,并保證長文本處理的能力。用通俗的語言來解釋我們有一個巨大的語言模型,就像一個超級大腦,它通過閱讀大量的書籍和文章來學習理解人類的語言和知識。
但是,如果給它一段新的長文本,它可能會遇到一些之前沒有接觸過的內容,這時候它就需要一種特殊的能力來理解這些新信息。這種能力就是所謂的“外推”。
為了讓這個語言模型能夠處理超長的文章,我們需要給它一種特殊的編碼方式,就像給這個超級大腦安裝了一副可以看得更遠的眼鏡。這副眼鏡就是“位置編碼”,比如ALiBi和RoPE這樣的編碼方式,它們幫助語言模型理解更長的文本。
但是,長文本不僅長,還很復雜,需要語言模型快速而且準確地理解。為了解決這個問題,我們發(fā)明了一種叫做“稀疏注意力”的技術,它就像是給這個超級大腦裝了一個高效的信息處理系統(tǒng),讓它可以快速聚焦在重要的信息上,而不是被無關的細節(jié)分散注意力。
還有一個問題,就是語言模型的“記憶”問題。就像電腦如果開太多程序會卡頓一樣,語言模型處理太多信息也會遇到問題。這時候,我們有了像Transformer-XL這樣的技術,它就像是給語言模型加了一個超級大的內存,讓它可以記住更多的東西。
而環(huán)注意力(Ring Attention)這個新技術,就像是給語言模型的大腦做了一個升級,讓它在處理信息的時候更加高效,不會忘記重要的事情。
除了處理長文本,我們還需要讓語言模型能夠更好地理解它已經學過的內容,這就是“內插”。我們通過調整它的注意力機制,讓它可以更輕松地找到信息之間的聯(lián)系,就像是給這個超級大腦裝了一個更聰明的搜索系統(tǒng)。
通過這些技術的提升,我們的語言模型變得越來越強大,雖然還不是完美無缺,但已經能夠處理很多復雜的問題了。
最近,微軟的研究人員還發(fā)明了一種新的方法,叫做LongRoPE,它就像是給這個超級大腦的超能力做了一個升級,讓它可以處理更多的信息,而且不需要重新訓練或者更多的硬件支持。
本身這個方法略微復雜,會使用到1000步微調,但效果絕對值得這么大費周章。直接連重新訓練和額外的硬件支持都不需要就可以把上下文窗口拓展到200萬水平。
從學術的角度看,上下文似乎已經有了較為明確的突破路徑。而業(yè)界頭部公司模型的進化也說明了這一點。
看全球:頭部大模型的長文本護城河已經“變淺”
早在Kimi引發(fā)國內大模型“長文本馬拉松競賽”的4個月前,美國大模型界就已經賽過一輪了。參賽的兩名選手是OpenAI的GPT4-Turbo和Antrophric的Claude。
在去年11月,OpenAI在Dev Day上發(fā)布了GPT4-Turbo, 最高支持128k上下文長度的輸入,這一下打到了Claude的命門。在能力全面落后GPT4的基礎上,唯一的優(yōu)勢也被超越,Antrophric頓時陷入了危機。
在14天后,Antrophric緊急發(fā)布Claude 2.1,在其他能力沒有顯著增強的情況下,僅把上下文支持從100k提升到了200k來應對挑戰(zhàn)。而在今年2月發(fā)布的Geminni 1.5更是直接把上下文窗口推到了100萬的水位,這基本上是哈利波特全集的長度和1小時視頻的量級。
這說明全球第一梯隊的三個大模型,在去年都突破了長文本的限制。
這其中還有一個小插曲,Claude 2.1發(fā)布后,完全沒想到行業(yè)人士這么快就對它進行了探針測試,可以用簡單的概念來理解,就是大海撈針。
探針測試的邏輯是向長文章的不同位置中注入一些和文章完全不相關的話語,看它能不能找出來。能就說明它真的懂了,不能就說明它只是支持了這樣的長度,但并沒有記住。
Claude 2.1探針綜合召回率只有20%,可以說基本沒記住,而對比GPT4 Turbo放出的論文中,128k長文本的召回率足有97%。
在這場公關戰(zhàn)中落于下風的Claude緊急打了補丁,在12月6日放出更新,探針召回率大幅提升,而且按Antrophic官方的說法,他們只是加了個Prompt就解決了這個問題。

官方文檔:通過在克勞德的回答開頭添加“這是上下文中最相關的句子:”這句話,我們在相同的評估中取得了明顯更好的結果。

探針實驗效果效果前后對比
一個Prompt就能解決上下文拓展中出現(xiàn)的嚴重問題。如果不是Claude 本身在故意隱藏底牌,只能說到了12月份,這個護城河已經略淺了。
而到了3月份,中文大模型的這場最新版本的長文本戰(zhàn)爭時,其他廠商的快速跟上,更為“護城河略淺”加了些注腳。
上下文長度是100萬或是200萬,
有本質意義嗎?
但是,全球三大模型的長文本之戰(zhàn)最終“高開低走”。
GPT4-Turbo 128k直到今天仍然僅對API用戶(主要是專業(yè)開發(fā)者及公司)開放,一般用戶只能用32 k的GPT4版本。
在今年3月發(fā)布的號稱超越GPT4的Claude 3依然只支持到200K的上下文限制。
突然他們都不卷了。這是為什么?
首先是因為不劃算
在上文提及注意力機制的時候,我們講到因為其內生的運作邏輯,上下文越長需要計算的量級越大。上下文增加32倍時,計算量實際會增長大約1000倍。雖然靠著稀疏注意力等減負措施,時機運算量并沒有那么巨大,但對模型來講依然是非常大的負擔。
這從大模型的反應時間可以一窺:根據目前的測試反饋,Gemini在回答36萬個上下文時需要約30秒,并且查詢時間隨著token數(shù)量呈非線性上升。
而當在Claude 3 Opus中使用較長文本的上下文時,反應時間也會加長。其間Claude還會彈出提示,表示在長上下文的情況下,應答時間會顯著變長,希望你耐心等待。
較大的計算量就意味著大量的算力和相應的成本。
GPT-4 128k版本之所以開放給API用戶,是因為他們按輸入token數(shù)量結算,自己承擔這部分算力成本。對于20美元一個月的一般用戶而言,這個并不劃算。Claude 3會員版本最近也開始限制同一時間段內的輸入次數(shù),預計也是在成本上有所承壓。
雖然未來算力和模型速度都會變得越來越快,成本和用戶體感都會進一步上升。但現(xiàn)在,如果長上下文的需求能夠在當下支持框架下獲得滿足,大模型提供商何必“再卷一步”呢?
其次,長上下文的擴充在一定限度以后對模型整體能力的提升有限
前文提到,上下文對模型能力會有一定提升,尤其是處理長內容的連貫能力和推理能力上有所提升。在早期谷歌進行的較弱模型實驗中,我們確實可以看到這樣的明顯正向關系。
但我們現(xiàn)在評價模型的角度實際上更綜合,核心還是希望它能有更好的常識能力和推理能力。GPT4一直都不是支持上下文長度最長的模型,但其綜合能力一直一騎絕塵了半年多時間。當上下文夠用后,把時間花在優(yōu)化模型的其他方面似乎更為合理。
在Langchain最近的研究中,他們設置了多個探針后發(fā)現(xiàn),即使是支持長上下文的模型,在探針越多的情況下,其正確召回率仍然會衰退,而且對探針的推理能力衰退的更明顯。所以,當前的方法下大模型可能能記住很長上下文,但懂多少,能用多少還是存疑的。

最后,有更便宜的,更有拓展性的解決方法,為什么死磕這條路?
在楊植麟過往的采訪中,他曾經指出一種拓展上下文的模式是蜜蜂模式,屬于一種走捷徑的模式,不能真正的影響到模型的能力。這種模式就是RAG,也就是檢索增強生成(RAG)。
其基本邏輯就是在模型外部設置一個存儲器,通過切片方法將我們輸入給模型的長文本切成模型有能力識別的短文本小塊,在取用時通過索引讓大模型找到具體的分塊。它和蜂巢一樣一塊塊的所以被稱作蜜蜂模式。
通過RAG,大模型可以考僅處理索引涉及到的小段落就可以,所以反饋速度很快,也更便宜。但它的問題正如楊植麟所說,因為是分塊的,只能窺一斑難見長文本的一豹。
GPT4用的就是這樣的模式,所以在32k的長度下也可以接受更大的文本進行閱讀,但問題確實很多,它會經常返回說明明在文章里有的東西它找不到。
但這個問題最近也被攻破了。今年2月發(fā)布BGE Landmark embedding的論文也闡述了一種利用長上下文解決信息不完整檢索的方法。
通過引入無分塊的檢索方法,Landmark embedding能夠更好地保證上下文的連貫性,并通過在訓練時引入位置感知函數(shù)來有限感知連續(xù)信息段中最后一個句子,保證嵌入依然具備與Sentence Embedding相近的細節(jié)。這種方法大幅提升了長上下文RAG的精度。
另外,就像當下的數(shù)據庫一樣,因為我們日常生活工作中真正用到的上下文不僅包含了長文本、圖片等非結構化數(shù)據,更包含了復雜的結構化數(shù)據,比如時間序列數(shù)據、圖數(shù)據、代碼的變更歷史等等,處理這些數(shù)據依然需要足夠高效的數(shù)據結構和檢索算法。
100萬token這個上下文長度,在文本,代碼為主的場景下,已經足夠滿足99%我們當下的上下文用例了。再卷,對用戶而言毫無價值。
當然,因為看一個五分鐘的視頻可能就需要10萬以上的token,在多模態(tài)模型實裝時代中,各個模型供應商還是有再往上卷的理由。但在當下的算力成本之下,它的大規(guī)模應用應該還很難。
終極目標還是AGI
最后,引出一個終極問題,靠”長文本“是否能形成大模型真正的護城河?”護城河“本質還是看未來,而未來是最難判斷的。關于長文本本身有多大可擴展空間,楊植麟的回答是:“非常大。
一方面是本身窗口的提升,有很長路要走,會有幾個數(shù)量級。另一方面是,你不能只提升窗口,不能只看數(shù)字,今天是幾百萬還是多少億的窗口沒有意義。
你要看它在這個窗口下能實現(xiàn)的推理能力、the faithfulness的能力(對原始信息的忠實度)、the instruction following的能力(遵循指令的能力)——不應該只追求單一指標,而是結合指標和能力。”
如果這兩個維度持續(xù)提升,人類下達一個幾萬字、幾十萬字的復雜指令,大模型都能很好地、準確地執(zhí)行,這確實是巨大的想象空間。到了那個時候,可能沒有人會糾結,這家公司的核心競爭力究竟是長文本,還是別的什么。
這波AI浪潮才剛剛開始,未來的產品形態(tài)肯定是與今天完全不同的,我們還沒有辦法清晰地看到它未來的樣子。但是似乎有一點是行業(yè)內的共識,屬于AI時代的產品,一定是“去掉AI就不成立”的產品。
楊植麟也有相似的判斷“獨特價值是你增量的智能。要抓住這個點,智能永遠是最核心的增量價值。如果你這個產品最核心價值只有10%-20%來自于AI,就不成立”。
未來,你需要人工智能,它一定能理解你的長長的指令,但是它可能會忘記,在一路走來的過程中,還曾經路過叫做“長文本”的驛站。
審核編輯:黃飛
?
電子發(fā)燒友App



















評論