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 등).

시작하기

  1. 설치 – 패키지 매니저(brew, nix, winget, conda‑forge)를 사용하거나 릴리즈 페이지에서 사전 빌드된 바이너리를 받아, 제공된 Docker 이미지를 실행하거나 소스에서 직접 빌드합니다(docs/install.mddocs/build.md 참고).
  2. 모델 얻기 – Hugging Face에서 GGUF 모델을 다운로드(llama-cli -hf <repo>/<model>-GGUF)하거나 ggify 같은 도구로 자체 PyTorch 체크포인트를 변환합니다.
  3. 프롬프트 실행
    llama-cli -m my_model.gguf "Explain quantum computing in one sentence"
    
  4. 서버 실행(OpenAI 스타일 클라이언트와 호환):
    llama-server -hf ggml-org/gemma-3-1b-it-GGUF
    
    어떤 OpenAI 클라이언트 라이브러리든 프런트엔드로 사용할 수 있습니다.

왜 중요한가

  • 무거운 프레임워크 없이도 개인 및 오프라인 환경에서 LLM을 사용할 수 있게 합니다.
  • 하드웨어 장벽을 낮춥니다: 공격적인 양자화를 통해 일반 CPU에서도 4‑7 B 파라미터 모델을 실행할 수 있습니다.
  • GGML 생태계의 레퍼런스 구현으로서, 많은 하위 프로젝트(바인딩, UI 앱, 클라우드‑네이티브 LLMOps 플랫폼 등)를 견인합니다.

리소스

  • 문서 – 설치, 빌드 옵션, 백엔드 세부 사항, 멀티모달 지원, 모델 추가 가이드.
  • 커뮤니티 – 새로운 기능, 패키징, WebUI, 협업(NVIDIA MXFP4 지원 등)에 대한 토론.
  • 바인딩 및 UI 목록llama.cpp를 기반으로 하는 언어 바인딩 및 사용자 인터페이스의 선별 목록.

위의 모든 정보는 저장소의 README에서 직접 가져온 것입니다.