OpenAI API처럼 외부 서버에 요청을 보내는 것이 아니라, 내 서버 안에서 LLM을 직접 실행한다.
구분
클라우드 LLM (OpenAI 등)
On-Premise LLM
실행 위치
외부 서버 (OpenAI 서버)
내 서버 / 로컬
인터넷 연결
필수
불필요
데이터 보안
외부로 데이터 전송됨
외부로 나가지 않음
비용
토큰당 과금
서버 비용만 발생
성능
높음
서버 사양에 따라 다름
사용 상황
일반적인 AI 서비스
보안이 중요한 환경, 오프라인 환경
2. On-Premise LLM을 쓰는 이유
보안 : 민감한 데이터(의료, 금융, 법률 등)를 외부로 보내지 않아야 할 때
비용 : API 호출 비용 없이 자체 서버에서 무제한 사용 가능
오프라인 : 인터넷이 없는 폐쇄망 환경에서도 사용 가능
커스터마이징 : 모델을 직접 파인튜닝하거나 수정 가능
3. 주요 On-Premise LLM 모델
모델
제공사
특징
Llama
Meta
가장 널리 사용되는 오픈소스 모델
Mistral
Mistral AI
경량화되어 성능 대비 빠름
Gemma
Google
경량 모델. 로컬 실행에 적합
Phi
Microsoft
초경량 모델. 저사양 환경에 적합
Qwen
Alibaba
한국어 등 다국어 지원 강점
DeepSeek
DeepSeek
코딩 특화 모델
CodeLlama
Meta
코드 생성 특화
4. Ollama란?
On-Premise LLM을 쉽게 실행할 수 있게 해주는 툴
복잡한 설정 없이 명령어 하나로 다양한 LLM 모델을 로컬에서 실행할 수 있다.
OpenAI API와 호환되는 REST API를 제공하므로 기존 코드를 거의 수정하지 않고 교체 가능하다.
개발자 → Ollama → LLM 모델 (Llama, Mistral 등)
↑
REST API 제공 (localhost:11434)
5. Docker로 Ollama 실행
1) Ollama 컨테이너 실행
# Ollama 컨테이너 실행
docker run -d \\
--name ollama \\
-p 11434:11434 \\
-v ollama:/root/.ollama \\
ollama/ollama
옵션
설명
-d
백그라운드 실행
--name ollama
컨테이너 이름 지정
-p 11434:11434
포트 연결 (호스트:컨테이너)
-v ollama:/root/.ollama
모델 데이터 볼륨 마운트 (재시작해도 모델 유지)
2) 모델 다운로드
# 컨테이너 안에서 모델 다운로드
docker exec -it ollama ollama pull llama3.2
3) 실행 확인
# 설치된 모델 목록 확인
docker exec -it ollama ollama list
# API 직접 호출 테스트
curl <http://localhost:11434/api/generate> -d '{
"model": "llama3.2",
"prompt": "안녕하세요"
}'