AI/ML

로컬 LLM 설치 가이드 2026 — Ollama 설치부터 모델 고르기까지 (GTX 1080 Ti 실측)

Ollama 0.40.5 설치, 첫 모델 실행, VRAM별 모델 고르기를 GTX 1080 Ti 두 장에서 직접 재며 정리했습니다. 모델 8개의 속도·실제 VRAM, 정답이 있는 한국어 문제 10개 채점, 처음 쓰는 사람이 걸리는 함정 4가지.

·17 min read
#Ollama#로컬LLM#Ollama 설치#로컬 LLM 추천#GTX 1080 Ti#Gemma 4#Qwen3.5#gpt-oss#EXAONE#셀프호스팅

2026년 2월에 쓴 글을 10월 17일에 새로 썼습니다. 예전 판의 추천 모델(Llama 3.2, Gemma 2, Qwen2.5)은 이제 오래됐고, "필요 RAM" 표는 직접 잰 숫자가 아니었습니다. 이번 판의 숫자는 전부 제 서버에서 직접 잰 값입니다.

요약

  • 설치는 명령 한 줄이면 됩니다. 다만 Ollama가 오래된 버전이면 최신 모델을 받지 못하니 먼저 업데이트하세요. 제 서버의 0.30.2에서는 gemma4:12b가 "newer version of Ollama" 오류로 받아지지 않았습니다.
  • 그래픽카드 메모리(VRAM)가 모델을 정합니다. 11GB 카드 한 장(GTX 1080 Ti)에서는 gemma4:12b가 초당 38토큰으로 돌았고, 한국어 10문제 중 8개를 맞혔습니다.
  • 예전에 많이 추천하던 llama3.1:8b는 한국어 10문제 중 4개만 맞혔습니다. 지금 새로 시작한다면 Gemma 4나 Qwen3.5 계열을 추천합니다.

측정 환경

항목내용
GPUNVIDIA GTX 1080 Ti 11GB × 2 (2017년 카드)
시스템Windows 11 Pro + WSL2 Ubuntu (WSL에 RAM 64GB 할당)
Ollama0.40.5 (2026-10-14 릴리스)
측정 방법같은 한국어 질문으로 256토큰 생성, 두 번째 실행 값(모델이 이미 올라간 상태), num_ctx 8192, temperature 0
생각(추론)껐음(think=false). gpt-oss는 끌 수 없어 가장 낮은 low
VRAM모델을 올리기 전후 nvidia-smi 사용량 차이

최신 그래픽카드라면 아래 속도보다 훨씬 빠릅니다. 대신 "이 정도 메모리면 이 정도 모델" 관계는 그대로 참고하실 수 있습니다.

1. Ollama 설치

공식 README에 있는 방법입니다.

Windows (PowerShell):

irm https://ollama.com/install.ps1 | iex

설치 파일을 직접 받아도 됩니다: OllamaSetup.exe

macOS / Linux:

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

macOS는 Ollama.dmg를 받아 설치해도 됩니다.

설치 확인:

ollama --version
ollama version is 0.40.5

함정 1: 오래된 Ollama는 새 모델을 못 받습니다. 제 서버에 깔려 있던 0.30.2로 ollama pull gemma4:12b를 하면 이렇게 나왔습니다.

Error: pull model manifest: 412: The model you are attempting to pull requires a newer version of Ollama.

이 오류가 나오면 위 설치 명령을 다시 실행해서 업데이트하면 됩니다.

2. 첫 모델 실행

ollama run qwen3.5:4b

처음 한 번은 모델 파일(3.3GB)을 내려받고, 그다음부터는 바로 >>> 입력줄이 나옵니다. 여기에 질문을 쓰면 됩니다. 나갈 때는 /bye를 입력합니다.

자주 쓰는 명령:

