llama.cppとは?軽量にローカルLLMを実行する方法を初心者向けに解説

kento_morota 12分で読めます
社内のAI・IT活用、技術がわかる相手に無料相談。 相談 →
目次

llama.cppは、ローカルLLMを軽量かつ高速に実行するためのオープンソース推論エンジンです。C/C++で実装されているため、PythonやCUDAなどの複雑な依存関係なしに動作し、CPU環境でも実用的な速度でLLMを実行できる点が大きな特徴です。

本記事では、llama.cppの基本的な概要からインストール方法、モデルの実行、APIサーバーとしての運用方法まで、初心者の方でも理解できるよう丁寧に解説します。

llama.cppとは何か

llama.cppは、Georgi Gerganov氏が2023年に開発を開始したオープンソースプロジェクトです。当初はMetaのLlama モデルをCPUで動作させることを目的として作られましたが、現在ではQwenGemmaMistralなど、GGUF形式に対応する数百種類のモデルを実行できるようになっています。

llama.cppの主な特徴

  • C/C++実装:Pythonランタイムが不要で、依存関係が最小限
  • CPU推論の最適化:AVX2やARM NEONなど、CPU命令セットに最適化された高速推論
  • GPU推論対応:CUDA(NVIDIA)、Metal(Apple)、Vulkan(AMD/Intel)をサポート
  • GGUF形式量子化モデルの標準フォーマットとして広く採用
  • 低メモリ消費:量子化技術により、大幅に少ないメモリでモデルを実行可能
  • APIサーバー機能:OpenAI互換のHTTPサーバーを内蔵
  • 組み込み対応Raspberry Piなど低スペックデバイスでも動作可能

実はOllamaLM Studioも、内部的にはllama.cppの推論エンジンを利用しています。llama.cppを直接使用することで、より細かい制御やカスタマイズが可能になります。

llama.cppのインストール方法

llama.cppのインストール方法は、ビルド済みバイナリの利用とソースからのビルドの2通りがあります。

方法1:ビルド済みバイナリを使う(推奨)

最も手軽なのは、GitHubのリリースページからビルド済みバイナリをダウンロードする方法です。

  1. llama.cpp リリースページにアクセス
  2. 最新リリースの「Assets」セクションから、自分の環境に合ったファイルをダウンロード
  3. ダウンロードしたアーカイブを展開

主なダウンロード対象は以下の通りです。

ファイル名の目印 対象環境
win-cuda Windows + NVIDIA GPU
win-avx2 Windows(CPU推論)
macos-arm64 macOS(Apple Silicon)
ubuntu-x64 Linux(CPU推論)
ubuntu-cuda Linux + NVIDIA GPU

方法2:ソースからビルドする

最新機能を利用したい場合や、特定のハードウェアに最適化したビルドを作りたい場合は、ソースからビルドします。

Linux / macOS でのビルド(CPU推論)

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

NVIDIA GPU(CUDA)を有効にしたビルド

cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release -j$(nproc)

Apple Silicon(Metal)を有効にしたビルド

cmake -B build -DGGML_METAL=ON
cmake --build build --config Release -j$(sysctl -n hw.ncpu)

ビルドが完了すると、build/bin/ ディレクトリ内に実行ファイルが生成されます。

モデルの入手と実行

llama.cppで利用できるモデルは、GGUF形式のファイルです。Hugging Faceから多数のモデルをダウンロードできます。

モデルのダウンロード

Hugging Faceで「GGUF」と検索すると、多くの量子化済みモデルが見つかります。例えば、Qwen3 8BのQ4_K_M量子化版は以下のようにダウンロードできます。

# Hugging Face CLIを使用(事前にpip install huggingface-hubが必要)
huggingface-cli download Qwen/Qwen3-8B-GGUF qwen3-8b-q4_k_m.gguf --local-dir models/

# またはwgetで直接ダウンロード
wget -P models/ https://huggingface.co/Qwen/Qwen3-8B-GGUF/resolve/main/qwen3-8b-q4_k_m.gguf

