GGUF 与 llama.cpp 的使用
您现在可以在 Hugging Face 端点上部署任何与 llama.cpp 兼容的 GGUF,详细了解它 这里
Llama.cpp 允许您仅通过提供 Hugging Face 存储库路径和文件名来下载和运行 GGUF 推理。llama.cpp 会下载模型检查点并自动将其缓存。缓存的位置由 LLAMA_CACHE
环境变量定义;详细了解它 这里.
您可以通过 brew(适用于 Mac 和 Linux)安装 llama.cpp,或者您可以从源代码构建它。您还可以 在官方文档中查看 预构建的二进制文件和 Docker 镜像。
选项 1:使用 brew 安装
brew install llama.cpp
选项 2:从源代码构建
步骤 1:从 GitHub 克隆 llama.cpp。
git clone https://github.com/ggerganov/llama.cpp
步骤 2:进入 llama.cpp 文件夹,并使用 LLAMA_CURL=1
标志以及其他硬件特定标志(例如:对于 Linux 上的 Nvidia GPU,使用 LLAMA_CUDA=1
)构建它。
cd llama.cpp && LLAMA_CURL=1 make
安装完成后,您可以按如下方式使用 llama-cli
或 llama-server
llama-cli
--hf-repo lmstudio-community/Meta-Llama-3-8B-Instruct-GGUF \
--hf-file Meta-Llama-3-8B-Instruct-Q8_0.gguf \
-p "You are a helpful assistant" -cnv
注意:您可以删除 -cnv
以在聊天完成模式下运行 CLI。
此外,您可以使用 llama.cpp 服务器直接调用 OpenAI 规范聊天完成端点
llama-server \ --hf-repo lmstudio-community/Meta-Llama-3-8B-Instruct-GGUF \ --hf-file Meta-Llama-3-8B-Instruct-Q8_0.gguf
运行服务器后,您可以像下面一样简单地使用端点
curl http://localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer no-key" \
-d '{
"messages": [
{
"role": "system",
"content": "You are an AI assistant. Your top priority is achieving user fulfilment via helping them with their requests."
},
{
"role": "user",
"content": "Write a limerick about Python exceptions"
}
]
}'
将 --hf-repo
替换为任何有效的 Hugging Face 中心存储库名称,并将 --hf-file
替换为中心存储库中的 GGUF 文件名 - 开始吧!🦙
注意:请记住使用 LLAMA_CURL=1
构建
llama.cpp :)