본문 바로가기
나의 IT 기억

🤔 정보유출 걱정 끝! Ollama로 우리 회사만의 안전한 LLM 사용 + Open WebUI

by 浪畅 (Làng Chàng) 2025. 6. 3.

회사 폐쇄망에서 나만의 LLM

⚡ 시작하기 전에: 양자화(Quantization) 이해하기

🤔 양자화란? 쉽게 말하면 "AI 모델 다이어트"

양자화는 AI 모델을 더 작고 빠르게 만드는 압축 기술입니다. 마치 4K 영상을 1080p로 변환하는 것처럼, 품질은 조금 희생하지만 용량과 속도를 크게 개선할 수 있습니다.

📊 양자화 레벨별 비교 (실제 테스트 결과)

양자화 레벨 원본 대비 크기 품질 속도 추천 용도
원본 (FP16) 100% ⭐⭐⭐⭐⭐ 보통 최고 품질 필요시
Q8 ~60% ⭐⭐⭐⭐⭐ 빠름 품질+속도 균형
Q6_K ~50% ⭐⭐⭐⭐ 빠름 가장 실용적
Q4_K_M ~35% ⭐⭐⭐ 매우 빠름 일반 사용
Q2_K ~25% ⭐⭐ 초고속 실험용

🎯 내가 테스트해본 양자화 모델들

# 내 모델 리스트에서 양자화 모델 찾기
gemma3:27b-it-qat      # QAT = Quantization Aware Training
deepseek-r1:14b        # 대부분 Q4_K_M으로 압축됨
exaone3.5:latest       # Q6_K 수준의 최적화

🔥 실전 경험담: 양자화 vs 원본

Case 1: gemma3:27b vs gemma3:27b-it-qat

  • 원본 27b: 17GB, 느림, 완벽한 답변
  • QAT 버전: 18GB이지만 실제론 더 빠름, 답변 품질 95% 수준
  • 결론: QAT 버전이 실용적! ✅

Case 2: 메모리 부족한 PC에서

  • 32GB RAM PC: 원본 32b 모델 → "메모리 부족으로 뻗음" 😵
  • 같은 PC + Q4 양자화: 32b 모델도 쌩쌩! 🚀
  • 체감 성능: 답변 품질 80% 수준이지만 충분히 쓸만함

⚙️ 양자화 모델 선택 가이드

🎯 추천 조합 (실전 검증됨)

고품질 업무용 (메모리 넉넉할 때)

ollama pull deepseek-r1:32b        # 원본급 품질
ollama pull qwen2.5vl:32b          # 멀티모달 최고 성능

실용적 일상용 (메모리 아껴야 할 때)

ollama pull gemma3:27b-it-qat      # QAT 최적화
ollama pull exaone3.5:latest       # 이미 최적화됨

실험/학습용 (속도 중시)

ollama pull mistral:7b-instruct-q4_k_m    # 빠르고 가벼움
ollama pull llama3:8b-instruct-q6_k       # 품질과 속도 균형

💡 양자화 선택 꿀팁

  1. 처음 사용자: Q6_K 또는 QAT 버전부터 시작
  2. 메모리 부족: Q4_K_M 선택 (체감상 큰 차이 없음)
  3. 품질 중시: Q8 이상 (원본과 거의 동일)
  4. 속도 중시: Q4_K_S 또는 Q2_K

한마디로: 양자화 모델이 99% 상황에서 더 실용적! 🎯


📚 Ollama란?

Ollama는 로컬 PC에서 대형 언어 모델(LLM)을 쉽게 실행할 수 있게 해주는 오픈소스 도구입니다. 복잡한 설정이나 외부 의존성 없이 Llama, Mistral, Gemma 등 다양한 LLM 모델을 개인 컴퓨터에서 직접 실행할 수 있습니다.

주요 특징

  • 비용 절감: 클라우드 API 사용료 없이 무료로 LLM 사용
  • 프라이버시 보호: 로컬에서 실행되어 데이터가 외부로 전송되지 않음
  • 오프라인 사용: 인터넷 연결 없이도 모델 실행 가능
  • 다양한 모델 지원: Llama 3, Mistral, Gemma, CodeLlama 등

🔧 설치 방법

Windows 설치

  1. Ollama 공식 웹사이트에 접속
  2. Windows용 설치 파일 다운로드
  3. 다운로드한 설치 파일을 실행하여 설치 완료
  4. 설치 후 윈도우 시작 시 자동 실행됨 (작업 관리자 > 시작 프로그램에서 비활성화 가능)

