安装指南

本教程面向使用 llama.cpp & 昇腾的开发者,帮助完成昇腾环境下 llama.cpp 的安装。

备注

目前 llama.cpp 仅支持 Atlas 300T A2 型号设备

llama.cpp 下载安装

此处提供 docker 和 pip 两种安装方式,请按需选择:

安装方式
pip
Docker

使用源代码安装

备注

请确保已经根据快速安装昇腾环境指引安装了对应的CANN-toolkit版本以及相应的固件和驱动,并应用了CANN-toolkit环境变量。

提示

LLAMA-Factory 支持的 CANN 最低版本为 8.0.rc1。安装 CANN 时,请同时安装 Kernel 算子包。

Python 环境创建

创建并激活 Python 环境:

conda create -y -n llamacpp python=3.10
conda activate llamacpp

获取源代码

使用以下 git 指令获取源码

git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp

构建 llama.cpp

cmake -B build -DGGML_CANN=on -DCMAKE_BUILD_TYPE=release
cmake --build build --config release

使用 Docker

备注

请确保已经根据快速安装昇腾环境指引安装了对应的的固件和驱动。

提示

更多 CANN 的基础镜像选择见ascendai/cann

构建 docker 镜像:

docker build -t llama-cpp-cann -f .devops/llama-cli-cann.Dockerfile .

找到所有卡的运行信息:

npu-smi info

启动 docker 容器:

docker run --name llamacpp \
--device /dev/davinci0  \
--device /dev/davinci_manager \
--device /dev/devmm_svm \
--device /dev/hisi_hdc \
-v /usr/local/dcmi:/usr/local/dcmi \
-v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \
-v /usr/local/Ascend/driver/lib64/:/usr/local/Ascend/driver/lib64/ \
-v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info \
-v /PATH_TO_YOUR_MODELS/:/app/models \
-it llama-cpp-cann -m /app/models/MODEL_PATH -ngl 32 \
-p "Building a website can be done in 10 simple steps:"

安装校验

安装完成后,无任何报错信息,即为安装成功,下面为部分回显信息:

1[ 97%] Built target test-grammar-integration
2[ 97%] Built target llama-speculative
3[ 97%] Built target llama-perplexity
4[ 98%] Linking CXX executable ../../bin/llama-bench
5[ 98%] Linking CXX executable ../bin/test-json-schema-to-grammar
6[ 98%] Built target llama-bench
7[ 98%] Built target test-json-schema-to-grammar
8[100%] Linking CXX executable ../../bin/llama-server
9[100%] Built target llama-server