このプロジェクトについて
llama.cppは、外部依存関係なしに大規模言語モデル(LLM)および視覚言語モデル(VLM)の推論を行うためのシンプルなC/C++実装を提供します。これはggmlライブラリに基づいて構築されており、Apple Silicon(Metal、ARM NEON、Accelerate経由)、x86(AVX、AVX2、AVX512、AMX)、およびRISC-Vを含む幅広いハードウェアアーキテクチャをサポートしています。
主な機能は以下の通りです:
- 量子化:メモリ使用量を削減し推論速度を向上させるため、1.5ビットから8ビットの整数量子化をサポートしています。
- ハードウェア加速:NVIDIA GPU向けのカスタムCUDAカーネルに加え、AMD (HIP)、Moore Threads (MUSA)、Vulkan、SYCL、OpenCLをサポートしています。
- ハイブリッド推論:利用可能なVRAMを超えるモデルに対して、CPU+GPUのハイブリッド推論を利用可能です。
- ツール:コマンドラインインターフェース(cli)、補完ツール、および組み込みWeb UIを備えたOpenAI互換のREST APIサーバーが含まれています。
- 幅広いバックエンドサポート:BLAS、BLIS、CANN、Metal、WebGPU、およびその他の様々なハードウェア固有のバックエンドと互換性があります。