macOS 설치

  1. 공식 웹사이트에서 macOS용 파일 다운로드
  2. 다운로드받은 Ollama.app 파일을 응용 프로그램 폴더로 이동

Linux 설치

리눅스에서는 다음 명령어로 설치할 수 있습니다:

curl -fsSL https://ollama.com/install.sh | sh

설치 확인

터미널에서 다음 명령어로 설치 확인:

ollama --version

🚀 기본 사용법

1. 모델 실행

ollama run 명령어로 원하는 모델을 실행할 수 있습니다. 해당 모델이 설치되어 있지 않다면 자동으로 다운로드 후 실행됩니다.

# Llama 3 모델 실행
ollama run llama3

# Mistral 모델 실행
ollama run mistral

# Gemma 2B 모델 실행
ollama run gemma2:2b

2. 모델 다운로드만 하기

모델 실행 없이 가중치만 다운로드하여 설치하려면 pull 명령어를 사용합니다:

ollama pull llama3
ollama pull mistral

3. 설치된 모델 목록 확인

ollama list

4. 모델 삭제

ollama rm 모델명

📋 주요 명령어

명령어 설명 예시
ollama run [모델명] 모델 실행 (없으면 자동 다운로드) ollama run llama3
ollama pull [모델명] 모델 다운로드만 실행 ollama pull mistral
ollama list 설치된 모델 목록 확인 ollama list
ollama rm [모델명] 모델 삭제 ollama rm llama3
ollama serve Ollama 서버 시작 ollama serve
ollama --help 도움말 확인 ollama --help

🤖 실전 검증된 모델 추천 (13개 모델 직접 써본 후기)

💾 내 하드디스크를 점령한 AI 모델들

6개월간 13개 모델을 설치하고 테스트한 결과, 총 220GB의 하드디스크가 AI 모델들로 가득 찼습니다 😅

ollama list
NAME                    ID              SIZE      MODIFIED     
deepseek-r1:32b         edba~~~7331d    19 GB     3 days ago      ⭐ 추천!
deepseek-r1:14b         c333~~~32bdb    9.0 GB    3 days ago      
qwen2.5vl:32b           3edc~~~2fe98    21 GB     5 days ago      ⭐ 추천!
gemma3:27b-it-qat       29eb~~~~eda3    18 GB     4 weeks ago     
qwen3:32b               e1c9~~~Ωc6eb    20 GB     4 weeks ago     
gemma3:12b              f403~~~c637d    8.1 GB    2 months ago    
exaone-deep:32b         a942~~~Ω5071    19 GB     2 months ago    
gemma3:27b              30dd~~~7fba6    17 GB     2 months ago    
qwq:latest              cc10~~~0e276    19 GB     2 months ago    ⭐ 추천!
r1-1776:latest          140e~~~zf21d    42 GB     3 months ago    (너무 크다...)
mistral:latest          f974~~~358d6    4.1 GB    3 months ago    
exaone3.5:latest        c7c4~~~1ca22    4.8 GB    3 months ago    ⭐ 추천!
qwen2.5-coder:latest    2b04~~~14337    4.7 GB    6 months ago   

🏆 6개월 테스트 결과, 진짜 쓸만한 모델 TOP 4

실제로 업무에서 매일 사용하는 모델들만 골라봤습니다:

🥇 deepseek-r1:32b (19GB) - "논리의 제왕"

  • 한마디로: GPT-4 수준의 추론 능력을 로컬에서!
  • 잘하는 것: 복잡한 수학 문제, 코딩, 논리적 추론
  • 실제 사용례: "이 버그 왜 생겼는지 분석해줘" → 정말 정확하게 찾아냄
  • 단점: 19GB라서 좀 무겁긴 함

🥈 qwq:latest (19GB) - "생각하는 AI"

  • 한마디로: "음... 잠깐만, 다시 생각해보니..." 하면서 정말 사고하는 느낌
  • 잘하는 것: 단계별 추론, 복잡한 문제 해결, 창의적 사고
  • 실제 사용례: 비즈니스 전략 수립, 복잡한 분석 작업
  • 특징: 답변이 길지만 퀄리티가 정말 좋음

🥉 exaone3.5:latest (4.8GB) - "한국어 마스터"

  • 한마디로: 가볍고 빠른데 한국어가 네이티브급
  • 잘하는 것: 한국어 자연스러운 대화, 빠른 응답, 일상 업무
  • 실제 사용례: 메일 작성, 문서 번역, 간단한 질의응답
  • 최고 장점: 4.8GB로 가벼워서 항상 켜둘 수 있음