ollama list              # 받아 둔 모델 목록
ollama ps                # 지금 메모리에 올라가 있는 모델
ollama stop qwen3.5:4b   # 메모리에서 내리기
ollama rm qwen3.5:4b     # 파일까지 지우기
ollama run qwen3.5:9b --think=false   # 생각(추론) 과정 없이 바로 답하게
ollama run qwen3.5:4b --verbose       # 답 끝에 속도(tokens/s) 표시

Qwen3.5, Qwen3.6, gpt-oss 같은 모델은 기본으로 답하기 전에 "생각"하는 과정을 거칩니다(Gemma 4는 기본이 꺼짐). 간단한 질문에 답이 늦다면 --think=false를 붙여 보세요. gpt-oss는 think=false로 보내도 생각 과정이 나왔고(153자), --think=low로 줄이면 11자로 짧아졌습니다.

3. 어떤 모델을 받을까: 8개 실측

모델받는 용량실제 VRAM생성 속도한국어 10문제비고
qwen3.5:4b3.3GB3.9GiB46 토큰/초6가장 작음
gemma4:e4b6.6GB4.8GiB60 토큰/초7받는 파일보다 VRAM을 덜 씀*
llama3.1:8b4.9GB5.7GiB41 토큰/초4예전 추천 모델
exaone3.5:7.8b4.8GB5.6GiB41 토큰/초7LG, 비상업 라이선스
qwen3.5:9b6.6GB6.5GiB33 토큰/초7
gemma4:12b8.0GB8.6GiB38 토큰/초811~12GB 카드 추천
gpt-oss:20b13GB12.7GiB (두 장)44 토큰/초9생각 과정이 꺼지지 않음
qwen3.6:27b17GB16.0GiB (두 장) + CPU 일부10 토큰/초811GB 두 장으로는 부족
  • 실제 VRAM은 num_ctx 8192 기준입니다. 컨텍스트를 늘리면 더 듭니다(함정 3). 두 장에 나뉜 모델은 두 장의 합입니다.
  • *gemma4:e4b는 받는 파일(6.6GB)보다 GPU 사용량(4.8GiB)이 작았습니다. 일부가 GPU 밖에 있는지는 확인하지 못했습니다(ollama ps가 이 모델의 크기를 제대로 보여 주지 않아서, 함정 2).
  • 생성 속도는 1080 Ti 기준이고, 한 번 잰 값이라 ±10% 정도는 흔들립니다.
  • gpt-oss:20b가 20B인데도 빠른 이유는 MoE 구조라서입니다. 토큰마다 모델의 일부만 계산합니다.
  • qwen3.6:27b는 두 장을 다 써도 약 10%가 CPU로 넘어갔습니다(num_ctx 8192 기준. 기본 4096에서는 ollama ps로 7%). 원래도 큰 모델이라 1080 Ti에서는 느린데, CPU로 넘어간 부분이 더 깎아 10토큰/초가 나왔습니다. 같은 모델이 RTX 3090(24GB) 한 장에서는 num_ctx 8192로 100% GPU에 올라가 35.9토큰/초였습니다(측정 글).

VRAM별로 고르면

그래픽카드 메모리추천
4GB (또는 그래픽카드 없는 노트북)qwen3.5:4b (빠듯하면 num_ctx를 4096으로)
6~8GBgemma4:e4b, qwen3.5:9b
11~12GBgemma4:12b
16GB 이상gpt-oss:20b (11GB 두 장 합 12.7GiB로 잰 값에서 추정)
24GBqwen3.6:27b (num_ctx 8192 정도로 제한)

그래픽카드가 없어도 CPU로 돌아는 갑니다. 보통 GPU보다 몇 배 느린데, 이번에는 CPU만으로는 재지 않았습니다.

한국어 10문제 채점

