컴공

AttributeError: /home/work/.local/lib/python3.8/site-packages/bitsandbytes/libbitsandbytes_cpu.so: undefined symbol: cquantize_blockwise_fp16_nf4 에러 해결법

비온뒤엔습해 2024. 1. 5. 04:53

위 에러를 해결하기 위해 검색하던 도중 아래와 같은 해결책을 발견하였고 나의 경우에는 효과가 있었다.

https://github.com/TimDettmers/bitsandbytes/issues/156#issuecomment-1474056975

 

bitsandbytes/libbitsandbytes_cpu.so: undefined symbol: cget_col_row_stats · Issue #156 · TimDettmers/bitsandbytes

Hi, I came across this problem when I try to use bitsandbytes to load a big model from huggingface, and I cannot fix it. My CUDA version is 12.0 and my torch version is 1.13.1+cu116. I would like t...

github.com

 

해결책 수행전에 해야할일:

nvcc --version을 터미널에 입력하여 본인의 CUDA 버전을 확인한다.

나의 경우는 아래의 사진과 같이 11.8버전이었다.

 

1.

터미널을 이용해서 

/home/work/.local/lib/python3.8/site-packages/bitsandbytes/ 이 위치로 이동한다.

cd /home/work/.local/lib/python3.8/site-packages/bitsandbytes/

2.

본인의 cuda 버전과 일치하는 파일을 libbitsandbytes.so에 복사해준다

 

cp libbitsandbytes_cuda118.so(내 경우 11.8이어서 이 파일인 것이고 본인의 cuda버전과 맞는걸로 넣어줘야됨!) libbitsandbytes_cpu.so

cp libbitsandbytes_cuda118.so libbitsandbytes_cpu.so