Llama.cpp

IT 위키
인공무능 (토론 | 기여)님의 2025년 6월 15일 (일) 09:38 판 (새 문서: '''llama.cpp'''는 Georgi Gerganov가 개발하고 현재 오픈소스 커뮤니티에서 유지·관리하는 C/C++ 기반 경량화 대형 언어 모델(LLM) 추론 엔진이다. Meta의 LLaMA 등 다양한 모델을 로컬 환경에서 CPU 또는 GPU로 실행할 수 있도록 설계되었다. ==개요== llama.cpp는 GGML 기반의 추론 엔진으로, 외부 라이브러리 없이도 다양한 플랫폼에서 고속으로 실행된다. Apple Silicon, x86, ARM 기반 CPU는...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

llama.cpp는 Georgi Gerganov가 개발하고 현재 오픈소스 커뮤니티에서 유지·관리하는 C/C++ 기반 경량화 대형 언어 모델(LLM) 추론 엔진이다. Meta의 LLaMA 등 다양한 모델을 로컬 환경에서 CPU 또는 GPU로 실행할 수 있도록 설계되었다.

1 개요

llama.cpp는 GGML 기반의 추론 엔진으로, 외부 라이브러리 없이도 다양한 플랫폼에서 고속으로 실행된다. Apple Silicon, x86, ARM 기반 CPU는 물론 CUDA, Metal, Vulkan, SYCL을 활용한 GPU 가속도 지원한다.[1]

2 주요 특징

  • 플랫폼 독립 실행: macOS, Windows, Linux, Android, WebAssembly 등 지원
  • 의존성 없음: 순수 C/C++ 기반으로 작성되어 외부 패키지 없이 빌드 가능
  • 양자화 지원: int4, int8 등 다양한 양자화 형식을 통한 경량 모델 추론
  • GGUF 포맷 사용: 텐서와 메타데이터를 통합한 단일 모델 파일 포맷
  • 멀티스레딩 및 메모리 최적화: 메모리 맵핑과 쓰레드 분산 처리로 고속 추론

3 설치 방법

3.1 macOS / Linux

git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
make

3.2 Windows

  • 사전 컴파일 바이너리 다운로드 또는 CMake로 직접 빌드

4 실행 예시

  • 모델 실행
./main -m models/llama3.gguf -p "Hello, world!"
  • 채팅 모드
./chat -m models/llama3.gguf

5 통합 및 활용

  • Python 연동: llama-cpp-python을 통해 Python에서 추론 가능
  • LangChain 지원: 로컬 LLM 백엔드로 통합 가능
  • 모델 변환: Hugging Face 모델을 GGUF로 변환하는 스크립트 제공
  • GUI 및 서버: Ollama, llama-rs, LocalAI 등과 연동 가능

6 장단점

6.1 장점

  • 빠른 로컬 추론: GPU 없이도 효율적 실행 가능
  • 다양한 하드웨어 지원 및 경량성
  • 활발한 커뮤니티와 생태계 확장성

6.2 단점

  • 일부 기능 제한: 최신 LLM API 기능 미지원
  • 초기 설정 요구: 모델 변환, 빌드 등 진입 장벽 존재

7 같이 보기

8 참고 문헌

  • Gerganov, G. (2023). llama.cpp GitHub 저장소.
  • Intel AI (2024). Run LLMs on Intel GPUs Using llama.cpp.
  • Codecademy (2024). How to Use llama.cpp.

9 각주

  1. llama.cpp GitHub 저장소. https://github.com/ggerganov/llama.cpp