対話モードでの実行

ダウンロードしたモデルを対話モードで実行します。

# 基本的な対話モード
./build/bin/llama-cli -m models/qwen3-8b-q4_k_m.gguf -c 4096 --conversation

# GPU(CUDA)を利用する場合(全レイヤーをGPUにオフロード)
./build/bin/llama-cli -m models/qwen3-8b-q4_k_m.gguf -c 4096 -ngl 99 --conversation

主要なオプションの意味は以下の通りです。

オプション 説明
-m モデルファイルのパス
-c コンテキスト長(処理できるトークン数)
-ngl GPUにオフロードするレイヤー数(99で全レイヤー)
-t 使用するCPUスレッド数
--conversation 対話モードを有効化
--temp Temperature(応答のランダム性制御、デフォルト0.8)

ベンチマークの実行

自分のPC環境でどの程度のパフォーマンスが出るか確認するには、ベンチマークを実行します。

./build/bin/llama-bench -m models/qwen3-8b-q4_k_m.gguf -ngl 99

これにより、プロンプト処理速度(pp: tokens/s)と生成速度(tg: tokens/s)が表示されます。生成速度が5 tokens/s以上あれば、対話的な利用に十分です。PCスペックガイドの推奨値と比較して、自分の環境のパフォーマンスを評価してください。

APIサーバーとしての運用

llama.cppには、OpenAI互換のHTTP APIサーバーが内蔵されています。これを利用することで、社内の様々なアプリケーションからローカルLLMにアクセスできるようになります。

サーバーの起動

# 基本的なサーバー起動
./build/bin/llama-server -m models/qwen3-8b-q4_k_m.gguf -c 4096 --port 8080

# GPU利用 + 複数同時リクエスト対応
./build/bin/llama-server -m models/qwen3-8b-q4_k_m.gguf -c 4096 -ngl 99 --port 8080 --parallel 4

サーバーが起動すると、http://localhost:8080 でAPIにアクセスできます。簡易的なWeb UIも内蔵されており、ブラウザからアクセスするとチャット画面が表示されます。

APIの利用例

# curlでのリクエスト例
curl http://localhost:8080/v1/chat/completions -H "Content-Type: application/json" -d '{
  "model": "qwen3-8b",
  "messages": [
    {"role": "user", "content": "来月の売上見込みレポートのフォーマットを作成してください。"}
  ]
}'

Pythonからも、OpenAIライブラリをそのまま利用できます。

from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:8080/v1",
    api_key="no-key"
)

response = client.chat.completions.create(
    model="qwen3-8b",
    messages=[
        {"role": "system", "content": "あなたは経験豊富なビジネスコンサルタントです。"},
        {"role": "user", "content": "中小企業のDX推進で最初に着手すべき施策を3つ教えてください。"}
    ]
)
print(response.choices[0].message.content)

APIサーバーの詳細な構築方法については、専用の記事も参考にしてください。

CPU推論を最大限に活用するテクニック

llama.cppの最大の強みは、GPU無しのCPU環境でも実用的な速度でLLMを動作させられる点です。CPU推論のパフォーマンスを最大化するためのテクニックを紹介します。

適切なスレッド数の設定

CPUのコア数に応じた適切なスレッド数を設定することで、推論速度が改善します。

# 物理コア数と同じスレッド数を設定(例:8コアCPUの場合)
./build/bin/llama-cli -m models/qwen3-8b-q4_k_m.gguf -t 8 --conversation

一般的には、物理コア数と同じかやや少ない数が最適です。ハイパースレッディングの論理コア数を設定すると、逆にパフォーマンスが低下することがあるため注意してください。

低ビット量子化の活用

CPU推論では、量子化レベルを下げることでメモリ使用量と処理速度の両方を改善できます。Q4_K_Mが標準的ですが、CPU環境ではQ3_K_MやIQ3_XXSなどの低ビット量子化も検討に値します。

