win11下bitsandbytes的用法
要將大模型進行量化加載,需要使用到bitsandbytes這個庫,但它原生是在Linux下安裝使用的,因此如果要在win11下使用,需要做一些修改。
在pip install bitsandbytes 之後,修改源代碼兩處。
一般安裝了conda後,目錄在:{driver}:\conda\envs\{name}\Lib\site-packages\bitsandbytes\ 下, 在pip install,一般都會寫上安裝到的位置,直接拷貝即可。
首先在這個目錄下,先把下載的libbitsandbytes_cuda116.dll 文件拷貝到這個目錄下。
主要是兩個文件,一個是 cuda/main.py 中的 evaluate_cuda_setup() 函數,可直接讓它返回 "libbitsandbytes_cuda116.dll",因為原來的代碼中默認都是直接加載的liunx下的.so文件,所以要改對對應的dll
第二處是目錄下的 cextension.py,需要將其中的 ct.cdll.LoadLibrary(binary_path) 改成 ct.cdll.LoadLibrary(str(binary_path))
in cuda_setup/main.py: make evaluate_cuda_setup() always return "libbitsandbytes_cuda116.dll" in ./cextension.py: change ct.cdll.LoadLibrary(binary_path) to ct.cdll.LoadLibrary(str(binary_path))