Windowsマシン に llama-cpp-python を入れても BLAS not found でGPUが使ってもらえない
!pip install llama-cpp-python --force-reinstall --upgrade --no-cache-dir -vv -C cmake.args="-DLLAMA_BLAS=ON;-DLLAMA_BLAS_VENDOR=OpenBLAS"
<中略>
-- Could NOT find BLAS (missing: BLAS_LIBRARIES)
CMake Warning at vendor/llama.cpp/CMakeLists.txt:339 (message):
BLAS not found, please refer to
https://cmake.org/cmake/help/latest/module/FindBLAS.html#blas-lapack-vendors
to set correct LLAMA_BLAS_VENDOR
<後略>
お疲れ様です、波浪です。
llama-cpp-pythonを手持ちのWindowsマシンで使いたくて
のREADMEを見ながらあれこれ試してみたけど BLAS not found
が突破できなかったんですがissueみたら
コンパイル済みのライブラリをいれようって書いてあったので試したら突破できました
まあそれで全部です、以下は備忘録
wheelsの場所は下記のgithub
AVXどれ選ぶねん??
については、CPUの内部情報になるので
を使って確認できました
自分の場合AVX512は一部FalseだけどAVX2ならいけそうだな、程度の理由でAVX2を選択。
あと自分がいれているCUDAのVerが必要なので nvcc -Vで確認
$ nvcc -V
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:41:10_Pacific_Daylight_Time_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0
自分は 118なので 以下のコマンドでWindowsにllama-cpp-pythonをインストールすることでGPUを使えるようになりました。
pip install llama-cpp-python --prefer-binary --no-cache-dir --force-reinstall --upgrade -vv --extra-index-url=https://jllllll.github.io/llama-cpp-python-cuBLAS-wheels/AVX2/cu118
pipインストールが終わったら一度環境を再起動して以下のコマンドで確認(modelは事前に落としておいてね、別にミクさんじゃなくていいよ、gguf形式ならなんでもいいです)
python -c "from llama_cpp import Llama;llm = Llama(model_path='./miqdev/miqu-1-70b.q2_K.gguf', n_gpu_layers=-1,)"
BLAS=1 GETTTTTTTTTTTTTTTTTTTT!!!
BLAS=0の時は10分くらいかかっていたので 出力が1/10くらいになりました
以上、よろしくお願いします。
Discussion