Available Commands: serve Start Ollama create Create a model show Show information for a model run Run a model stop Stop a running model pull Pull a model from a registry push Push a model to a registry signin Sign in to ollama.com signout Sign out from ollama.com list List models ps List running models cp Copy a model rm Remove a model launch Launch the Ollama menu or an integration help Help about any command
Flags: -h, --help help for ollama --nowordwrap Don't wrap words to the next line automatically --verbose Show timings for response -v, --version Show version information
Use "ollama [command] --help" for more information about a command.
설정 후 source ~/.bashrc와 sudo systemctl restart ollama를 잊지 마세요.
[ls 명령]
모델 목록 조회
1 2 3 4 5 6
$ ollama ls NAME ID SIZE MODIFIED gemma4:e2b 7fbdbf8f5e45 7.2 GB 3 days ago gemma4-e4b-32k:latest 6d2a1a196ef9 9.6 GB 4 weeks ago gemma4:e4b c6eb396dbd59 9.6 GB 4 weeks ago qwen2.5-coder:latest dae161e27b0e 4.7 GB 4 weeks ag
gemma4-e4b: 다운로드한 원래 모델
gemma4-e4b-32k: 모델의 파라미터를 수정한 Modelfile 에서 생성한 새 모델
브라우저로 11434 포트에 접속해 보면 ‘Ollama is running’ 을 확인 가능하다.
[ps 명령]
ps 명령은 실행중인 ollama 프로세스를 확인할 수 있다.
1 2 3
$ ollama ps NAME ID SIZE PROCESSOR CONTEXT UNTIL gemma4:e2b 7fbdbf8f5e45 7.7 GB 75%/25% CPU/GPU 4096 4 minutes from now
systemd 상태를 확인한다.
1 2 3 4 5 6 7
$ systemctl status ollama ● ollama.service - Ollama Service Loaded: loaded (/etc/systemd/system/ollama.service; enabled; preset: enabled) Active: active (running) since Fri 2026-05-29 22:02:07 KST; 9h ago Main PID: 165 (ollama) Tasks: 25 (limit: 28826)
로그 확인
1 2 3 4 5
$ journalctl -u ollama -f 5월 29 07:42:11 goyangi2 ollama[165]: time=2026-05-29T07:42:11.649+09:00 level=INFO source=server.go:1398 msg="waiting for server to become available" status="llm server loading model" 5월 29 07:42:19 goyangi2 ollama[165]: time=2026-05-29T07:42:19.188+09:00 level=INFO source=server.go:1402 msg="llama runner started in 69.72 seconds" 5월 29 07:42:19 goyangi2 ollama[165]: [GIN] 2026/05/29 - 07:42:19 | 200 | 1m10s | 127.0.0.1 | POST "/api/generate"
[OpenAI API 호환 엔드포인트]
Ollama는 별도의 설정 없이도 OpenAI와 호환되는 API 엔드포인트를 기본적으로 제공합니다.
Compatibility Endpoints If you are integrating Ollama into third-party tools that expect specific provider structures, use these base URLs:OpenAI Compatible Base URL: Use http://localhost:11434/v1 (e.g., chat completions map to /v1/chat/completions).Anthropic Compatible Base URL: Use http://localhost:11434 with standard paths like /v1/messages.What programming language, framework, or appli
Modelfile 로 성능 조정
ollama 는 Modelfile 을 이용해 기존 모델의 파라미터를 조정해 새로운 모델로 서빙할 수 있다.
모델파일
Modelfile 은 텍스트 파일로 특정 모델의 파라미터, 프롬프를 조정해 새로운 모델로 생성할 수 있다.
모델은 ls 명령의 1) 목록에 나타난 모델을 사용하거나, 2) gguf 경로를 FROM 구문에 사용하면 된다.
1 2 3 4 5 6 7
$ ollama ls NAME ID SIZE MODIFIED qwen3-14b-han:latest bb1dc5fee044 9.0 GB 10 hours ago hf.co/unsloth/Qwen3-14B-GGUF:Q4_K_M 1c75fc1b9127 9.0 GB 10 hours ago gemma4-e4b-32k:latest 2bb4cc1b3660 9.6 GB 3 days ago my-default:latest 2bb4cc1b3660 9.6 GB 3 days ago gemma4:e4b c6eb396dbd59 9.6 GB 3 days ago
num_ctx 토큰량 수정
ollama 모델에 할당한 **Context Window(문맥 창)**가 4096 으로 제한, Ollama에서 모델을 실행할 때 기본적으로 설정되는 컨텍스트 크기를 직접 지정
터미널에서 Modelfile을 생성합니다.
Modelfile 작성:
1 2 3
FROM qwen2.5-coder:7b # 컨텍스트 크기를 32768(32k)로 설정 PARAMETER num_ctx 32768
새 파라미터로 모델을 생성
1
ollama create qwen-7b-32k -f Modelfile
새 모델 런치
1
ollama run qwen-7b-32k
GPU 가속 최적화 (GPU Layers 설정)
Ollama는 기본적으로 GPU에 모델 레이어를 분배하지만, 때때로 VRAM 여유가 있음에도 일부를 CPU(RAM)에 남겨두는 경우가 있습니다. 모든 연산을 GPU에서 처리하도록 강제하면 속도가 비약적으로 향상됩니다.
Modelfile 수정:
1 2 3 4 5
FROM qwen2.5-coder:7b PARAMETER num_ctx 32768 # 7b 모델은 보통 28~32개의 레이어로 구성됩니다. # -1은 가능한 모든 레이어를 GPU에 올리라는 뜻입니다. PARAMETER num_gpu -1
적용:ollama create qwen-7b-32k -f Modelfile 후 실행.
2. KV 캐시 양자화 (Flash Attention 및 메모리 절약)
32k와 같은 긴 컨텍스트를 사용할 때 가장 많은 메모리를 잡아먹는 것은 모델 자체보다 KV Cache(이전 대화를 기억하는 메모리)입니다. Ollama 최신 버전에서는 이를 압축하여 VRAM 부담을 줄일 수 있습니다.
설정 방법: (시스템 환경 변수에 추가) WSL2 터미널에서 nano ~/.bashrc를 열고 아래 줄을 추가하세요.
1 2
export OLLAMA_FLASH_ATTENTION=1 export OLLAMA_KV_CACHE_TYPE=q8_0 # 또는 f16(기본), q4_0(더 많은 절약)
효과:OLLAMA_FLASH_ATTENTION은 RTX 4060 같은 Ampere 아키텍처에서 추론 속도를 대폭 높여주고, KV_CACHE_TYPE을 양자화하면 긴 문맥에서도 VRAM 부족으로 인한 속도 저하(Fallback)를 방지합니다.
3. 하드웨어 스케줄링 및 전원 관리 (Windows/WSL2 공통)
RTX 4060 Laptop GPU를 사용 중이시라면 하드웨어 설정이 큰 차이를 만듭니다.
하드웨어 가속 GPU 일정 예약 (HAGS): Windows 설정에서 이 기능을 켬으로 설정하세요. WSL2의 GPU 할당 효율이 좋아집니다.
NVIDIA 제어판:전원 관리 모드를 **”최고 성능 선호”**로 변경하세요. 노트북 환경에서는 클럭 제한이 걸려 추론 속도가 출렁일 수 있습니다.
4. Claude Code와의 협업 최적화 (Ignore 파일 활용)
Claude Code는 프로젝트의 전체 맥락을 읽으려 시도합니다. 불필요한 데이터가 32k 컨텍스트를 채우지 않도록 관리해야 모델의 “두뇌”가 코딩에만 집중할 수 있습니다.
.claudeignore 파일 생성: 프로젝트 루트에 파일을 만들고 아래 내용을 추가하세요.
1 2 3 4 5 6
node_modules/ dist/ *.log .git/ venv/ # 분석에 불필요한 대형 바이너리나 데이터 파일들 제외
효과: 모델이 읽어야 할 정보의 밀도가 높아져서 답변의 정확도(Quality)가 올라갑니다.
실시간 모니터링 팁
설정을 바꾼 후 실제로 GPU가 열일하고 있는지 확인하는 습관이 중요합니다.
Windows: 작업 관리자 > 성능 > GPU 0 (또는 1)에서 Dedicated GPU Memory 사용량을 확인하세요. 8GB에 육박하되 넘치지 않는 상태가 베스트입니다.
WSL2: 터미널에서 nvidia-smi를 입력해 현재 Ollama가 점유 중인 VRAM 용량을 체크하세요.
로그 조회
~$ journalctl -u ollama -n 100 –no-pager
외부모델 사용
ollama 는 모델을 정의한 파일을 통해 사용자 튜닝을 할 수 있다.
hf.co 이용
Ollama에서 허깅페이스에서 가장 빠르게 내려받아 실행하는 방법은 hf.co 주소를 직접 사용하는 것입니다.
다른 저장소의 모델을 ollama 에서 서빙하려면 Modelfile 작성해서 사용해야 한다.
다음은 unsloth/Qwen3-14B-GGUF:Q4_K_M 모델을 위한 모델 파일이다.
1 2 3
# Modelfile FROM hf.co/unsloth/Qwen3-14B-GGUF:Q4_K_M #FROM ./DeepSeek-V4-Flash-Q4_K_M.gguf # 파일명 경로
ollama 모델 빌드
1 2
ollama create ds-v4 -f Modelfile ollama run ds-v4
외부 모델 파일 사용
별도로 다운로드한 gguf 모델을 사용할 수 있다.
1 2 3 4 5
FROM /home/Models/unsloth/gemma-4-E2B-it-Q5_K_M.gguf # 컨텍스트 크기를 16384(16k), 32768(32K)로 설정 PARAMETER num_ctx 16384 # -1은 가능한 모든 레이어를 GPU에 올리라는 뜻입니다``` PARAMETER num_gpu 15
gemma4-e2b-16k 이름으로 모델을 생성한다.
1
ollama create gemma4-e2b-16k -f Modelfile
확인
1 2 3
$ ollama ls NAME ID SIZE MODIFIED gemma4-e2b-16k:latest d1ac4306a92e 3.4 GB 5 minutes ago
모델 run
1 2 3 4 5 6
$ ollama run gemma4-e2b-16k >>>/bye $ ollama ps NAME ID SIZE PROCESSOR CONTEXT UNTIL gemma4:e2b 7fbdbf8f5e45 7.7 GB 75%/25% CPU/GPU 4096 4 minutes from no
주요파라미터
1 2 3 4 5 6 7 8 9 10 11 12 13
#### 프롬프트 템플릿 적용
모델은 `ollama ls` 명령의 목록에 나타난 모델을 사용하거나 gguf 경로를 `FROM` 구문에 사용하면 된다.
```bash $ ollama ls NAME ID SIZE MODIFIED qwen3-14b-han:latest bb1dc5fee044 9.0 GB 10 hours ago hf.co/unsloth/Qwen3-14B-GGUF:Q4_K_M 1c75fc1b9127 9.0 GB 10 hours ago gemma4-e4b-32k:latest 2bb4cc1b3660 9.6 GB 3 days ago my-default:latest 2bb4cc1b3660 9.6 GB 3 days ago gemma4:e4b c6eb396dbd59 9.6 GB 3 days ago
hf.co/unsloth/Qwen3-14B-GGUF:Q4_K_M 모델을 위한 모델 파일
1 2 3 4 5 6 7 8 9 10 11 12 13 14
# Modelfile FROM hf.co/unsloth/Qwen3-14B-GGUF:Q4_K_M #FROM ./DeepSeek-V4-Flash-Q4_K_M.gguf # 파일명 경로
# 한국어 및 코딩 최적화 설정 SYSTEM """ You are an expert AI developer. Please provide all explanations and communication in Korean (한국어). Technical terms and code can remain in English. """
다운 받은 모델의 세부 파라미터를 확인할 수 있다. 이 정보를 모델 파일로 리다이렉트해서 편집해 사용할 수 있다.
1
ollama show qwen3-14b-coding --modelfile > Modelfile
ollama 모델 빌드
1 2
ollama create ds-v4 -f Modelfile ollama run ds-v4
1 2 3 4 5 6 7 8 9 10 11 12
FROM gemma4:8b PARAMETER num_ctx 32768 PARAMETER num_gpu -1
# 시스템 프롬프트를 명확하게 전달하기 위한 템플릿 추가 TEMPLATE """{{ if .System }}<|im_start|>system {{ .System }}<|im_end|> {{ end }}{{ if .Prompt }}<|im_start|>user {{ .Prompt }}<|im_end|> {{ end }}<|im_start|>assistant """ SYSTEM """You are an expert AI developer. 반드시 모든 설명과 대화는 한국어(Korean)로만 하세요. 기술 용어와 코드만 영어를 사용하세요. Use step-by-step reasoning for complex logic."""
성능 개선ㅁ
Gemma 2 9B(또는 최신 버전인 Gemma 4 계열) 모델은 구글 특유의 아키텍처 덕분에 비슷한 파라미터 대비 성능이 매우 뛰어납니다. RTX 4060 환경에서 이 모델의 잠재력을 끝까지 끌어올리기 위한 고급 최적화 전략을 정리해 드립니다.
1. 전용 퀀타이징(Quantization) 선택: Q4_K_M vs Q5_K_M
Ollama에서 기본으로 다운로드하면 보통 Q4_0 같은 일반 양자화 모델이 받아집니다. 하지만 RTX 4060(8GB VRAM)은 Q5_K_M까지도 충분히 수용 가능합니다.
비교:Q4는 속도가 빠르지만 지능이 약간 깎이고, Q5는 지능을 거의 온전히 보존하면서 VRAM을 효율적으로 씁니다.
방법: 직접 GGUF 파일을 구하거나, Ollama 라이브러리에서 태그를 확인하여 높은 비트의 모델을 선택하세요.
1 2
ollama run gemma2:9b-instruct-q5_K_M
2. K-V Cache Quantization (VRAM 극단적 절약)
컨텍스트 길이를 늘렸을 때 속도가 느려지는 가장 큰 이유는 VRAM 부족입니다. Gemma 아키텍처는 컨텍스트가 길어질 때 메모리 점유가 가파른데, 이를 8비트나 4비트로 압축하면 해결됩니다.
WSL2 환경 변수 설정:
1 2 3 4 5 6
# VRAM이 부족할 때 컨텍스트 메모리를 8비트로 압축 (지능 저하 거의 없음) export OLLAMA_KV_CACHE_TYPE=q8_0
# 만약 32k 이상을 쓰면서 모델이 터진다면 4비트로 설정 # export OLLAMA_KV_CACHE_TYPE=q4_0
설정 후 sudo systemctl restart ollama로 재시작하세요.
3. Flash Attention 활성화 (RTX 40 시리즈 필수)
RTX 4060은 Ada Lovelace 아키텍처로, Flash Attention 기능을 지원합니다. 이 기능을 켜면 긴 문장을 처리할 때 계산 효율이 기하급수적으로 좋아집니다.
설정 방법:
1 2
export OLLAMA_FLASH_ATTENTION=1
이 옵션을 켜면 토큰 생성 속도(Tokens Per Second)가 특히 긴 대화에서 눈에 띄게 개선됩니다.
4. GPU Layers 강제 할당 (num_gpu)
Gemma 모델 실행 시 일부 연산이 CPU로 넘어가면 병목 현상이 발생합니다. RTX 4060의 8GB VRAM은 Gemma 9B급 모델을 100% GPU에 올리기에 아주 약간 빠듯할 수 있습니다(컨텍스트 32k 기준).
이때 Modelfile에서 레이어 수를 강제로 지정하여 최적의 지점을 찾아야 합니다.
Modelfile 최적화 예시:
1 2 3 4 5
FROM gemma2:9b PARAMETER num_ctx 16384# 32k가 무겁다면 16k로 타협하되 속도를 챙깁니다. PARAMETER num_gpu 42# Gemma 2 9B의 전체 레이어를 GPU에 고정 PARAMETER repeat_penalty 1.1
5. 시스템 메모리 스왑 및 오버헤드 제거
WSL2는 기본적으로 Windows RAM의 50%만 가져다 씁니다. 만약 모델이 GPU에서 넘쳐서 RAM을 써야 하는 상황(Fallback)이 오면 성능이 급락합니다.
.wslconfig 설정 (Windows 사용자 폴더 아래):
1 2 3 4
[wsl2] memory=12GB # 전체 16GB RAM 기준, WSL에 더 많은 메모리 할당 processors=8
성능 모드: 노트북이라면 전원 케이블을 연결하고, Windows 설정에서 ‘최고 성능 모드’를 선택하세요. GPU 클럭이 고정되어야 추론 속도가 안정적입니다.
💡 요약: 무엇부터 해야 할까요?
OLLAMA_FLASH_ATTENTION=1 설정 (가장 체감이 큽니다).
OLLAMA_KV_CACHE_TYPE=q8_0 설정 (VRAM 부족으로 인한 렉 방지).
컨텍스트가 32k에서 너무 느리다면 16k로 낮추는 대신 모델 지능을 위해 Q5_K_M 양자화를 사용하세요.
현재 이 설정을 적용한 뒤 대화 속도가 초당 몇 토큰 정도 나오나요? 만약 nvidia-smi에서 VRAM이 7.5GB 이상 점유 중이라면 컨텍스트를 소폭 줄이는 것이 성능에 더 유리할 수 있습니다.
예
다음은 소스 분석에 대한 ollama 로그 기록이야 여기서 token 생산 성능을 높일 수 있는 팁이 없을까?