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 등).
시작하기
- 설치 – 패키지 매니저(
brew,nix,winget,conda‑forge)를 사용하거나 릴리즈 페이지에서 사전 빌드된 바이너리를 받아, 제공된 Docker 이미지를 실행하거나 소스에서 직접 빌드합니다(docs/install.md와docs/build.md참고). - 모델 얻기 – Hugging Face에서 GGUF 모델을 다운로드(
llama-cli -hf <repo>/<model>-GGUF)하거나ggify같은 도구로 자체 PyTorch 체크포인트를 변환합니다. - 프롬프트 실행
llama-cli -m my_model.gguf "Explain quantum computing in one sentence" - 서버 실행(OpenAI 스타일 클라이언트와 호환):
어떤 OpenAI 클라이언트 라이브러리든 프런트엔드로 사용할 수 있습니다.llama-server -hf ggml-org/gemma-3-1b-it-GGUF
왜 중요한가
- 무거운 프레임워크 없이도 개인 및 오프라인 환경에서 LLM을 사용할 수 있게 합니다.
- 하드웨어 장벽을 낮춥니다: 공격적인 양자화를 통해 일반 CPU에서도 4‑7 B 파라미터 모델을 실행할 수 있습니다.
- GGML 생태계의 레퍼런스 구현으로서, 많은 하위 프로젝트(바인딩, UI 앱, 클라우드‑네이티브 LLMOps 플랫폼 등)를 견인합니다.
리소스
- 문서 – 설치, 빌드 옵션, 백엔드 세부 사항, 멀티모달 지원, 모델 추가 가이드.
- 커뮤니티 – 새로운 기능, 패키징, WebUI, 협업(NVIDIA MXFP4 지원 등)에 대한 토론.
- 바인딩 및 UI 목록 –
llama.cpp를 기반으로 하는 언어 바인딩 및 사용자 인터페이스의 선별 목록.
위의 모든 정보는 저장소의 README에서 직접 가져온 것입니다.