llama.cpp翻译站点

3天前更新 4 0 0

C/C++高性能LLM推理引擎,GGUF发明者,MIT许可,15+后端。

语言:
英文
收录时间:
2026-07-27
llama.cppllama.cpp
核心定位:C/C++高性能LLM推理引擎
开源协议:MIT
核心能力:GGUF,CPU/GPU推理,15+后端
特色功能:量化,多后端,OpenAI兼容API
GPU 必需:可选(CPU/GPU皆可)

llama.cpp 是由 Georgi Gerganov 于 2023 年 3 月发布的开源大模型推理引擎,用纯 C/C++ 实现,无任何外部依赖。核心目标是”在各类硬件上以最小配置实现最先进性能的大模型推理”。发明了 GGUF 模型格式(2023 年 8 月),现已成为本地 LLM 分发的通用标准。支持 Llama、Mistral、Gemma、DeepSeek、Qwen、Phi 等 50+ 模型架构,1.5-bit 到 8-bit 整数量化。提供 llama-cli(命令行交互)、llama-serverOpenAI 兼容 API 服务)、llama-bench(性能测试)、llama-quantize(量化工具)等全套工具链。MIT 协议,免费使用、修改和分发。

 

产品概述

llama.cpp 最初只是作者想在 MacBook 上跑 Meta Llama 模型的一个周末项目,如今已成为整个本地 LLM 生态的基石——Ollama、LM Studio、Jan、AnythingLLM 等几乎所有本地工具都将其作为核心推理后端。技术上,llama.cpp 基于自研的 ggml 张量库,通过 AVX/AVX2/AVX512/NEON 等 SIMD 指令集做汇编级优化,在 CPU 上达到极致性能;同时原生集成 CUDA、ROCm、Metal、Vulkan、OpenCL、SYCL 等 GPU 后端。

2025-2026 年的重要更新包括:llama-server 从简单 HTTP 服务扩展为完整 OpenAI 兼容 API 服务端(支持 chat/completions、embeddings、rerank、function calling、speculative decoding、多模态等);2026 年 4 月合并 NVFP4 量化支持 Blackwell 架构;同月引入后端无关的张量并行(通过 NCCL/RCCL),多 GPU 吞吐提升 3-4 倍;Hugging Face 缓存迁移使 llama.cpp 下载的模型可与其他 HF 工具共享。安装体积小于 90MB,无云依赖,无账号要求,数据不出本机。

 

核心能力

  • 模型推理:llama-cli 命令行交互,llama-server 提供 OpenAI 兼容 API
  • 量化工具:llama-quantize 支持 1.5-bit 到 8-bit 整数量化,Q4_K_M 为 7B 模型默认推荐
  • GGUF 转换:convert_hf_to_gguf.py 将 PyTorch/SafeTensors 模型转为 GGUF 格式
  • 混合推理:模型超出显存时自动将层拆分到 CPU+GPU,优雅降级
  • 多后端执行:Metal/CUDA/HIP/Vulkan/SYCL/OpenCL/CPU BLAS 全支持,单一二进制可通过 --device 运行时选择
  • 多模态:llama-mtmd-cli 统一多模态接口(2026 年 4 月新增,替代 llava-cli 等)
  • 高级功能:function calling、MCP 工具调用、schema 约束的 JSON 输出、speculative decoding、continuous batching

 

优势亮点

  • 纯 C/C++ 实现,无外部依赖,可编译到任何平台(含树莓派、手机、路由器)
  • 量化技术最成熟:GGUF 格式 + 1.5-8bit 量化,7B 模型 Q4_K_M 仅占 4.5GB 且质量损失可忽略
  • 硬件兼容性最广:Apple Silicon/CPU/NVIDIA/AMD/Intel/摩尔线程/Vulkan 全都支持
  • 是整个本地 LLM 生态的底层引擎,Ollama/LM Studio/Jan 都基于它
  • MIT 协议,完全免费,可商用
  • 2026 年 4 月新增 NVFP4 量化,Blackwell GPU(RTX 5090/B200)获得原生张量核心加速
  • 多 GPU 张量并行:NCCL/RCCL 后端无关实现,相比旧的层划分方式吞吐提升 3-4 倍
  • Hugging Face 直接集成:llama-cli -hf repo/model 一行命令下载并运行

 