남의 후기만 보고 "한국어 잘하는 모델"을 고르기는 어렵습니다. 그래서 정답이 하나뿐인 짧은 문제 10개를 만들어 모델마다 똑같이 물었습니다. 계산(사과 7개 값), 요일 계산, 맞춤법, 높임말, 속담, 전화번호 뽑기, 지리(면적이 가장 넓은 도), 띄어쓰기, 반의어, 키 순서 추론입니다. 문제마다 "답만 쓰라"는 지시를 넣었고, 따옴표·괄호·마침표·쉼표·굵게 표시(**) 같은 기호와 "입니다"를 지운 뒤 답의 첫 줄이 정답과 같을 때만 맞힌 것으로 셌습니다.

눈에 띈 점:

  • 한 모델만 맞힌 문제가 있었습니다. "왠지 기분이 않 좋다"에서 틀린 단어를 고쳐 쓰라는 문제는 gemma4:12b만 "안" 한 단어로 답했습니다. qwen3.5:4b는 문장을 통째로 고쳐 써서 내용은 맞았지만 형식에서 틀렸습니다. 나머지 6개는 틀린 단어 "않"을 그대로 쓰거나(3개) 다른 말로 바꿨습니다(3개).
  • "면적이 가장 넓은 도"(경상북도)는 8개 중 2개만 맞혔습니다(exaone3.5:7.8b, gpt-oss:20b). 강원도(강원특별자치도)·경기도·경상남도·제주도라는 답이 나왔고, 가장 큰 qwen3.6:27b도 경기도라고 했습니다. 모델 크기와 상관없이 지식 문제는 그럴듯하게 틀립니다.
  • llama3.1:8b는 사과값 문제에 "170", 요일 문제에 "일요일", 높임말 문제에 "먹여"라고 답했습니다.
  • 채점이 엄격한 편입니다. gemma4:12b는 높임말 문제에 "드시다 (또는 잡수시다)"라고 써서 틀린 것으로 셌는데, 내용은 맞습니다. 형식은 무시하고 내용만 보면 gemma4:12b 9개, gpt-oss:20b 9개, gemma4:e4b 8개, qwen3.5:4b 7개이고 나머지는 그대로입니다.

10문제는 아주 작은 시험입니다. 12문제 차이는 모델 실력 차이라고 보기 어렵습니다. 4개와 89개 정도의 차이만 의미 있게 보시면 됩니다.

EXAONE 3.5는 라이선스가 "EXAONE AI Model License Agreement 1.1 - NC"(비상업)입니다. 회사 업무나 서비스에 쓰려면 라이선스를 먼저 확인하세요.

4. 처음 쓰는 사람이 걸리는 함정

함정 2: ollama ps의 크기 숫자를 그대로 믿지 마세요. gemma4:12b를 올리면 ollama ps는 1.1GB라고 표시했습니다. nvidia-smi로 보면 실제로는 8.6GiB를 쓰고 있었습니다(gemma4:e4b도 0.5GB로 표시). 다른 모델은 nvidia-smi 쪽이 0.1~1.4GB 더 많았습니다. GPU를 쓰기 시작할 때 드는 기본 사용량까지 들어간 차이로 보입니다. 메모리가 빠듯하다면 nvidia-smi(Windows는 작업 관리자 → 성능 → GPU)로 확인하세요.

함정 3: 기본 컨텍스트 길이는 그래픽카드에 따라 달라집니다. 이 서버(11GB 카드)에서 0.40.5는 아무 설정 없이 모델을 올리면 컨텍스트를 4096토큰으로 잡았습니다(ollama ps의 CONTEXT 열). 24GB 카드에서는 훨씬 길게 잡혀서 오히려 VRAM이 넘친 적이 있습니다(아래 링크 글). 긴 문서를 붙여 넣으면 앞부분이 잘릴 수 있습니다. 늘리면 VRAM이 더 들고, 넘치면 CPU로 밀려나 크게 느려집니다. 얼마나 느려지는지는 num_ctx 함정 실측 글에 정리해 두었습니다.

# 대화 중에 바꾸기
/set parameter num_ctx 8192

