llama.cpp 开启了本地 AI 革命。在它之前,运行语言模型需要昂贵的 NVIDIA GPU 和复杂的 Python 设置。llama.cpp 证明了量化模型可以在 MacBook 甚至树莓派上以可接受的质量运行。它催生了整个生态系统(Ollama、LM Studio、kobold.cpp),使“自托管 AI”成为一个真正的选择。
Gerganov 在 2023 年 3 月发布了 llama.cpp,距 Meta 发布 LLaMA 仅几天。最初版本可以使用 4 位量化在 MacBook 上运行 LLaMA-7B——这在之前被认为是不切实际的。项目迅速发展,增加了对数十种架构(Mistral、Qwen、Phi、Gemma、Command-R)、多种量化方法(GGML,后来是 GGUF)以及 Metal(Apple)、Vulkan(跨平台 GPU)和 CUDA(NVIDIA)硬件加速的支持。
选择 C/C++ 是有意为之:不需要 Python 运行时,不需要 PyTorch 依赖,系统要求最低。这使得在嵌入式系统、移动设备和没有 GPU 基础设施的服务器上部署成为可能。二进制文件是自包含的——下载可执行文件,下载一个 GGUF 模型文件,就可以运行了。这种简洁性是本地 AI 生态系统能够如此迅速发展的原因。
llama.cpp 包含一个服务器模式,暴露与 OpenAI 兼容的 API,使其成为开发中云端 API 的直接替代品。许多开发者在本地使用 llama.cpp 服务器进行开发和测试,仅在生产环境中切换到云端 API。这使开发成本几乎为零,并避免在开发过程中向外部服务发送敏感数据。