FujitsuResearch/OneCompression
Python package for LLM compression
解決的問題
OneCompression (OneComp) 提供了一個完全自動化的大型語言模型(LLM)壓縮流程,可在不顯著犧牲準確度的情況下,減少模型的記憶體佔用與硬體需求。它將複雜的量化過程——選擇位元寬度、應用演算法、評估結果——簡化為一個流暢的工作流程。
工作原理
OneComp 使用多種事後訓練量化(PTQ)技術來降低模型權重的精確度。其 AutoBit 功能可自動偵測可用的 GPU VRAM,並據此決定每層的最佳位元寬度。主要技術方法包括:
- 量化誤差傳播(QEP):透過將誤差傳播至後續層來修正誤差。
- 層投影座標下降(LPCD):一種用於在任意子模組上優化量化的統一框架。
- MDBF(多包絡雙二值因子分解):利用二值因子分解實現激進的亞1位元壓縮。
- 旋轉預處理:使用 SpinQuant/OstQuant 學習最佳旋轉矩陣,在量化過程開始前降低量化誤差。
- 後處理:提供區塊式蒸餾與 LoRA SFT 微調,以在量化後恢復準確度。
適用對象
專為希望在 VRAM 有限的本地硬體上部署 LLM 的開發者與研究人員設計,也適合希望實驗先進量化演算法以實現高效模型部署的使用者。
主要亮點
- 一鍵自動化:透過簡單的 CLI 命令或 Python API 自動量化模型。
- vLLM 集成:內建插件支援透過 vLLM 高效服務量化模型。
- 混合精度支援:根據記憶體預算自動為每層分配位元寬度。
- 廣泛架構支援:已驗證支援 Llama、Qwen、Gemma 與 GPT-OSS 架構。
- GGUF 匯出:內建支援將模型轉換為 GGUF 格式,供 llama.cpp 與 Ollama 使用。
相關
- 專案
- 專案
- 專案
- 專案
- 專案