함정 4: 모델이 GPU에 다 안 올라가면 속도가 급격히 떨어집니다. ollama ps의 PROCESSOR 열이 100% GPU가 아니면(예: 7%/93% CPU/GPU) 일부가 CPU에서 돌고 있다는 뜻입니다. 위 표의 qwen3.6:27b가 이 상태였습니다. 이럴 때는 한 단계 작은 모델이 더 쓸모 있을 때가 많습니다.

5. 다른 프로그램에서 쓰기: API

Ollama가 켜져 있으면 localhost:11434에 API가 열립니다. 아래 두 가지와 /api/generate를 이 서버에서 실제로 호출해 모두 "서울"이라는 답을 받았습니다(측정용 서버는 11435번 포트로 띄웠습니다).

# Ollama 방식
curl http://localhost:11434/api/chat -d '{
  "model": "qwen3.5:4b",
  "messages": [{"role": "user", "content": "한국의 수도는? 한 단어로."}],
  "stream": false,
  "think": false
}'
# OpenAI 호환 방식: OpenAI용으로 만든 프로그램에 주소만 바꿔 넣으면 됩니다
curl http://localhost:11434/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"model": "qwen3.5:4b", "messages": [{"role": "user", "content": "한국의 수도는? 한 단어로."}]}'

다른 컴퓨터에서 접속하게 하려면 환경변수 OLLAMA_HOST=0.0.0.0을 설정하고 Ollama를 다시 켜야 합니다. Ollama 자체에는 비밀번호 설정이 없어서, 방화벽이 막지 않는 한 같은 네트워크의 누구나 쓸 수 있습니다. 인터넷에 열 계획이라면 API 키를 거는 방법부터 보세요.

6. ChatGPT처럼 브라우저에서 쓰기: Open WebUI

Docker가 있다면 Open WebUI 공식 README의 명령 한 줄로 설치됩니다.

docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway \
  -v open-webui:/app/backend/data --name open-webui --restart always \
  ghcr.io/open-webui/open-webui:main

브라우저에서 http://localhost:3000으로 접속하면 됩니다. 이 서버에는 Docker가 없어서 이 부분은 직접 실행해 보지 않았습니다. 명령은 2026-10-17 기준 공식 README와 같습니다.

7. 알아 두면 좋은 설정

환경변수기본값(0.40.5)뜻
OLLAMA_KEEP_ALIVE5분마지막 사용 뒤 모델을 메모리에 남겨 두는 시간
OLLAMA_CONTEXT_LENGTH0(자동)기본 컨텍스트 길이. 이 서버에서는 자동으로 4096
OLLAMA_HOST127.0.0.1:11434접속 주소. 바깥에 열 때는 위 주의 참고
OLLAMA_MODELS사용자 폴더 아래 .ollama/models모델 파일 저장 위치. 디스크가 부족하면 다른 드라이브로 옮기기

OLLAMA_KEEP_ALIVE와 OLLAMA_CONTEXT_LENGTH는 이 서버에서 Ollama를 켤 때 로그에 찍힌 값이고, OLLAMA_HOST는 공식 문서의 기본 주소입니다. 모델 저장 위치는 설치 방법에 따라 다를 수 있으니(리눅스에서 서비스로 설치하면 서비스 계정 폴더) 바꾸기 전에 확인하세요.

다음에 읽을 글

측정 스크립트: 위 표는 ollama-bench-ko.py로 쟀습니다. Python 3 표준 라이브러리만 쓰고, 한국어 10문제와 정답이 그대로 들어 있습니다. 모델을 받아 둔 뒤 python3 ollama-bench-ko.py gemma4:12b qwen3.5:9b처럼 실행하면(Windows는 py) 모델마다 속도·VRAM·점수가 한 줄씩 나오고 results.jsonl에 답까지 저장됩니다. VRAM은 nvidia-smi가 있을 때만 잽니다.

관련 글