llama.cpp:一個高效能的 C/C++ 推論引擎,可在多樣硬體上本地執行量化 LLM

llama.cpp:一個高效能的 C/C++ 推論引擎,可在多樣硬體上本地執行量化 LLM

它解決了什麼問題

llama.cpp 提供了一種在本地執行大型語言模型(LLM)的方式,設定簡單,且在各種硬體上皆能達到高效能,包含消費級的 CPU 與 GPU。它透過純 C/C++ 的實作,省去繁重的相依套件需求。

它如何運作

此專案以 C/C++ 實作 LLM 推論,並使用 ggml 函式庫來最佳化效能。它支援多種硬體後端(例如 Apple Silicon 的 Metal、NVIDIA 的 CUDA,以及一般 GPU 的 Vulkan),並採用整數量化(從 1.5 位元到 8 位元)以降低記憶體使用量並提升速度。它亦能進行 CPU+GPU 混合推論,讓模型大小超過可用 VRAM 時仍能執行。

目標使用者

想在自有硬體上本地執行 LLM 的開發者與 AI 愛好者——無論是 MacBook、NVIDIA GPU 或 RISC‑V 架構——皆可免除雲端服務或複雜安裝流程的限制。

重點特色

  • 廣泛的硬體支援:針對 Apple Silicon、x86(AVX/AMX)、RISC‑V、NVIDIA、AMD 與 Intel GPU 進行最佳化。
  • 量化技術:支援多種整數量化等級(1.5 位元至 8 位元),讓大型模型能在較小裝置上運行。
  • 豐富的模型相容性:相容大量純文字與多模態模型,包含 LLaMA、Mistral、Gemma 與 LLaVA 等。
  • 零相依:以純 C/C++ 撰寫,易於在不同平台上編譯與部署。
  • OpenAI 相容 API:提供伺服器模式(llama-server),可透過符合 OpenAI 格式的 REST API 進行呼叫。

摘要

一個純 C/C++ 的 LLM 推論實作,透過量化技術,使模型能在廣泛硬體上以高效能本地執行。

標題

llama.cpp:一個高效能的 C/C++ 推論引擎,可在多樣硬體上本地執行量化 LLM

Sources