GGUF 포맷
IT 위키
인공무능 (토론 | 기여)님의 2025년 10월 8일 (수) 03:49 판 (새 문서: '''GGUF'''(Generic GPT Unified Format)은 대형 언어 모델(LLM)의 텐서와 메타데이터를 통합 저장하는 바이너리 '''모델 포맷'''으로, llama.cpp 기반의 로컬 추론 환경에서 사용된다. 이 포맷은 이전 GGML 포맷의 한계를 보완하여, 다양한 양자화 형식과 모델 관련 정보를 함께 포함할 수 있도록 설계되었다. ==개요== GGUF는 General Graphical Model Library(GGML) 기반의 추론 시스템을 위해 만...)
GGUF(Generic GPT Unified Format)은 대형 언어 모델(LLM)의 텐서와 메타데이터를 통합 저장하는 바이너리 모델 포맷으로, llama.cpp 기반의 로컬 추론 환경에서 사용된다. 이 포맷은 이전 GGML 포맷의 한계를 보완하여, 다양한 양자화 형식과 모델 관련 정보를 함께 포함할 수 있도록 설계되었다.
개요
GGUF는 General Graphical Model Library(GGML) 기반의 추론 시스템을 위해 만들어진 통합 모델 저장 포맷이다. 단일 포맷 내에 모델 가중치(텐서), 아키텍처 정보, 토크나이저 설정, 정밀도, 최대 컨텍스트 길이 등의 메타데이터를 포함한다. 2023년부터 llama.cpp 커뮤니티에 의해 채택되었으며, 다양한 로컬 추론 프레임워크에서 활용되고 있다.
구조
GGUF 포맷은 다음과 같은 구성 요소를 포함한다:
- 모델 텐서(weight) 데이터
- 메타데이터: 모델 아키텍처, 양자화 형식, 토크나이저 사양 등
- 정밀도 정보: float32, float16, int8, int4 등 다양한 양자화 지원
- 키-값 기반의 설명 필드
특징
- 단일 포맷 구조: 모델 정보와 가중치를 하나로 통합하여 로딩 속도 향상
- 다양한 양자화 지원: 저정밀 양자화를 통한 모델 경량화 가능
- 확장된 메타데이터: 구조, 학습 파라미터, 토크나이저 등 세부 정보 포함
- 하위 호환성: 기존 GGML 모델을 GGUF 포맷으로 점진적 이전 가능
장점
- 빠른 추론: 메모리 매핑과 로딩 최적화로 실행 속도 향상
- 관리 용이성: 모델 관련 정보가 하나의 포맷에 통합되어 관리가 단순함
- 플랫폼 호환성: CPU, GPU, Apple Silicon 등 다양한 환경 지원
- 양자화 유연성: int8, int4 등 리소스 절약을 위한 다양한 정밀도 선택 가능
단점
- 도구 호환성 제한: llama.cpp, Ollama 등 일부 환경에서만 지원
- 보안 취약점 가능성: 과거 메모리 파싱 오류 사례 존재
- 표준화 미흡: 타 프레임워크와의 직접적 호환성은 아직 제한적
활용 예
- llama.cpp, llama-rs 등에서 로컬 GPT 모델 추론 시 GGUF 포맷 사용
- Hugging Face Hub에서 GGUF 포맷 모델을 다운로드 후 터미널 기반 실행
- Mistral, LLaMA, Phi-2 등 주요 모델들이 GGUF 포맷으로 공개됨
같이 보기
참고 문헌
- Georgi Gerganov. (2023). llama.cpp 프로젝트 문서
- GGUF GitHub 저장소 문서
- Ollie, P. (2024). Quantized LLM inference on edge devices.