🚀 ACIP應用於jeffwan/llama-7b-hf
本模型倉庫是ACIP項目的一部分,提供了jeffwan/llama-7b-hf
的可壓縮版本。如需更多詳情,請訪問我們的代碼倉庫。
🚀 快速開始
只需通過from_pretrained
加載ACIP模型:
from transformers import AutoModel
model = AutoModel.from_pretrained("MerantixMomentum/acip_llama1_7b", trust_remote_code=True)
這將下載並創建一個完全參數化的ACIP模型,該模型可以被剪枝到你想要的任何壓縮率。
例如:
model.prune_model_by_score(size_ratio=0.4)
這將把model
剪枝到其原始參數數量的40%,即60%的壓縮率。
ACIP的一個獨特特性是,這個操作是可逆的,也就是說,你可以根據需要多次重新運行model.prune_model_by_score
,以評估不同大小的模型。最後,你可以“確定”一個特定的比例並運行:
model.compress()
這將丟棄可壓縮線性層的所有剪枝掩碼值。現在,模型實際上已經被壓縮,你應該會觀察到內存使用量顯著減少(如果不重新加載ACIP模型,此步驟不可逆)。
如果你願意,你還可以運行:
model.quantize()
以節省更多內存(我們僅使用bitsandbytes
測試了4位量化,但你也可以自定義此操作)。
🚀 就是這樣!現在你可以像使用🤗 transformers中的任何其他因果語言模型一樣,將壓縮後的模型用於推理或微調。
⚠️ 重要提示
參數size_ratio
的範圍是從1.0到0.0,表示壓縮後的模型大小。例如,0.4意味著模型僅保留原始參數數量的40%,而1.0表示完全不壓縮。或者,你也可以在prune_model_by_score
中設置compression_rate
,這相當於size_ratio = 1.0 - compression_rate
。
📦 安裝指南
要運行我們模型中心的ACIP模型,你只需要最少的依賴項,即torch
、transformers
、peft
,如果你想對模型進行量化,還可以選擇安裝bitsandbytes
。
有關可通過pip安裝的依賴項及其確切版本,請參閱requirements.txt(較新的版本應該也可以正常工作)。
📄 許可證
許可證繼承自基礎模型jeffwan/llama-7b-hf。
📚 詳細文檔
引用信息
當使用或引用此模型時,請引用我們的論文:
@article{mxm2025acip,
title={Choose Your Model Size: Any Compression by a Single Gradient Descent},
author={M. Genzel, P. Putzky, P. Zhao, S. Schulze, M. Mollenhauer, R. Seidel, S. Dietzel, T. Wollmann},
year={2025},
journal={Preprint arXiv:2502.01717}
}
信息表格
屬性 |
詳情 |
模型類型 |
文本生成 |
訓練數據 |
allenai/c4 |
評估指標 |
困惑度、準確率 |
標籤 |
acip、pytorch |
基礎模型 |
jeffwan/llama-7b-hf |
庫名稱 |
transformers |