llama.cpp

llama.cpp

纯 C/C++ 实现的本地大模型推理引擎

核心功能

llama.cpp 基于 ggml 库,用纯 C/C++ 实现 LLM 与 VLM 推理,无外部依赖,可在 Apple Silicon、x86 及 CUDA、Vulkan 等后端上运行。它提供 1.5 到 8 比特整数量化以压缩显存占用,并支持 CPU+GPU 混合推理跑超出显存的模型。

功能亮点

一行跑模型

llama cli -hf 可直接从 Hugging Face 拉模型并对话

内置服务端

llama serve 启动 OpenAI 兼容接口,并附带浏览器 Web UI

量化省显存

提供多档整数量化,小显存显卡甚至纯 CPU 也能加载模型

硬件覆盖广

后端覆盖 Apple Silicon、NVIDIA 及昇腾 NPU 等硬件

自定义模型 / 模型接入

本地模型

纯本地推理,不调云端API。只加载GGUF权重,可用-hf从HF直拉或convert_*.py转换;llama serve提供OpenAI兼容接口。

接入方式
  • 本地权重:llama cli -m /path/to/model.gguf
  • 在线拉取:-hf <user>/<model>[:quant]拉HF仓库
  • 环境变量:LLAMA_ARG_MODEL、LLAMA_ARG_HF_REPO可替代参数
  • 换下载源:MODEL_ENDPOINT指向HF API兼容端点
  • 对外服务:llama serve启动OpenAI兼容API服务器
支持模型
本地GGUF权重Qwen3.5-0.8B-GGUFgemma-3-1b-it-GGUFGLM-4.7-Flash-GGUFHugging Face GGUF库
bash
从Hugging Face直接拉取并运行(含Qwen、GLM等国产模型的GGUF版)
llama cli -hf ggml-org/Qwen3.5-0.8B-GGUF
指定量化等级,冒号后跟quant
llama cli -hf ggml-org/GLM-4.7-Flash-GGUF:Q4_K_M
加载本机已有的GGUF文件
llama cli -m /path/to/model.gguf
启动OpenAI兼容API服务,供其他工具接入
llama serve -hf ggml-org/Qwen3.5-0.8B-GGUF
国内网络可把下载源换成HF API兼容的镜像端点
export MODEL_ENDPOINT=<hf-api-compatible-endpoint>

适用场景

• 在个人电脑上离线跑开源模型
• 为内网应用自建推理服务
• 低显存设备部署量化模型
• 移动端与嵌入式本地推理

安装配置

bash
# 方式一:访问 https://llama.app 按提示安装
# 方式二:从 GitHub Releases 下载预编译二进制
# 方式三:Docker,见仓库 docs/docker.md

# 方式四:从源码构建
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
cmake -B build
cmake --build build --config Release

# CUDA 加速构建
cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release

使用方法

bash
# 从 Hugging Face 下载并直接运行模型
llama cli -hf ggml-org/Qwen3.5-0.8B-GGUF

# 启动 OpenAI 兼容 API 服务
llama serve -hf ggml-org/Qwen3.5-0.8B-GGUF

关键指标

尚未核验对标产品,此处只列本工具自身指标,不做对比结论。

指标llama.cpp
价格免费
开源
上手难度专家

相关工具

同类工具

优点

  • 纯 C/C++ 无第三方依赖,编译产物单机即可运行,便于打包分发
  • 低比特量化后 7B 级模型能在消费级显卡甚至纯 CPU 上跑起来
  • 后端覆盖 Metal、CUDA、HIP、Vulkan、SYCL、CANN 等,适配面很广
  • llama serve 直接给出 OpenAI 兼容接口,现有客户端可直连

缺点

  • 推理速度与可用上下文长度受本机显存内存限制,长文场景很吃硬件
  • 要开启 CUDA、Vulkan 等加速通常需自行编译,得先配好工具链
  • 量化带来精度损失,对数学计算和长链推理任务影响较为明显
  • 项目迭代快,仓库已从 ggerganov 迁至 ggml-org,旧教程常失效