Llama.cpp 이제 비전 기능 지원 (멀티모달 입력)
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
인공지능, 머신러닝
대상자
- *AI 개발자 및 연구자, 멀티모달 모델 사용자**
- 난이도: 중급 이상 (모델 설정, 양자화, GPU 오프로딩 이해 필요)
핵심 요약
- Llama.cpp는 libmtmd를 통해 멀티모달 입력(비전 포함) 지원
- Gemma 3, Pixtral, Qwen 2 VL 등 주요 모델과 호환 가능
- GPU 오프로딩 기본값,
--no-mmproj-offload
로 비활성화 가능
섹션별 세부 요약
- 멀티모달 기능 개요
llama-mtmd-cli
또는llama-server
로 OpenAI 호환/chat/completions
API 사용 가능- Gemma 3, SmolVLM, Pixtral, Qwen 2/2.5 VL 등 모델에서 즉시 멀티모달 기능 활용 가능
- Q4_K_M 양자화 기본 제공, -c 8192 옵션으로 컨텍스트 윈도우 확장 가능
- 실행 방식 및 설정
- -hf 옵션: 지원 모델 기반 실행,
--no-mmproj
로 멀티모달 비활성화 - -m +
--mmproj
: 텍스트/멀티모달 프로젝터 모델 별도 지정 - GPU 오프로딩 기본값,
--no-mmproj-offload
로 CPU 실행 가능
- 성능 및 사용 사례
- MBP M1 64GB에서
ggml-org/gemma-3-4b-it-GGUF
모델 사용 시:
- 프롬프트 처리 속도: 25t/s, 토큰 생성 속도: 63t/s
- 전체 이미지 처리 시간: 15초 (이미지 크기와 무관)
- SmolVLM 2.2B 모델: 실시간 비디오 감시 시스템에 적합
- 모델 및 설치 관련
- 지원 모델 예시:
- Gemma 3: 4B, 12B, 27B
- Qwen 2.5 VL: 3B, 7B, 32B, 72B
- Mistral Small 3.1 24B (IQ2_M 양자화)
- Homebrew 설치:
brew install llama.cpp
로llama-mtmd-cli
자동 포함
결론
- *Llama.cpp의 멀티모달 기능은 비전 처리를 위한 실시간 응용 가능하며, Homebrew 설치 및
--mmproj
옵션 활용으로 간단히 적용 가능. Gemma 3 4B 모델은 기본적인 OCR 및 맥락 추론 기능을 제공하며, Metal 백엔드**에서는-ngl -1
옵션 생략 가능.