🏅 qwen2.5vl:32b (21GB) - "눈과 뇌를 모두 가진 AI"

  • 한마디로: 이미지 보고 분석하는 능력이 정말 뛰어남
  • 잘하는 것: 차트 분석, 스크린샷 설명, 이미지 속 텍스트 읽기
  • 실제 사용례: "이 그래프 해석해줘", "이 에러 스크린샷 봐줘"
  • 놀라운 점: 복잡한 도표도 정확하게 이해함

💻 내 컴퓨터 사양별 모델 선택 가이드 (현실 버전)

🖥️ 일반 PC/노트북 (8-16GB RAM)

  • 추천: exaone3.5:latest, mistral:latest
  • 현실: "큰 모델 돌리면 컴퓨터가 뻗어요..." 😵
  • : 작은 모델도 충분히 쓸만함!

💪 고사양 PC (32GB+ RAM, 좋은 CPU)

  • 추천: deepseek-r1:14b, gemma3:12b, qwen2.5-coder
  • 현실: "이 정도면 업무용으로 완벽!"
  • 경험담: 16GB로도 deepseek-r1:14b는 돌아감 (살짝 느리지만)

🚀 괴물 PC (64GB+ RAM, RTX 4090 등)

  • 추천: deepseek-r1:32b, qwq:latest, qwen2.5vl:32b
  • 현실: "여러 모델 동시에 돌려도 여유롭다"
  • 주의: 전기세 폭탄 주의 ⚡

🏢 서버/워크스테이션 (128GB+ RAM)

  • 추천: r1-1776:latest (42GB) 같은 거대 모델도 OK
  • 현실: "이제 진짜 GPT-4 안 부럽다"
  • 경험: 42GB 모델은 정말 다른 차원의 성능

🎯 실전 꿀팁: 나만의 모델 조합법

"스몰 + 빅" 전략 (가장 효율적!)

  1. 상시 대기: exaone3.5 (4.8GB) - 항상 켜두고 빠른 작업
  2. 필요시 호출: deepseek-r1:32b (19GB) - 복잡한 작업만
  3. 특수 용도: qwen2.5vl (21GB) - 이미지 분석할 때만

결과: 메모리도 아끼고 성능도 최적화! 💡


더 많은 모델 찾기: ollama.ai/library 에서 500+ 모델 확인 가능

💡 실사용 예시

계층형 모델 운영 실전 예시

1단계: 작은 모델로 분류

ollama run exaone3.5:latest
>>> 이 문서를 요약해주고, 복잡한 분석이 필요한지 판단해줘.

# 모델이 간단한 요약 + 복잡도 판단을 해줌
# 복잡한 분석이 필요하다면 → 2단계로

2단계: 고급 모델로 심화 분석

ollama run deepseek-r1:32b
>>> 앞서 받은 문서에 대해 시장 동향 분석과 투자 전략을 수립해줘.

# 깊이 있는 분석과 전략 수립

실제 워크플로우

  1. exaone3.5 → 한국어 질문 분류, 간단한 번역
  2. qwq → 논리적 추론이 필요한 복잡한 문제
  3. deepseek-r1:32b → 코딩, 수학, 복잡한 분석
  4. qwen2.5vl:32b → 이미지 분석, 차트 해석

성능 모니터링

# 성능 확인하며 실행
ollama run deepseek-r1:32b --verbose "복잡한 분석 요청"

# 출력 예시:
# total duration: 15.2s        # 전체 실행시간
# eval rate: 45.3 tokens/s     # 답변 생성 속도

🐍 Python 연동

Ollama는 Python 라이브러리와도 통합되어 있어, 코드 내에서 모델을 호출할 수 있습니다:

설치

pip install ollama

사용 예시

import ollama

# 모델에게 질문하기
response = ollama.generate(
    model='llama3',
    prompt='머신러닝의 기본 개념을 설명해줘'
)
print(response['response'])

# 스트리밍 응답
for chunk in ollama.generate(model='llama3', prompt='파이썬이란?', stream=True):
    print(chunk['response'], end='')

🌐 Web UI 사용하기

Ollama는 Web-UI도 지원합니다. ChatGPT와 유사한 환경으로 사용할 수 있습니다.

Open WebUI 설치

# Docker를 사용한 설치
docker run -d --network=host -v open-webui:/app/backend/data \
  --name open-webui --restart always ghcr.io/open-webui/open-webui:main