短板

  • 学习曲线陡峭:需要编译或熟练使用命令行,不适合非技术用户(这也是 Ollama/LM Studio 存在的价值)
  • 高并发服务能力弱:相比 vLLM,llama.cpp 在连续批处理和多请求并发上性能差距明显,不适合生产级高并发
  • 多 GPU 效率不及 vLLM:虽有张量并行,但模型拆分效率仍不如 vLLM 的 PagedAttention
  • 量化控制过于精细:对新手是负担,需要理解 Q4_K_M/Q5_K_M/IQ2_XS 等量化类型的取舍
  • 纯 CPU 跑大模型极慢:70B 模型纯 CPU 推理可能只有 1 token/s 级别
  • 无图形界面:需要自行搭配前端(如 Open WebUI)才能获得聊天体验

 

适用人群

开发者、需要最大控制力的进阶用户、边缘/嵌入式设备部署、下游工具开发者(基于其做二次开发)、需要在非标准硬件(ARM、旧 GPU、树莓派)上跑模型的用户、量化研究者。

 


安装与快速开始

 

Step 1:安装 llama.cpp

macOS(Homebrew)

brew install llama.cpp

Windows(winget)

winget install llama.cpp

Linux(包管理器)

# Ubuntu/Debian
sudo apt install llama.cpp

从源码编译(获取最新特性)

git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
cmake -B build
cmake --build build --config Release -j$(nproc)

Docker

docker pull ghcr.io/ggml-org/llama.cpp:full

 

Step 2:下载并运行模型(命令行交互)

直接从 Hugging Face 下载并运行(推荐):

llama-cli -hf ggml-org/gemma-3-1b-it-GGUF

使用本地 GGUF 文件

llama-cli -m ./my_model.gguf

指定量化版本(以 Q4_K_M 为例):

llama-cli -hf ggml-org/Llama-3.3-70B-Instruct-GGUF:Q4_K_M

 

Step 3:启动 API 服务

llama-server -hf ggml-org/gemma-3-1b-it-GGUF

服务默认在 http://localhost:8080 启动,提供 OpenAI 兼容 API。

 

Step 4:调用 API(任选一种方式)

curl 调用

curl http://localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemma-3-1b-it",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

Python 调用

from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:8080/v1",
    api_key="sk-no-auth"  # 本地无需真实 key
)

response = client.chat.completions.create(
    model="gemma-3-1b-it",
    messages=[{"role": "user", "content": "你好"}]
)
print(response.choices[0].message.content)

 

Step 5:(可选)模型量化

如果你有 HuggingFace 原始模型,转为 GGUF 并量化:

# 转换为 GGUF 格式
python convert_hf_to_gguf.py ./models/7B/

# 量化为 Q4_K_M
./llama-quantize ./models/7B/ggml-model-f16.gguf ./models/7B/ggml-model-q4_k_m.gguf Q4_K_M

量化类型选择参考

量化类型 位数 适用场景
Q4_K_M ~4.5 bpw 默认推荐,质量与体积最佳平衡
Q5_K_M ~5.3 bpw 质量优先
Q8_0 8 bpw 近无损,需大内存
IQ2_XS ~2.3 bpw 极致压缩,质量损失明显

 

硬件配置参考

  • 7B Q4_K_M 模型:4.5GB 内存,Apple Silicon 上 40+ tokens/s
  • 13B Q4 模型:8GB 内存
  • 70B Q4 模型:约 40GB 内存(需 CPU+GPU 混合推理)
  • 纯 CPU 推理可行但速度较慢;Apple Silicon/RTX 4090 可获最佳体验
  • 24GB RTX 4090 可流畅运行 32B Q4

最佳实践:消费级硬件首选 Q4_K_M 量化;超出显存时 llama.cpp 自动将层拆分到 CPU,优雅降级;多 GPU 用户可通过 NCCL/RCCL 启用张量并行提升吞吐;Blackwell GPU(RTX 5090/B200)建议用 b8967+ 版本启用 NVFP4 原生加速。

相关导航