基于GPU在本地部署llama.cpp
基于GPU在本地部署ggerganov/llama.cpp: LLM inference in C/C++ (github.com)
下载llama.cpp
git clone git@github.com:ggerganov/llama.cpp.git
cd llama.cpp
编译GPU环境的程序
我是基于cuda12.4工具包,用cmake进行编译。编译得到的程序保存在./build/bin/
mkdir build
cd build
cmake .. -DLLAMA_CUBLAS=ON
cmake --build . --config Release
运行和使用
运行bin文件中的main
程序,首先需要从huggingface上下载GGUF格式的预训练模型。经过网络检索,我的RTX3060-12G的显卡,可以较快速处理7B 4Q
大小的模型。于是我下载了llama-2-7b.Q4_0.gguf ,并将该模型保存在./models/llama-7b/ggml-model-q4_0.gguf
中。
下面是运行的效果展示,注意,./main
程序默认在CPU上运行,若要在GPU上运行,需要设置--n-gpu-layers N
参数。
./main -m ../../models/llama-7b/ggml-model-q4_0.gguf -n -1 --color -r "User:" --in-prefix " " -i -p \
'User: Hi
AI: Hello. I am an AI chatbot. Would you like to talk?
User: Sure!
AI: What would you like to talk about?
User:' --n-predict 512 --repeat-penalty 1.0 --n-gpu-layers 15000
GPU运行性能如下:
refs:
Running llama.cpp on Linux: A CPU and NVIDIA GPU Guide - Kubito
skr