Arch Linux 部署运行 llama.cpp
编译 llama.cpp
clone llama.cpp 项目:
git clone https://github.com/ggerganov/llama.cpp
安装 cuda:
pacman -S cuda
以 LLAMA_CUBLAS Flag 编译:
make LLAMA_CUBLAS=1
下载预训练模型
在这篇文章《Another new llama.cpp / GGML breaking change, affecting q4_0, q4_1 and q8_0 models.》中提到,GGML 引入了一个 Breaking Change 导致老模型会加载失败。
新模型文件的文件名中将包含 ggmlv3 ,例如 model-name.ggmlv3.q4_0.bin 。
参见GGML 文件。
运行模型
启动模型:
./main -t 10 -ngl 24 -m /home/maxiee/Code/LLM预训练模型/TheBloke/Vicuna-7B-CoT-GGML/vicuna-7B-cot.ggmlv3.q2_K.bin --color -c 2048 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "### Instruction: How to write a quick sort in Racket?\n### Response:"
-t 10指的是物理 CPU 的核心数量。比如 8 核/16 线程,这里填 8。-ngl 32指将多少层放在 GPU 上运行,如果不使用 GPU,则无需传这个参数-m或--model:用于指定模型文件的路径。-n或--n-tokens:用于指定生成的令牌数量。-p或--prompt:用于指定输入提示。-t或--temperature:用于指定生成的温度(影响生成文本的随机性)。-k或--top-k:用于指定在生成时考虑的最高排名令牌的数量。-P或--top-p:用于指定在生成时考虑的累积概率阈值。-r或--repeat-penalty:用于指定重复令牌的惩罚。-i或--interactive:用于指定是否使用交互模式。-f或--prompt-file:用于指定包含提示的文件的路径。-c或--color:用于指定是否在交互模式下使用颜色输出。-R或--repeat-penalty:用于指定重复令牌的惩罚。-N或--n-threads:用于指定用于推理的线程数。-ngl或--gpu-layers:用于指定在 GPU 上执行的层的数量(仅在构建时启用 Metal 支持时可用)。-b或--batch-size:用于指定批处理大小(仅在构建时启用 BLAS 支持时可用)。
如果希望对话式交互,将 -p <PROMPT> 参数替换为 -i -ins。
请注意,这些参数可能会随着项目的更新而更改。
网络资源
「Manual」How to install Large Language Model Vicuna 7B + llama.ccp on Steam Deck (ChatGPT at home)
本文作者:Maeiee
本文链接:Arch Linux 部署运行 llama.cpp
版权声明:如无特别声明,本文即为原创文章,版权归 Maeiee 所有,未经允许不得转载!
喜欢我文章的朋友请随缘打赏,鼓励我创作更多更好的作品!
