🚀 TheDrummer的Big-Alice-28B-v1的Llamacpp imatrix量化版本
本項目是TheDrummer的Big-Alice-28B-v1模型的量化版本,使用llamacpp進行量化處理,旨在提升模型在不同硬件上的運行效率,同時提供多種量化類型供用戶根據自身需求選擇。
🚀 快速開始
運行環境
運行方式
✨ 主要特性
多種量化類型
提供了豐富的量化類型,如bf16、Q8_0、Q6_K_L等,每種量化類型在文件大小、質量和性能上各有特點,用戶可以根據自身硬件條件和需求進行選擇。
在線重打包功能
部分量化模型支持在線重打包功能,能夠根據硬件條件自動優化權重,提高運行效率。
📦 安裝指南
安裝huggingface-cli
pip install -U "huggingface_hub[cli]"
下載指定文件
huggingface-cli download bartowski/TheDrummer_Big-Alice-28B-v1-GGUF --include "TheDrummer_Big-Alice-28B-v1-Q4_K_M.gguf" --local-dir ./
下載拆分文件
如果模型大小超過50GB,會被拆分為多個文件。可以使用以下命令將它們下載到本地文件夾:
huggingface-cli download bartowski/TheDrummer_Big-Alice-28B-v1-GGUF --include "TheDrummer_Big-Alice-28B-v1-Q8_0/*" --local-dir ./
💻 使用示例
基礎用法
<|im_start|>system
{system_prompt}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
📚 詳細文檔
下載文件列表
嵌入/輸出權重
部分量化模型(如Q3_K_XL、Q4_K_L等)採用標準量化方法,將嵌入和輸出權重量化為Q8_0,而非默認值。
ARM/AVX信息
以前,需要下載Q4_0_4_4/4_8/8_8文件,這些文件的權重在內存中交錯排列,以便在ARM和AVX機器上通過一次加載更多數據來提高性能。
現在,有了“在線重新打包”功能,詳情見 此PR。如果使用Q4_0且硬件適合重新打包權重,系統將自動即時進行。
從llama.cpp構建版本 b4282 開始,將無法運行Q4_0_X_X文件,而需要使用Q4_0。
此外,根據 此PR,可以使用IQ4_NL獲得略高的質量,它也會為ARM重新打包權重,但目前僅支持4_4。加載時間可能會較慢,但總體速度會提高。
如何選擇文件
首先,確定可以運行的模型大小,需要了解自己的RAM和/或VRAM容量。
- 如果希望模型運行速度儘可能快,應選擇文件大小比GPU總VRAM小1 - 2GB的量化模型。
- 如果追求絕對最高質量,將系統RAM和GPU的VRAM相加,然後選擇文件大小比該總和小1 - 2GB的量化模型。
其次,需要決定使用“I-quant”還是“K-quant”。
- 如果不想過多思考,選擇K-quant,格式為“QX_K_X”,如Q5_K_M。
- 如果想深入瞭解,可以查看 llama.cpp特性矩陣。一般來說,如果目標是低於Q4的量化,並且使用cuBLAS(Nvidia)或rocBLAS(AMD),應選擇I-quant,格式為IQX_X,如IQ3_M。這些是較新的量化類型,在相同大小下性能更好。
I-quant也可以在CPU上使用,但比相應的K-quant慢,因此需要在速度和性能之間進行權衡。
🔧 技術細節
在線重打包
在線重打包是一種優化權重加載的技術,通過在運行時對權重進行重新排列,使得硬件能夠更高效地加載和處理數據。在使用Q4_0量化模型時,如果硬件支持,系統會自動進行在線重打包,以提高性能。
量化類型選擇
不同的量化類型在文件大小、質量和性能上存在差異。例如,Q8_0提供了極高的質量,但文件大小較大;而Q2_K則文件大小較小,但質量較低。用戶可以根據自己的硬件條件和需求選擇合適的量化類型。
📄 許可證
本項目採用MIT許可證。
致謝
感謝kalomaze和Dampf在創建imatrix校準數據集方面提供的幫助。
感謝ZeroWw在嵌入/輸出實驗方面的啟發。
感謝LM Studio對本項目的贊助。
如果您想支持我的工作,請訪問我的ko-fi頁面:https://ko-fi.com/bartowski