小さなモデルを選ぶ

CPU推論では、モデルサイズがパフォーマンスに直結します。SLMクラスの1B〜4Bモデルであれば、一般的なビジネスPCでも快適に動作します。

# 軽量なSLMをCPU推論で実行
./build/bin/llama-cli -m models/gemma3-1b-q4_k_m.gguf -t 8 --conversation

llama.cppとOllama・LM Studioの関係

llama.cpp、OllamaLM Studioの3つは、ローカルLLMのエコシステムにおいて密接に関連しています。

ツール 位置づけ 向いている人
llama.cpp 推論エンジン(コア技術) 細かい制御が必要な開発者・上級者
Ollama llama.cppのラッパー(CLI) CLIに慣れた技術者、サーバー運用
LM Studio llama.cppのラッパー(GUI) 初心者、GUI操作を好む方

OllamaもLM Studioも、内部でllama.cppの推論エンジンを使用しています。通常の業務利用であればOllamaやLM Studioで十分ですが、以下のような場面ではllama.cppを直接利用する価値があります。

  • 推論パラメータを細かく制御したい場合
  • 最新のllama.cpp機能をいち早く利用したい場合
  • カスタムビルドで特定のハードウェアに最適化したい場合
  • Raspberry Piなどの組み込みデバイスで動作させたい場合
  • バッチ処理で大量のテキストを効率的に処理したい場合

業務活用の具体例

llama.cppを使った業務活用のシナリオをいくつか紹介します。

社内文書の一括要約処理

llama.cppのバッチ処理機能を使えば、大量の社内文書を一括で要約できます。シェルスクリプトと組み合わせて自動化パイプラインを構築できます。

#!/bin/bash
# 社内文書の一括要約スクリプト例
for file in documents/*.txt; do
  content=$(cat "$file")
  echo "以下の文書を200文字以内で要約してください:$content" | \
  ./build/bin/llama-cli -m models/qwen3-8b-q4_k_m.gguf -c 4096 -n 256 --temp 0.1 -p "$(cat)" \
  > "summaries/$(basename $file)"
done

オフライン環境でのAI活用

llama.cppはインターネット接続不要で動作するため、セキュリティ要件の厳しい環境やオフライン拠点でも利用できます。セキュリティとデータ保護の観点からも、完全オフライン運用は大きなメリットです。

RAGシステムのバックエンド

llama.cppのAPIサーバー機能をRAGシステムのバックエンドとして使用することで、社内ナレッジベースと連携した高精度な質問応答システムを構築できます。

まとめ:llama.cppは高度なローカルLLM運用の基盤

llama.cppは、ローカルLLMエコシステムの中核を担う推論エンジンです。本記事のポイントを整理します。

  • C/C++実装で軽量高速:依存関係が少なく、CPU環境でも実用的な速度を実現
  • 幅広いモデル対応:GGUF形式でLlama 4Qwen3Gemma 3などを実行可能
  • GPU/CPU両対応:NVIDIA CUDA、Apple Metal、CPU推論すべてをサポート
  • APIサーバー内蔵:OpenAI互換APIで既存システムとの連携が容易
  • OllamaやLM Studioの基盤技術:より細かい制御が必要な場合に直接利用する価値がある

初めてローカルLLMを試す方は、まずOllamaLM Studioから始め、より高度な制御やカスタマイズが必要になった段階でllama.cppの直接利用を検討するのが良いでしょう。パフォーマンス最適化を追求する際にも、llama.cppの各種オプションの理解が役立ちます。

#llama.cpp#ローカルLLM#使い方
ManageAI 先行モニター企業 募集中|先着5社・2026年11月末まで

生成AIの利用費、「誰が・何のために・いくら」まで見えていますか?

株式会社カイダンと共同開発したAI利用ガバナンスSaaS「ManageAI」は、OpenAI・Azure OpenAI・Claude・AWS Bedrock・Google Vertex AIの費用と利用状況を、部署・利用者・プロジェクト別に可視化します。導入は読み取り専用キーの登録だけ。初期費用0円・月額5万円(税別)で先行モニター企業を募集しています。

ニュースリリースを読む
共有:
無料メルマガ

週1回、最新の技術記事をお届け

AI・クラウド・開発の最新記事を毎週月曜にメールでお届けします。登録は無料、いつでも解除できます。

プライバシーポリシーに基づき管理します

関連記事

Related / 9 articles

  1. AI・機械学習

    Stable Diffusionの使い方とビジネス利用の注意点|ローカル画像生成入門

    自社PCで動かせる画像生成AI「Stable Diffusion」の始め方をビジネス目線で解説。必要なスペック、ツールの選び方、商用利用のライセンス確認ポイント、販促物への活用と注意点をまとめました。

  2. AI・機械学習

    Claude CodeのSkills(エージェントスキル)とは?作り方と活用例を解説

    Claude Codeに定型ワークフローを覚えさせる「Agent Skills」を解説。SKILL.mdの書き方、スラッシュコマンドやサブエージェントとの使い分け、チームで再利用できるスキル設計のコツを実例つきでまとめました。

  3. AI・機械学習

    ベクトルデータベース比較|Chroma・Qdrant・FAISS・pgvectorの選び方を解説

    RAG構築に欠かせないベクトルデータベースを比較解説。Chroma・Qdrant・FAISS・pgvector・Milvusの特徴と使いどころ、中小企業の社内文書検索にはどれを選ぶべきかを実務目線でまとめました。

  4. AI・機械学習

    Whisperで無料の文字起こし環境を作る|ローカル実行なら会議音声が社外に出ない

    OpenAIの音声認識モデルWhisperを自社PCで動かし、無料かつセキュアな文字起こし環境を作る手順を解説。モデルサイズの選び方、精度を上げる録音のコツ、議事録自動化への発展まで実践的にまとめました。

  5. AI・機械学習

    vLLMとは?Ollamaとの違いと使い方|社内LLMサーバーを高速化する本命ツール

    複数人で使う社内LLMサーバーの本命「vLLM」を解説。PagedAttentionと連続バッチングの仕組み、Ollamaとの使い分け、導入手順と注意点まで、社内AI基盤を検討する企業向けにまとめました。

  6. AI・機械学習

    AIエンジニアとは?仕事内容・必要スキル・なり方・年収まで完全ガイド

    AIエンジニアとは何かを仕事内容・関連職種との違い・必要スキル・資格・なり方・年収まで網羅的に解説。目指す個人にも採用したい企業にも役立つ完全ガイドです。

  7. AI・機械学習

    中小企業のAIエンジニア確保術|採用・育成・外注どれを選ぶべきか比較

    AIエンジニアの採用が難しい中小企業向けに、正社員採用・既存社員の育成・外部委託の3つの選択肢を比較。自社に合ったAI人材確保の進め方がわかります。

  8. AI・機械学習

    AIエンジニアの年収と将来性|需要が伸び続ける理由とキャリアの広げ方

    AIエンジニアの年収水準と将来性を解説。需要が伸び続ける背景、年収を高めるスキルの掛け合わせ方、今後のキャリアパスの選択肢まで整理しました。

  9. AI・機械学習

    未経験からAIエンジニアになるには?学習ロードマップ6ステップと転職のコツ

    未経験からAIエンジニアになるための学習ロードマップを6ステップで解説。独学の進め方、ポートフォリオの作り方、転職活動を有利に進めるコツまで実践的に紹介します。

ManageAI

先行モニター企業 募集中

生成AIのコストを「部署別」に、請求書より先に。

先着5社限定・2026年11月末まで。初期費用0円・月額5万円(税別)で、正式版と同等の機能に加え、開発者と伴走者による導入支援を追加費用なしで提供します。プロンプト原文は一切取得しません。

株式会社カイダン × Harmonic Society株式会社の共同事業|読み取り専用キーの登録だけで導入できます