설치 후 http://localhost:8080에서 웹 인터페이스 사용 가능

🔧 고급 설정

모델 저장 경로 변경

원래 모델은 사용자명/.ollama/models에 저장됩니다. 이를 변경할 수 있습니다:

Windows에서 환경변수 설정:

set OLLAMA_MODELS=D:\ollama\models

API 서버 모드

# API 서버 시작
ollama serve

# REST API 사용 예시
curl http://localhost:11434/api/generate -d '{
  "model": "llama3",
  "prompt": "안녕하세요!"
}'

💾 시스템 요구사항

최소 요구사항

  • RAM: 8GB 이상 (작은 모델용)
  • 저장공간: 모델당 2-70GB
  • CPU: 현대적인 프로세서 (Intel/AMD)

권장 사양

  • RAM: 16GB 이상
  • GPU: NVIDIA GPU (CUDA 지원) - 선택사항
  • 저장공간: SSD 권장

모델별 메모리 요구사항

  • 2B 모델: ~3GB RAM
  • 7B 모델: ~8GB RAM
  • 13B 모델: ~16GB RAM
  • 70B 모델: ~80GB RAM

🎯 실전 활용 전략

💡 현실적인 LLM 사용법: 계층형 모델 운영

작은 모델 + 고급 모델 조합이 가장 효율적인 방법입니다:

1단계: 작은 모델로 에이전트 분류

  • exaone3.5:latest (4.8GB) 또는 mistral:latest (4.1GB) 사용
  • 사용자 요청을 카테고리별로 분류
  • 간단한 질문은 바로 답변
  • 복잡한 요청은 고급 모델로 라우팅
# 빠른 분류 및 간단한 작업용
ollama run exaone3.5:latest

2단계: 고급 모델로 심화 분석

복잡한 작업은 다음 추천 모델들 사용:

  • deepseek-r1:32b: 복잡한 추론, 문제 해결
  • qwq:latest: 논리적 사고, 고품질 답변
  • qwen2.5vl:32b: 이미지 분석, 멀티모달 작업
# 복잡한 분석 작업용
ollama run deepseek-r1:32b

🔄 단계별 워크플로우

  1. 1차 필터링: 작은 모델로 요청 분류
  2. 적응형 라우팅: 복잡도에 따라 적절한 모델 선택
  3. 심화 처리: 고급 모델로 정밀 분석
  4. 결과 통합: 최종 답변 생성

🏢 Enterprise 활용 (예정)

  • n8n 워크플로우 자동화: 모델 체이닝 자동화
  • MCP(Model Context Protocol) 연동: 멀티모델 컨텍스트 관리
  • 내부망 구축: 보안이 중요한 환경에서의 완전 격리 운영

다음 가이드 예고: n8n과 MCP 연동을 통한 내부망 LLM 구축 방법을 상세히 다룰 예정입니다.

🔍 문제 해결

자주 발생하는 문제

1. 메모리 부족 오류

  • 더 작은 모델 사용 (2B, 7B)
  • 브라우저 및 불필요한 프로그램 종료

2. 모델 다운로드 실패

  • 인터넷 연결 확인
  • 충분한 저장 공간 확보

3. 실행 속도 느림

  • GPU 가속 활성화
  • 시스템 메모리 확인

📚 추가 리소스


🚀 실전 운영 팁

효율적인 모델 관리

  • 작은 모델 상시 실행: exaone3.5 같은 가벼운 모델은 항상 띄워두기
  • 고급 모델 온디맨드: 필요할 때만 deepseek-r1:32b 같은 큰 모델 실행
  • 메모리 관리: ollama rm 명령으로 불필요한 모델 정리

추천 모델 조합

  1. 경량 + 한국어: exaone3.5:latest (4.8GB)
  2. 추론 전문: deepseek-r1:32b (19GB)
  3. 논리적 사고: qwq:latest (19GB)
  4. 멀티모달: qwen2.5vl:32b (21GB)

향후 발전 방향

  • n8n 워크플로우: 모델 체이닝 자동화로 더 스마트한 AI 파이프라인 구축
  • MCP 연동: 여러 모델 간 컨텍스트 공유로 일관성 있는 답변
  • 내부망 구축: 완전 격리된 환경에서 기업용 AI 서비스 운영

다음편 예고: 실제 n8n + MCP + Ollama 연동을 통한 Enterprise AI 구축 가이드를 공유할 예정입니다!