IT之家 10 月 6 日消息,麻省理工學院聯合 Meta AI 的研究人員日前開發了一款名為 StreamingLLM 的框架,為大語言模型可能遇到的 RAM 與泛化問題提出了一系列解決方案,號稱能夠“讓語言模型處理無限長度的文本內容”。
▲ 圖源 Github
StreamingLLM 的研究重點,是想解決實現流式語言模型(Efficient Streaming Language Models,ESLM)的障礙,特別是“長時間互動的多輪對話場景”中可能出現的問題。
研究人員指出,這種流式語言模型主要存在兩大挑戰:
第一個挑戰:在解碼階段,獲取 token 的鍵(Key)值(Value)狀態會消耗大量的 RAM。
第二個挑戰:目前流行的大語言模型,難以泛化適用“超過訓練序列長度”的長文本。
IT之家注意到,過去有許多研究試圖解決上述挑戰,像是“擴展注意力窗口”,讓語言模型能夠處理超出預訓練序列長度的長文本;或是建立一個固定大小的活動窗口,只關注最近 token 的鍵值狀態,確保 RAM 使用率和解碼速度保持穩定,但若遇到“序列長度超過緩存大小”時,這個策略就會失效。
而當前流式語言模型最大的挑戰是“如何不消耗過多 RAM 且不損害模型性能的前提下,處理長文本輸入”。
StreamingLLM 對此采取的策略是“運用注意力下沉現象”,研究人員觀察到,在自回歸語言模型中,無論特定 token 和語言模型本身的相關性如何,如果對代 token 分配了大量的注意力。這些獲得高度注意力的 token,就會表現出注意力下沉的現象,即便這些 token 在語義上不重要,但他們仍然獲得模型強烈關注(即給予特定 token 內容大量注意力,從而獲得模型大部分的關注,而這些特定 token 內容包含“下沉 token 的鍵值”,從而確保無論輸入序列有多長,模型的注意力計算都能維持穩定)。
▲ 圖源 GitHub
StreamingLLM 的重要貢獻,在于其提出一個簡單且高效的解決方案,使語言模型不需微調就可以處理無限長度的文本。從而解決當前語言模型在流式應用的困境。雖然未來流式語言模型勢在必行,但由于 RAM 效率的限制,以及模型在處理長序列的性能問題,相關模型發展仍受到挑戰。
經研究團隊證實,StreamingLLM 能夠讓 Llama 2、MPT、Falcon 和 Pythia 可靠地處理高達 400 萬 token 的文本,能夠為流式語言模型提供更多部署方面的可能性。