AI Sparkup

최신 AI 쉽게 깊게 따라잡기⚡

llama.cpp – 로컬 LLM 추론을 위한 경량 C++ 런타임

llama.cpp는 CPU와 GPU(CUDA·Metal·Vulkan 등)에서 GGUF 포맷 LLM을 직접 실행하는 오픈소스 C++ 추론 런타임이다. llama-server(OpenAI 호환 API), llama-cli(인터랙티브 챗), 내장 웹 UI를 포함하며 Hugging Face 캐시를 그대로 활용한다.

GitHub: ggml-org/llama.cpp | MIT 라이선스 | Hugging Face 생태계 통합

주요 특징

  • GGUF 포맷 지원: IQ2~BF16까지 전 범위의 양자화 수준 선택 가능
  • 멀티 플랫폼: Apple Silicon(Metal), NVIDIA CUDA, AMD ROCm, Vulkan, CPU
  • OpenAI 호환 API: llama-serverlocalhost:8080/v1/chat/completions 제공
  • Hugging Face 연동: -hf <repo>:<quant> 플래그로 자동 다운로드 및 캐싱
  • 채팅 템플릿 자동 적용: GGUF 메타데이터의 Jinja 템플릿을 그대로 사용

설치

macOS:

brew install llama.cpp

소스 빌드:

git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
cmake -B build
cmake --build build --config Release

기본 사용법

인터랙티브 챗:

llama-cli -hf unsloth/gemma-4-26B-A4B-it-GGUF:Q4_K_M -cnv

OpenAI 호환 API 서버:

llama-server -hf unsloth/gemma-4-26B-A4B-it-GGUF:Q4_K_M --ctx-size 0
# localhost:8080에서 서비스

Ollama와의 비교

항목llama.cppOllama
성능~1.5–1.8배 빠름기준
양자화 범위IQ2~BF16 전체Q4/Q8만
모델 관리HF 캐시(읽기 가능)해시 블롭 저장소
채팅 템플릿GGUF 내장 JinjaModelfile 별도
백그라운드 데몬없음항상 실행
신모델 지원HF GGUF 출시 즉시패키징 대기

관련 도구: llama-swap

llama-swapllama-server 앞에 위치하는 경량 Go 프록시로, 요청의 model 필드에 따라 서버를 자동으로 교체(hot-swap)하고 TTL 초과 시 자동 언로드한다. Ollama의 다중 모델 동작을 재현할 수 있다.

관련 문서



AI Sparkup 구독하기

최신 게시물 요약과 더 심층적인 정보를 이메일로 받아 보세요! (무료)