GenAI遇上SLM:邊緣計算的新紀元
小型語言模型(SLM)在效率、隱私和適應性之間實現了卓越的平衡,使其成為各種應用的理想選擇。
譯自GenAI Meets SLMs: A New Era for Edge Computing,作者 Pankaj Mendki。
讓我們想象一個場景:一家醫院的患者擁有自己的醫療記錄。醫院希望在其個人監控設備上安裝支持 AI 的醫療保健助手,以便醫療保健專業人員可以監控和分析數據,并提供實時反饋,以確保常規和緊急藥物治療,但該系統必須符合區域醫療法規。在這種情況下,邊緣計算方法對于準確性和數據安全性是可靠的——并且可以在本地工作;不需要云。
現在,想象一下當邊緣計算由GenAI提供支持時的可能性。這種融合不僅使解決方案更智能,而且使解決方案更具自主性,并為開發個性化的智能醫療保健開辟了新的可能性。但邊緣計算的影響不僅限于醫療保健領域。它還可以改變投資等行業,在這些行業中,實時數據處理對于交易決策至關重要,并加強網絡安全,以防止數據落入壞人之手。
如今,開發人員主要使用大型語言模型(LLM) 來開發 GenAI 應用程序,因為它們具有明顯的優勢。但 LLM 的規模和復雜性使其對資源受限的邊緣設備提出了挑戰。SLM 接受針對特定案例的文獻訓練,與 LLM 相比,它們可以更快、更高效地做出實時決策。
作為新興技術主管,我和我的團隊已經多次測試了 SLM。本文探討了在邊緣計算系統中使用 SLM 的一些挑戰和潛在策略。
用 SLM 替換 LLM 用于邊緣應用
切換到 SLM 在醫療保健領域具有顯著優勢,在該領域,個人設備的使用很普遍。由于性能限制,個人設備通常缺乏有效運行 LLM 所需的資源。由于 SLM 針對特定案例,因此它們提供了一個解決這些限制的理想解決方案。
使用模型蒸餾、參數剪枝和量化等技術可以輕松地將 LLM 轉換為 SLM。模型蒸餾涉及訓練一個更小的模型來模擬更大的模型,從而保留原始模型的大部分性能。參數剪枝消除了模型中不必要的權重和連接,以簡化其架構,而不會犧牲準確性。量化通過降低權重數值表示的精度來壓縮模型,從而產生更小的占用空間和更快的推理時間。
現在,讓我們重新審視醫院的例子。不同組的患者可能需要持續監測,并針對神經內科、腎臟內科、心血管內科、自身免疫性疾病、傳染病甚至事故相關的疾病和病癥采取立即行動。可以針對這些醫療狀況分別訓練 SLM。他們可以實時分析這些患者的數據,并啟動所需的治療或提醒醫療保健專業人員及時采取行動。
根據開發人員的需求,他們可以從頭開始構建 SLM,也可以使用預訓練模型作為其項目的基礎工具,并加快開發過程。開放市場(例如 GitHub Models 和 Hugging Face)擁有預訓練的 SLM。這些工具還有助于在邊緣更廣泛地采用生成式 AI。SLM 的上下文功能可以改變多個行業。在智慧城市中,SLM 可以構建更好的支持邊緣的物聯網設備,以提供針對擁堵或道路封閉等情況量身定制的上下文相關方向。這種組合可以提高效率,最大限度地減少延誤,并改善整體城市交通體驗。
解決平臺多樣性和資源需求
邊緣設備之間的平臺異構性可能會使部署 SLM 具有挑戰性。個人監控設備可以在多個平臺上運行,例如 iOS 和 Android。但是,諸如 Open Neural Network Exchange (ONNX)、MediaPipe、WASI-NN、Rust 和 WebAssembly 之類的堆棧和框架可以幫助構建一個邊緣應用程序生態系統,以使用 SLM。它們支持各種硬件和操作系統,并確保跨平臺支持和資源優化的應用程序。
諸如開放神經網絡交換 (ONNX) 運行時之類的框架提供了一個抽象層,簡化了跨多個平臺對 SLM 的支持,從而緩解了這個問題。開發人員可以使用 ONNX 工具包針對特定硬件目標優化模型,以確保無論底層設備架構如何,都能實現高效的性能。MediaPipe 框架簡化了將 SLM 遷移到輕量級邊緣設備(包括移動平臺)的過程。其模塊化框架和高效的硬件加速器支持預優化的跨平臺解決方案,并簡化了在資源受限環境中部署復雜的 AI 模型。
此外,WebAssembly 可以利用包括 GPU 在內的底層硬件功能來優化性能并加速推理任務。由于它將輕量級執行與強大的計算資源相結合,因此非常適合 SLM 應用程序。它還有助于可持續發展計劃,通過支持在功耗和發熱量較低的邊緣設備上開發強大的 AI 解決方案。WASI-NN 為 WebAssembly 提供機器學習推理 API。它支持利用 SLM 功能的 WebAssembly 多語言開發應用程序。
Rust 編程語言堆棧進一步增強了這個生態系統。與ML 環境中使用的 Python 堆棧不同,Rust 支持小至 30 MB 的應用程序運行時,從而實現適用于資源受限邊緣環境的輕量級、高性能應用程序。
通過增強的安全性在邊緣進行協作學習
醫療保健和許多其他領域都在隱私敏感的環境中運作。然而,與邊緣應用程序進行受控的數據共享可以幫助建立知識庫,以使用 SLM 和其他醫療保健服務改進治療程序。在這種情況下,聯邦學習等技術可以確保在多個設備上對 SLM 進行訓練和微調。使用聯邦學習,維護數據隱私和安全性更加簡單。這種方法有助于模型從本地化數據中學習,而無需共享敏感信息。
讓我們回到醫院的例子。醫院已決定加入與其他醫院的合作計劃,旨在建立一個更復雜的模型,以根據來自各種醫療記錄的見解來改善預測和護理結果。但有一個問題:醫院不能公開這些文件,因為法規指定患者為其數據的所有者。
這就是聯邦學習與 SLM 結合可以改變游戲規則的地方。每家醫院都可以使用其患者記錄來訓練自己的 SLM。然后,它只能將學習到的參數上傳到共享數據庫,從而使所有貢獻者受益,同時保持隱私。然后,服務器根據收到的更新構建全局模型,而無需訪問單個文件。
同樣的原則適用于所有涉及敏感數據的情況。例如,在客戶數據需要嚴格安全性的投資領域,來自投資模式共享參數的見解可以幫助銀行業開發更有效的計劃。聯邦學習促進了貢獻者(無論是個人、設備還是組織)之間的協作。它通過提供數據而不損害數據隱私來改進模型。該技術還確保符合隱私法規。
開發人員可以使用開源項目進行聯邦學習,例如 Flower、Substra、NVFlare 等。這些框架實施數據安全,并通過差異隱私、同態加密和機密計算等技術確保隱私。
結論
小型語言模型 (SLM) 在效率、隱私和適應性之間實現了出色的平衡,使其成為各種應用的理想選擇。在醫療保健領域,快速的設備上癥狀診斷也可能成為遠程醫療(一個新興的醫療保健子領域)的差異化因素。
工業物聯網、國防和金融科技等行業可以利用 SLM 進行實時分析、增強安全性和定制解決方案。這些行業可以進一步受益于其對多語言和多模式輸入的適應性。例如,金融科技行業可以使用 SLM 進行多語言客戶支持和用于各種數據集的本地化模型。由于 SLM 在本地部署,因此它們更安全且更易于解釋,這在監管合規性是優先事項的領域提供了透明度。