ggml-org/llama.cpp

LLM inference in C/C++

llama.cpp – 純粋 C/C++ で実現する高速 LLM 推論

何かllama.cpp はローカルで大規模言語モデル(LLM)を実行するためのライブラリとコマンドラインツールのセットです。外部ランタイム依存がなく、純粋な C/C++ で書かれており、CPU と GPU(Apple Metal、x86 AVX/AVX2/AVX‑512/AMX、RISC‑V 拡張、CUDA、Vulkan、SYCL など)幅広いハードウェアを対象としています。目標は、最先端の推論性能を提供しつつ、セットアップをできるだけシンプルにすることです。

主な機能

  • GGML/​GGUF モデル形式をサポートし、モデルを 1.5‑8 ビット整数に量子化してメモリ使用量を削減し、推論を高速化します。
  • ノートブック(Apple Silicon、x86、RISC‑V)からクラウド GPU(NVIDIA、AMD、Intel、Moore Threads、Ascend)まで、さらには WebGPU 経由のブラウザでも動作します。
  • 軽量 CLI(llama-cli)で直接プロンプトを実行し、OpenAI API をエミュレートする REST 互換サーバー(llama‑server)を提供、エンジンを他プログラムに組み込むための C ライブラリ(libllama)もあります。
  • 豊富なモデルサポート:LLaMA 1‑3、LLaMA 2、Mistral、Mixtral、Falcon、Gemma、Yi、Qwen、数多くの多言語・コードモデルに加え、マルチモーダル視覚‑言語モデル(LLaVA、BakLLaVA、Moondream など)も増加中です。
  • 言語バインディング(Python、Go、Node、Rust、.NET、Java、Swift、Ruby など)と UI フロントエンド(LMStudio、Ollama、Jan、KoboldCPP、LocalAI など)のエコシステムが充実しています。

はじめ方

  1. インストール – パッケージマネージャー(brewnixwingetconda‑forge)を使うか、リリースページからビルド済みバイナリを取得、提供されている Docker イメージを実行、あるいはソースからビルドします(docs/install.mddocs/build.md を参照)。
  2. モデル取得 – Hugging Face から GGUF モデルをダウンロード(llama-cli -hf <repo>/<model>-GGUF)するか、ggify などのツールで自分の PyTorch チェックポイントを変換します。
  3. プロンプト実行
    llama-cli -m my_model.gguf "Explain quantum computing in one sentence"
    
  4. サーバー起動(OpenAI 互換クライアント向け):
    llama-server -hf ggml-org/gemma-3-1b-it-GGUF
    
    任意の OpenAI クライアントライブラリでフロントエンドとして利用可能です。

重要性

  • 重厚なフレームワークを必要とせず、プライベートかつオフラインで LLM を利用できるようにします。
  • ハードウェアのハードルを下げます:積極的な量子化により、一般的な CPU でも 4‑7 B パラメータモデルを実行可能です。
  • GGML エコシステムのリファレンス実装として、多くの下流プロジェクト(バインディング、UI アプリ、クラウドネイティブ LLMOps プラットフォームなど)を牽引します。

リソース

  • ドキュメント – インストール、ビルドオプション、バックエンド詳細、マルチモーダルサポート、モデル追加ガイド。
  • コミュニティ – 新機能、パッケージ化、WebUI、コラボレーション(例:NVIDIA MXFP4 サポート)についての議論。
  • バインディング&UI一覧llama.cpp を利用した言語バインディングとユーザーインターフェースの厳選リスト。

上記情報はすべてリポジトリの README から直接引用しています。