如何使用漸進式模型剪枝在混合云-霧拓撲中部署LLM 原創
由于規模和資源方面的限制,將LLM部署到邊緣計算設備上面臨諸多挑戰。本文對漸進式模型剪枝如何實現可擴展的混合云-霧推理進行了探討。
大型語言模型(LLM)如今已經成為對話式人工智能、代碼生成、摘要等眾多場景的核心技術。然而,在計算資源有限的環境中,LLM的部署帶來了重大挑戰,主要是在混合云-霧架構中,實時推理可能需要在邊緣設備上運行。
在這些情況下,漸進式模型剪枝(Pruning)可以在不影響精度的情況下減少模型大小和計算成本。本文將探討如何使用層感知、資源自適應的剪枝技術在云-霧拓撲中有效地部署LLM。
什么是混合云-霧拓撲?
在深入討論該話題之前,首先了解并定義其架構:
- 云層:云層由集中式數據中心組成,其中包含數千個高性能計算服務器(HPC - GPU/TPU),具有用于訓練大型語言模型(LLM)、全面推理和編排的大容量。
- 霧層:與傳統的云層不同,霧層由分散的微型數據中心組成,其智能和計算能力位于本地網絡或邊緣(例如智能城市、車輛、工業現場)。霧層以低延遲運行,但其資源受限。
混合云-霧拓撲結構協調了云霧兩層之間的推理。它將云計算的可擴展性和靈活性與霧計算的接近性和低延遲優勢相結合。云層處理大型數據集,執行訓練和回退邏輯。霧層在將數據發送到云層之前執行數據過濾、預處理和分析等基本任務。在霧層本地處理數據可以降低延遲并實現實時應用。通過將一些任務卸載到霧層中,云層可以優化資源利用率并高效運行。
關鍵思路是動態地調整霧計算資源和云計算資源的LLM組件的部署,以優化性能。例如,LLM的某些部分可以在本地霧設備上運行,而其他部分則在云中運行。這使得系統可以利用霧計算和云計算的優勢。
在邊緣/霧中部署LLM面臨挑戰
但是,在邊緣/霧環境中部署LLM仍面臨諸多挑戰。當前的LLM(如GPT-3、LLaMA等)是擁有數千萬參數的模型,需要高內存、高帶寬和多GPU集群進行推理。
但是由于資源有限,霧層根本無法承載完整的LLM。因此,需要壓縮技術將LLM部署至霧節點。人們對LLM模型壓縮進行了廣泛的研究,而LLM權重剪枝是其中一種代表性技術。
漸進式權重模型剪枝
模型剪枝是一種從神經網絡中刪除不重要的權重或神經元的技術,可以減少大小和計算要求。漸進式剪枝通過允許在輸入附近進行更多剪枝,在輸出附近進行更少剪枝來逐步實現這一點。它還在各種參數大小下生成多個模型變體,以平衡性能和資源效率。
剪枝類型?
- 結構化剪枝:側重于刪除模型的組件,例如神經元、注意力頭(Attention Heads)、卷積濾波器(Convolutional Filter)或整個前饋塊。這會產生更小、更高效的模型架構,同時保留了規則的結構,并使其與GPU和TPU等現有硬件兼容。由于整個塊被刪除,結構化剪枝減少了計算和內存需求,但保持了與標準深度學習框架的兼容性。
- 非結構化剪枝:側重于從神經網絡中刪除單個權重或連接,從而生成稀疏的權重矩陣。這種技術不能保持規則的結構,這使得在沒有專門的稀疏矩陣庫或定制硬件的情況下很難實現計算加速。然而,非結構化剪枝可以具有非常高的壓縮比,并且可以有效地減少受限環境所需的整體模型大小。
- 分層剪枝:側重于根據模型特定層相對重要性或對整體性能的貢獻,選擇性剪枝特定層或子模塊。這種方法可精細控制模型復雜度,確保保留網絡的關鍵組件,同時剪枝影響較小的部分。
部署策略:剪枝+放置
通過使用漸進式剪枝功能,可以跨云層和霧層部署LLM。以下討論部署LLM的步驟和流程:
- 首先是在云中訓練和分析模型。基礎LLM(例如LLaMA 2-7B)在特定于領域的數據上進行微調,以使模型適應目標用例。在訓練完成后,采用顯著性分析等技術來識別可以在不降低性能的情況下剪枝的層或組件。隨后,生成不同稀疏級別(如50%、30%和10%)的基礎模型的各種剪枝變體。這有助于創建針對不同部署場景優化的小型模型組合。
- 其次,根據可用的邊緣計算硬件(CPU/GPU)規格、內存和散熱約束條件,將剪枝后的模型與霧節點的容量進行匹配。每個設備都分配了一個適合其性能的剪枝變體。完整模型(例如最初的7B模型)保留在云中,用于高吞吐量、容忍延遲的用例(例如提示批處理)。實現智能路由策略,根據模型大小和硬件可用性動態地將用戶查詢引導到最合適的節點。
- 最后,采用分層回退機制來保證準確性和響應性。如果霧節點的響應置信度較低,或者輸入上下文長度超過其處理限制,則查詢將升級到云端,由完整模型提供更準確的答案。此外,還支持混合推理模式,其中霧節點提供快速的初始響應,云計算執行異步的二次評估以提高輸出質量。這種架構不僅優化了延遲和資源使用,還確保了LLM在不同基礎設施層之間的穩健性和可擴展性部署。
評估指標?
在使用漸進式剪枝時,跟蹤以下對實際驗證至關重要的指標非常重要。
- 模型精度:對于霧模型,模型精度的降幅需要低于2%,這一點很重要。
- 延遲:確保LLM模型在每個層中高效運行,在霧層上的延遲低于100毫秒,在云層上的延遲<300?。
- 吞吐量:需要確保LLM模型在云層或霧層上運行的每個節點上都具有高吞吐量。因此,需要跟蹤每個節點的“令牌/秒”(Tokens/sec)。
- 內存:需要確保模型占用的內存不超過總設備內存的80%。
結論?
在混合云-霧計算環境中部署LLM已不再停留于理論探討階段。通過大量研究,其可行性已經得到驗證。漸進式模型剪枝提供了一種強大的方法,可以使大型語言模型(LLM)和深度神經網絡(DNN)模型有效適應資源受限的環境,推動混合人工智能向真正智能、實時響應的方向演進。
無論是在邊緣端設計智能助理或物聯網設備,還是在分布式環境中構建低延遲自然語言處理(NLP)管道,這種方法都可以彌合性能可訪問性差距,使LLM更接近模型數據生成和決策的地方。
原文標題:???Deploying LLMs Across Hybrid Cloud-Fog Topologies Using Progressive Model Pruning???,作者:Sam Prakash Bheri
