← プロジェクト一覧に戻る
llama.cpp
ノートPCからシングルボードまで動く、可搬なC++推論エンジン
公式MIT
概要
ここでの量子化の成果が、データセンターGPUのないハードウェアで実用的なモデルを動かせるようにしました。ローカルモデル関連エコシステムの多くがこの上に構築されています。直接扱う場合は、上位のラッパーが隠しているビルドフラグやハードウェア固有の事情に向き合うことになります。
llama.cppで何ができますか?
- 1コマンドでモデルを実行 — llama cli -hf ggml-org/Qwen3.5-0.8B-GGUFのように指定すればHugging FaceからGGUFを取得してそのまま対話セッションが始まり、Python環境は不要です。
- OpenAI互換APIとして公開 — llama serveで起動するとOpenAI互換のRESTサーバーになり、既存クライアントの接続先を差し替えるだけで使えます。付属のWeb UIからも動作を確認できます。
- VRAMを超えるモデルも動かす — 1.5ビットから8ビットまでの整数量子化に加え、モデルの一部だけをGPUに載せて残りをCPUで処理するハイブリッド推論に対応しています。
- 手元のハードウェアに合わせる — Apple SiliconのMetalとARM NEON、NVIDIAのCUDA、AMDのHIP、Moore ThreadsのMUSAに加え、Vulkan・SYCL・OpenCL・WebGPU・CANNなどのバックエンドを同一ソースから選べます。
- GBNF文法で出力形式を固定 — GBNF形式の文法ファイルを渡すと生成結果を指定した構文に強制でき、小さなローカルモデルからも構造化された出力を安定して得られます。
ドキュメント
ggml-org/llama.cpp のREADMEより転載(MIT)。 原文を読む ↗
llama.cpp
LLM inference in C/C++
manifesto / ggml / ops / maintainer PRs / compile times / lib llama API / llama-server REST API
Quick start
A few options to get llama.cpp installed on your machine:
- Visit https://llama.app and follow the instructions
- Run with Docker - see our Docker documentation
- Download pre-built binaries from the releases page
- Build from source by cloning this repository - check out our build guide
Once installed:
# Download and run a model directly from Hugging Face
llama cli -hf ggml-org/Qwen3.5-0.8B-GGUF
# Launch OpenAI-compatible API server
llama serve -hf ggml-org/Qwen3.5-0.8B-GGUF
Description
The main goal of llama.cpp is to enable LLM (and VLM) inference with minimal setup and state-of-the-art performance on
a wide range of hardware - locally and in the cloud.
- Plain C/C++ implementation without any dependencies
- Apple silicon is a first-class citizen - optimized via ARM NEON, Accelerate and Metal frameworks
- AVX, AVX2, AVX512 and AMX support for x86 architectures
- RVV, ZVFH, ZFH, ZICBOP and ZIHINTPAUSE support for RISC-V architectures
- 1.5-bit, 2-bit, 3-bit, 4-bit, 5-bit, 6-bit, and 8-bit integer quantization for faster inference and reduced memory use
- Custom CUDA kernels for running LLMs on NVIDIA GPUs (support for AMD GPUs via HIP and Moore Threads GPUs via MUSA)
- Vulkan and SYCL backend support
- CPU+GPU hybrid inference to partially accelerate models larger than the total VRAM capacity
The llama.cpp project is build on top of the ggml library.
Supported backends
| Backend | Target devices |
|---|---|
| BLAS | All |
| BLIS | All |
| CANN | Ascend NPU |
| CUDA | Nvidia GPU |
| HIP | AMD GPU |
| Hexagon [In Progress] | Snapdragon |
| IBM zDNN | IBM Z & LinuxONE |
| MUSA | Moore Threads GPU |
| Metal | Apple Silicon |
| OpenCL | Adreno GPU |
| OpenVINO [In Progress] | Intel CPUs, GPUs, and NPUs |
| RPC | All |
| SYCL | Intel GPU |
| VirtGPU | VirtGPU APIR |
| Vulkan | GPU |
| WebGPU | All |
| ZenDNN | AMD CPU |