llama.cpp 專案已合併一項拉取請求,新增 --n-cpu-ffn 選項,允許使用者將密集模型中指定的前饋網路(FFN)子層卸載至系統記憶體。此功能透過減輕顯示卡的記憶體負擔,為擁有有限 VRAM 的使用者帶來效能提升。

此更新顯著降低了在本地運行大型密集模型的硬體門檻,因為它減輕了 VRAM 與系統記憶體之間頻繁資料傳輸所導致的效能衰退。它為 --fit 等現有的卸載方法提供了實用的替代方案,特別適合用於長期運行的推論任務。

與之前的基於正則表達式匹配的方法不同,此選項明確針對 FFN 子層,同時將注意力層保留在 GPU 上。它的運作方式類似於現有的 --n-cpu-moe 選項,但專門針對密集轉換器架構,而非混合專家(MoE)模型。

事件背景

在基於轉換器的 LLM 中,前饋網路(FFN)是注意力機制之後處理資訊的關鍵組件。密集模型會在每一層的所有神經元上計算 FFN 層,消耗大量 VRAM。將這些特定的層卸載至系統記憶體,允許較小的 GPU 運行較大的模型,但可能會因為 PCIe 傳輸速度而引入延遲。

社群觀察

社群成員認為這對低 VRAM 設定是一大改進,部分人指出它與 Unsloth 等工具使用的技術相似。討論突顯了它在長期推論中的實用性,並比較了其手動調整優勢與 --fit 等自動旗標的差異。