1. 环境准备:从零开始的硬件与软件栈
对于希望在本地运行大模型的用户,llama.cpp 是一个轻量级推理引擎。它使用 C/C++ 编写,能将 Hugging Face 上的大型模型转换为 GGUF 格式,在 Mac、Windows 或 Linux 的 CPU 及 GPU 上流畅运行。
本文介绍从环境准备到模型量化、再到跨平台高效推理的完整流程。重点分享在不同硬件(CPU、Apple Metal、NVIDIA CUDA)下的部署差异,以及如何针对单卡和多卡进行性能调优。无需是 C++ 专家,跟着步骤操作即可拥有离线大模型助手。
开始之前,需明确硬件路径:纯 CPU、苹果电脑的 Metal(Apple Silicon M 系列芯片),或带有 NVIDIA 显卡的电脑。软件栈围绕 llama.cpp 的编译环境。Linux 和 macOS 用户可使用系统终端和包管理器。Windows 用户推荐使用 WSL2(Windows Subsystem for Linux)以提供原生 Linux 环境。
注意:无论选择哪种硬件路径,第一步都是确保系统有基础的编译工具链。打开终端,输入
gcc --version或clang --version查看。若无,使用sudo apt install build-essential(Ubuntu)或xcode-select --install(macOS)安装。
2. 编译 llama.cpp:针对不同硬件的'定制化'构建
获取源代码后,需根据硬件环境编译生成可执行文件。
2.1 获取源代码与基础准备
克隆仓库并准备编译工具:
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
需要 make 工具。Linux 通常自带,macOS 安装 Xcode Command Line Tools 后包含。此外还需 cmake 和 pkg-config:
# Ubuntu/Debian
sudo apt update && sudo apt install build-essential cmake pkg-config
# macOS (使用 Homebrew)
brew install cmake pkg-config
2.2 CPU 版本编译:最通用的起点
CPU 版本兼容性最广,不依赖特殊图形 API。
make
调用 Makefile 自动检测环境,编译出 main、llama-cli、llama-server 等。完成后运行 ./llama-cli -h 确认。适合无 GPU 机器,但速度相对较慢。
2.3 Metal (Apple Silicon) 版本编译:榨干苹果芯片的性能
若使用搭载 M1、M2、M3 等 Apple Silicon 芯片的 Mac,Metal Performance Shaders (MPS) 是性能利器。编译时,我们需要显式地启用 Metal 支

