LLaMA 套件踩坑
本文介紹 LLaMA 系列套件安裝踩過的一些坑和解法
更新紀錄
- 2023/05/05: 更新 transformer 相依性問題, llama.cpp 採坑紀錄
bitsandbytes
- load_in_8bit error
- Root Cause: 系統預設的
bitsandbytes_cpu.so
與 cuda 版本不同 - Action: 將自己的版本的
bitsandbytes_cuda<cuda版號>.so
替換為bitsandbytes_cpu.so
- step1:
mv lib/python3.9/site-packages/bitsandbytes/lib/bitsandbytes_cpu.so lib/python3.9/site-packages/bitsandbytes/lib/bitsandbytes_cuda114.so
- step2:
cp lib/python3.9/site-packages/bitsandbytes/lib/bitsandbytes_cuda117.so lib/python3.9/site-packages/bitsandbytes/lib/bitsandbytes_cpu.so
- step1:
- Root Cause: 系統預設的
transformer
- transformers 需要更新到 4.28.0 以上的版本。
目前僅有 transformers-main 的版本支援LlamaTokenizer
系列的子套件
llama.cpp
- 一個以 C++ 進行編譯並支援 LLM model 轉換 & 壓縮成 CPU 推論版的套件。 (Github)
- 詳細壓縮和量化方法參考這裡
- python 相關支援參考這裡
- 不管是 python 版還是 C++ 版,系統的 GCC 版本都需要升級到 9 以上, ubuntu 參考以下指令進行升級
1 | sudo apt install -y software-properties-common |
pytorch docker
- LLaMA 最低 python 環境要求為
python 3.8
, 如何的套用現成 Docker Image? - 以下是 pytorch 在 dockerhub 各版本對應到的 python 環境: