「Llama.cpp」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) add en page link. |
Kusanaginoturugi (トーク | 投稿記録) →GPU 使用率の監視: リンクを修正 |
||
| 121行目: | 121行目: | ||
=== GPU 使用率の監視 === |
=== GPU 使用率の監視 === |
||
[[ |
[[画像処理装置#モニター]]を参照してください。 |
||
== トラブルシューティング == |
== トラブルシューティング == |
||
2026年5月4日 (月) 18:41時点における最新版
C/C++ による LLM 推論。
インストール
llama.cpp は AUR で利用できます:
- CPU 推論には llama.cppAUR を インストール してください。
- GPU 推論には llama.cpp-vulkanAUR を インストール してください。
- CUDA による推論には llama.cpp-cudaAUR を インストール してください。
- ROCm による推論には llama.cpp-hipAUR を インストール してください。
- llama.cpp-vulkanAUR をインストールする場合は、適切な Vulkan ドライバーがインストールされていることを確認してください。
- パッケージ llama.cpp-cudaAUR は 2025-12-22 以降 out-of-date としてフラグされています。
使用方法
主な実行プログラムは llama-cli と llama-server です。
llama-cli
llama-cli はコマンドライン実行プログラムです:
$ llama-cli -m model.gguf
llama-server
llama-server は組み込み WebUI 付きの API サーバーを起動します:
$ llama-server --host address --port port -m model.gguf
モデルの入手
llama.cpp は GGUF 形式のモデルを使用します。
Hugging Face からダウンロード
-hf フラグを使用して、Hugging Face からモデルをダウンロードします:
$ llama-cli -hf org/model
手動ダウンロード
wget または curl を使用してモデルを手動でダウンロードします:
$ wget -c model.gguf
ヒントとテクニック
モデルの量子化
量子化はモデルの精度を下げることで、メモリ使用量を削減します。
GGUF モデルでは、量子化レベルを示すために接尾辞が使用されます。一般的に、低い数値、例えば Q4 はメモリ使用量が少なくなりますが、高い数値、例えば Q8 と比べて品質が低下する可能性があります。
知識蒸留
知識蒸留は、大きなモデルの振る舞いに従うよう小さなモデルを訓練することで、大きなモデルを小さなモデルに圧縮します。
通常、GGUF モデルでは student-teacher-distill 表記を使用して知識蒸留を示します。ここで:
studentは小さいモデルを表します。teacherは大きいモデルを表します。
コンテキストサイズの指定
llama.cpp はデフォルトでモデルからコンテキストサイズを読み込み、コンテキストウィンドウ全体に対してメモリを割り当てます。
メモリ不足になる場合は、低いコンテキストサイズを指定してください。
$ llama-cli -c 32000 -m model.gguf
Key-value キャッシュの量子化
さらにメモリ効率を高めるには、key-value キャッシュを量子化できます。
$ llama-cli -ctk q8_0 -ctv q8_0 -m model.gguf
これは、低いコンテキストサイズと組み合わせることで、メモリ使用量を大幅に削減できます。
- keys に対する強い量子化は、品質を目に見えて低下させます。
- values に対する強い量子化は通常は比較的許容されますが、それでも劣化のリスクがあります。
エージェントシステム
llama-server は WebUI を実行しますが、同じエンドポイントは OpenAI 互換サーバーとしても動作します。opencode や qwen-code のようなコーディングエージェントで使用するよう設定できます。
また、最近の更新により、組み込みのエージェント機能が導入されています。
組み込みツール
ファイルシステム操作とシェルアクセス用の組み込みツールを有効にするには、次のように llama-server を起動します:
$ llama-server --tools all -m model.gguf
これは、十分に強力な推論モデルと組み合わせることで、ブラウザで動作する最小限のコーディングエージェントと見なすことができます。
すべてのやり取りは、llama-server を実行しているユーザーの権限でオペレーティングシステムに送信されることを十分に注意してください。組み込みツールを有効にした状態で、llama-server をネットワークに公開したり、root として実行したりしては絶対にいけません!
Model Context Protocol サーバー
その他のツール、例えば search や fetch は、それらのツールが MCP エンドポイントとして提供されている場合、WebUI に追加できます。
GPU 使用率の監視
画像処理装置#モニターを参照してください。
トラブルシューティング
MCP リクエストが CORS ポリシーによって拒否される
オンラインでホストされている MCP エンドポイントを WebUI で使用するには、MCP CORS プロキシを有効にします:
$ llama-server --webui-mcp-proxy -m model.gguf