자주 묻는 질문
자주 묻는 질문 (FAQ)
Ollama를 쓰면서 자주 나오는 질문들을 모았어요. 업그레이드, 로그, GPU, 컨텍스트 길이, 서버 환경 변수, 성능 튜닝까지 실무에서 바로 쓸 수 있는 답변을 정리했습니다.
Ollama는 어떻게 업그레이드하나요?
macOS와 Windows의 Ollama는 업데이트를 자동으로 내려받아요. 작업 표시줄이나 메뉴바 항목을 클릭한 뒤 "Restart to update"를 눌러 업데이트를 적용하면 됩니다. 최신 버전을 직접 내려받아 설치하는 방법도 있어요.
Linux에서는 설치 스크립트를 다시 실행합니다.
curl -fsSL https://ollama.com/install.sh | sh
로그는 어떻게 볼 수 있나요?
로그 사용법은 Troubleshooting 문서를 참고하세요.
내 GPU가 Ollama와 호환되나요?
GPU 문서를 참고하세요.
컨텍스트 윈도우 크기는 어떻게 지정하나요?
기본적으로 Ollama는 컨텍스트 윈도우 크기 4096 토큰을 사용합니다.
이 값은 OLLAMA_CONTEXT_LENGTH 환경 변수로 재정의할 수 있어요. 예를 들어 기본 컨텍스트 윈도우를 8K로 설정하려면:
OLLAMA_CONTEXT_LENGTH=8192 ollama serve
ollama run을 쓸 때는 /set parameter로 바꿉니다.
/set parameter num_ctx 4096
API를 쓸 때는 num_ctx 파라미터를 지정합니다.
curl http://localhost:11434/api/generate -d '{
"model": "llama3.2",
"prompt": "Why is the sky blue?",
"options": {
"num_ctx": 4096
}
}'
모델이 GPU에 로드됐는지 어떻게 알 수 있나요?
ollama ps 명령으로 현재 메모리에 로드된 모델을 확인할 수 있어요.
ollama ps
정보 출력:
NAME ID SIZE PROCESSOR UNTIL llama3:70b bcfb190ca3a7 42 GB 100% GPU 4 minutes from now
Processor 열은 모델이 로드된 메모리를 보여줍니다.
100% GPU— 모델이 전부 GPU에 로드됨100% CPU— 모델이 전부 시스템 메모리에 로드됨48%/52% CPU/GPU— 모델이 GPU와 시스템 메모리에 나눠 로드됨
Ollama 서버는 어떻게 구성하나요?
Ollama 서버는 환경 변수로 구성할 수 있어요.
Mac에서 환경 변수 설정하기
Ollama를 macOS 애플리케이션으로 실행한다면 환경 변수는 launchctl로 설정해야 합니다.
-
환경 변수마다
launchctl setenv를 호출합니다.launchctl setenv OLLAMA_HOST "0.0.0.0:11434" -
Ollama 애플리케이션을 다시 시작합니다.
Linux에서 환경 변수 설정하기
Ollama를 systemd 서비스로 실행한다면 환경 변수는 systemctl로 설정해야 합니다.
-
systemctl edit ollama.service를 호출해 systemd 서비스를 편집합니다. 편집기가 열립니다. -
환경 변수마다
[Service]섹션 아래에Environment행을 추가합니다.[Service] Environment="OLLAMA_HOST=0.0.0.0:11434" -
저장하고 종료합니다.
-
systemd를 리로드하고 Ollama를 다시 시작합니다.systemctl daemon-reload systemctl restart ollama
Windows에서 환경 변수 설정하기
Windows에서 Ollama는 사용자 및 시스템 환경 변수를 상속합니다.
- 먼저 작업 표시줄에서 Ollama를 클릭해 종료합니다.
- 설정(Windows 11) 또는 제어판(Windows 10)을 열고 환경 변수를 검색합니다.
- 사용자 계정의 환경 변수 편집을 클릭합니다.
OLLAMA_HOST,OLLAMA_MODELS등 사용자 계정 변수를 편집하거나 새로 만듭니다.- 저장하려면 확인/적용을 클릭합니다.
- Windows 시작 메뉴에서 Ollama 애플리케이션을 시작합니다.
프록시 뒤에서 Ollama를 어떻게 사용하나요?
Ollama는 인터넷에서 모델을 내려받기 때문에 모델 접근에 프록시 서버가 필요할 수 있어요. HTTPS_PROXY로 아웃바운드 요청을 프록시를 통해 보내게 하면 됩니다. 프록시 인증서가 시스템 인증서로 설치되어 있는지 확인하세요. 플랫폼별 환경 변수 사용법은 위 섹션을 참고합니다.
참고
HTTP_PROXY는 설정하지 마세요. Ollama는 모델 풀에 HTTP를 쓰지 않고 HTTPS만 사용합니다.HTTP_PROXY를 설정하면 서버로의 클라이언트 연결이 끊길 수 있어요.
Docker에서 프록시 뒤에서 Ollama를 어떻게 사용하나요?
Ollama Docker 컨테이너 이미지는 컨테이너를 시작할 때 -e HTTPS_PROXY=https://proxy.example.com을 전달하면 프록시를 쓰도록 구성됩니다.
또는 Docker 데몬 자체를 프록시로 구성할 수도 있어요. Docker Desktop은 macOS, Windows, Linux에서, 그리고 Docker systemd 데몬에서 설정 안내를 제공합니다.
HTTPS를 쓸 때 인증서가 시스템 인증서로 설치되어 있는지 확인하세요. 자체 서명 인증서를 쓰면 새 Docker 이미지가 필요할 수 있어요.
FROM ollama/ollama
COPY my-ca.pem /usr/local/share/ca-certificates/my-ca.crt
RUN update-ca-certificates
이 이미지를 빌드하고 실행합니다.
docker build -t ollama-with-ca .
docker run -d -e HTTPS_PROXY=https://my.proxy.example.com -p 11434:11434 ollama-with-ca
Ollama가 제 프롬프트와 답변을 ollama.com으로 보내나요?
Ollama는 로컬에서 실행됩니다. 로컬에서 실행할 때는 당신의 프롬프트나 데이터를 볼 수 없어요. 클라우드 호스팅 모델을 쓸 때는 서비스를 제공하기 위해 프롬프트와 응답을 처리하지만, 그 내용을 저장하거나 기록하지 않으며 학습에도 쓰지 않습니다. 서비스 제공에 필요한 기본 계정 정보와 제한된 사용 메타데이터를 수집하는데, 여기에는 프롬프트나 응답 내용이 포함되지 않아요. 데이터를 판매하지 않으며 언제든 계정을 삭제할 수 있습니다.
Ollama Cloud 기능을 어떻게 끄나요?
Ollama는 Cloud 기능을 끄면 로컬 전용 모드로 실행할 수 있어요. Cloud 기능을 끄면 Ollama의 클라우드 모델과 웹 검색을 쓸 수 없게 됩니다.
~/.ollama/server.json에서 disable_ollama_cloud를 설정하세요.
{
"disable_ollama_cloud": true
}
환경 변수로도 설정할 수 있습니다.
OLLAMA_NO_CLOUD=1
설정을 바꾼 후 Ollama를 다시 시작하세요. 비활성화되면 Ollama 로그에 Ollama cloud disabled: true가 표시됩니다.
Ollama를 네트워크에 어떻게 노출하나요?
Ollama는 기본적으로 127.0.0.1의 11434 포트에 바인딩됩니다. OLLAMA_HOST 환경 변수로 바인드 주소를 바꿀 수 있어요.
플랫폼별 환경 변수 설정법은 위 섹션을 참고하세요.
프록시 서버와 Ollama를 함께 어떻게 쓰나요?
Ollama는 HTTP 서버로 동작하며 Nginx 같은 프록시 서버로 노출할 수 있어요. 그러려면 프록시가 요청을 전달하도록 구성하고 필요하면 헤더를 설정합니다(Ollama를 네트워크에 노출하지 않는 경우). Nginx 예시:
server {
listen 80;
server_name example.com; # Replace with your domain or IP
location / {
proxy_pass http://localhost:11434;
proxy_set_header Host localhost:11434;
}
}
ngrok으로 Ollama를 어떻게 사용하나요?
Ollama는 다양한 터널링 앱으로 접근할 수 있어요. 예를 들어 Ngrok로는:
ngrok http 11434 --host-header="localhost:11434"
Cloudflare Tunnel로 Ollama를 어떻게 사용하나요?
Cloudflare Tunnel로 Ollama를 쓰려면 --url과 --http-host-header 플래그를 사용합니다.
cloudflared tunnel --url http://localhost:11434 --http-host-header="localhost:11434"
추가 웹 오리진이 Ollama에 접근하도록 어떻게 허용하나요?
Ollama는 기본적으로 127.0.0.1과 0.0.0.0의 크로스 오리진 요청을 허용합니다. 추가 오리진은 OLLAMA_ORIGINS로 구성할 수 있어요.
브라우저 확장 프로그램은 확장 프로그램의 오리진 패턴을 명시적으로 허용해야 합니다. 모든 브라우저 확장 프로그램의 접근을 허용하려면 OLLAMA_ORIGINS에 chrome-extension://*, moz-extension://*, safari-web-extension://*을 포함시키거나, 필요한 특정 확장 프로그램만 지정하세요.
# Allow all Chrome, Firefox, and Safari extensions
OLLAMA_ORIGINS=chrome-extension://*,moz-extension://*,safari-web-extension://* ollama serve
플랫폼별 환경 변수 설정법은 위 섹션을 참고하세요.
모델은 어디에 저장되나요?
- macOS:
~/.ollama/models - Linux:
/usr/share/ollama/.ollama/models - Windows:
C:\Users\%username%\.ollama\models
다른 위치로 바꾸려면 어떻게 하나요?
다른 디렉토리를 써야 한다면 OLLAMA_MODELS 환경 변수를 원하는 디렉토리로 설정하세요.
참고 표준 설치 프로그램을 쓴 Linux에서
ollama사용자는 지정한 디렉토리에 읽기·쓰기 권한이 있어야 해요. 디렉토리를ollama사용자에게 할당하려면sudo chown -R ollama:ollama <directory>를 실행하세요.
플랫폼별 환경 변수 설정법은 위 섹션을 참고하세요.
Visual Studio Code에서 Ollama를 어떻게 사용하나요?
VS Code Chat에서 Ollama 모델을 쓰려면 Ollama 확장을 설치하세요. 설정과 문제 해결은 VS Code 통합 가이드를 참고합니다.
Docker에서 GPU 가속으로 Ollama를 어떻게 사용하나요?
Ollama Docker 컨테이너는 Linux 또는 Windows(WSL2)에서 GPU 가속으로 구성할 수 있어요. nvidia-container-toolkit이 필요합니다. 자세한 내용은 ollama/ollama를 참고하세요.
macOS의 Docker Desktop은 GPU passthrough와 에뮬레이션이 없어 GPU 가속을 지원하지 않습니다.
Windows 10의 WSL2에서 네트워킹이 왜 느린가요?
이 문제는 Ollama 설치와 모델 내려받기 모두에 영향을 줄 수 있어요.
제어판 > 네트워크 및 인터넷 > 네트워크 상태 및 작업 보기를 열고 왼쪽 패널에서 어댑터 설정 변경을 클릭합니다. vEthernet (WSL) 어댑터를 찾아 오른쪽 클릭 후 속성을 선택합니다. 구성을 클릭하고 고급 탭을 엽니다. 속성에서 Large Send Offload Version 2 (IPv4)와 Large Send Offload Version 2 (IPv6)를 찾아 두 속성을 모두 사용 안 함으로 설정하세요.
더 빠른 응답 시간을 위해 모델을 Ollama에 미리 로드하려면 어떻게 하나요?
API를 쓴다면 Ollama 서버에 빈 요청을 보내 모델을 미리 로드할 수 있어요. 이 방법은 /api/generate와 /api/chat API 엔드포인트 모두에서 동작합니다.
generate 엔드포인트로 mistral 모델을 미리 로드하려면:
curl http://localhost:11434/api/generate -d '{"model": "mistral"}'
chat completions 엔드포인트를 쓰려면:
curl http://localhost:11434/api/chat -d '{"model": "mistral"}'
CLI로 모델을 미리 로드하려면:
ollama run llama3.2 ""
모델을 메모리에 유지하거나 즉시 내리려면 어떻게 하나요?
기본적으로 모델은 내려지기 전 5분 동안 메모리에 유지됩니다. LLM에 요청을 여러 번 보내는 경우 응답 시간을 빠르게 하기 위해서예요. 메모리에서 모델을 즉시 내리려면 ollama stop 명령을 씁니다.
ollama stop llama3.2
API를 쓴다면 /api/generate와 /api/chat 엔드포인트의 keep_alive 파라미터로 모델이 메모리에 머무는 시간을 정할 수 있어요. keep_alive 파라미터는 다음으로 설정할 수 있습니다.
- 기간 문자열(예: "10m" 또는 "24h")
- 초 단위 숫자(예: 3600)
- 모델을 메모리에 유지하게 하는 음수(예: -1 또는 "-1m")
- 응답 생성 직후 모델을 내리게 하는 '0'
예를 들어 모델을 미리 로드해 메모리에 남기려면:
curl http://localhost:11434/api/generate -d '{"model": "llama3.2", "keep_alive": -1}'
모델을 내려 메모리를 확보하려면:
curl http://localhost:11434/api/generate -d '{"model": "llama3.2", "keep_alive": 0}'
또는 Ollama 서버를 시작할 때 OLLAMA_KEEP_ALIVE 환경 변수를 설정해 모든 모델이 메모리에 로드되는 시간을 바꿀 수도 있어요. OLLAMA_KEEP_ALIVE 변수는 위에서 언급한 keep_alive 파라미터와 같은 타입을 사용합니다. 환경 변수를 올바르게 설정하는 방법은 Ollama 서버 구성 섹션을 참고하세요.
/api/generate와 /api/chat API 엔드포인트의 keep_alive API 파라미터는 OLLAMA_KEEP_ALIVE 설정을 재정의합니다.
Ollama 서버가 큐잉할 수 있는 최대 요청 수는 어떻게 관리하나요?
서버에 너무 많은 요청이 보내지면 과부하를 나타내는 503 오류로 응답합니다. OLLAMA_MAX_QUEUE를 설정하면 큐잉할 수 있는 요청 수를 조절할 수 있어요.
Ollama는 동시 요청을 어떻게 처리하나요?
Ollama는 두 수준의 동시 처리를 지원합니다. 시스템에 충분한 가용 메모리(CPU 추론이면 시스템 메모리, GPU 추론이면 VRAM)가 있으면 모델 여러 개를 동시에 로드할 수 있어요. 특정 모델의 경우, 로드될 때 충분한 가용 메모리가 있으면 병렬 요청 처리가 가능하도록 구성됩니다.
모델 하나 이상이 로드된 상태에서 새 모델 요청을 로드할 충분한 메모리가 없다면, 새 모델을 로드할 수 있을 때까지 모든 새 요청이 큐에 쌓입니다. 이전 모델들이 유휴 상태가 되면 새 모델을 위한 공간을 만들기 위해 하나 이상이 내려져요. 큐에 쌓인 요청은 순서대로 처리됩니다. GPU 추론 시 새 모델은 동시 로드를 위해 VRAM에 완전히 들어가야 해요.
특정 모델의 병렬 요청 처리는 컨텍스트 크기를 병렬 요청 수만큼 늘립니다. 예를 들어 2K 컨텍스트에 병렬 요청 4개라면 8K 컨텍스트가 되어 추가 메모리가 할당됩니다.
대부분의 플랫폼에서 아래 서버 설정으로 Ollama가 동시 요청을 처리하는 방식을 조절할 수 있어요.
OLLAMA_MAX_LOADED_MODELS— 가용 메모리에 맞는 한 동시에 로드할 수 있는 최대 모델 수. 기본값은 GPU 수의 3배 또는 CPU 추론 시 3입니다.OLLAMA_NUM_PARALLEL— 각 모델이 동시에 처리할 최대 병렬 요청 수, 기본값 1. 필요한 RAM은OLLAMA_NUM_PARALLEL×OLLAMA_CONTEXT_LENGTH에 비례해 늘어납니다.OLLAMA_MAX_QUEUE— 바쁠 때 추가 요청을 거부하기 전 Ollama가 큐잉할 최대 요청 수. 기본값은 512입니다.
참고: Radeon GPU를 쓰는 Windows는 ROCm v5.7의 가용 VRAM 보고 제약 때문에 기본적으로 모델 1개로 제한됩니다. ROCm v6.2가 사용 가능해지면 Windows Radeon도 위 기본값을 따르게 됩니다. Windows Radeon에서 동시 모델 로드를 활성화할 수는 있지만, GPU VRAM에 들어가는 것보다 많은 모델을 로드하지 않도록 주의하세요.
Ollama는 여러 GPU에 모델을 어떻게 로드하나요?
새 모델을 로드할 때 Ollama는 모델에 필요한 VRAM을 현재 가용량과 비교해요. 모델이 단일 GPU에 완전히 들어간다면 그 GPU에 로드합니다. 이는 추론 중 PCI 버스를 통한 데이터 전송량을 줄여 보통 가장 좋은 성능을 냅니다. 모델이 한 GPU에 완전히 들어가지 않으면 모든 가용 GPU에 걸쳐 분산됩니다.
Flash Attention을 어떻게 켜나요?
Flash Attention은 대부분의 최신 모델에 있는 기능으로, 컨텍스트 크기가 커질 때 메모리 사용을 크게 줄일 수 있어요. Ollama는 선택된 백엔드와 장치가 지원하면 Flash Attention을 자동으로 사용합니다. 강제로 켜려면 Ollama 서버를 시작할 때 OLLAMA_FLASH_ATTENTION=1을 설정하고, 끄려면 OLLAMA_FLASH_ATTENTION=0을 설정하세요.
K/V 캐시의 양자화 타입은 어떻게 설정하나요?
K/V 컨텍스트 캐시는 Flash Attention이 켜져 있을 때 양자화해 메모리 사용을 크게 줄일 수 있어요.
Ollama에서 양자화 K/V 캐시를 쓰려면 다음 환경 변수를 설정하면 됩니다.
OLLAMA_KV_CACHE_TYPE— K/V 캐시의 양자화 타입. 기본값은f16입니다.
참고 현재 이 옵션은 전역 옵션입니다. 즉 모든 모델이 지정된 양자화 타입으로 실행됩니다.
현재 사용 가능한 K/V 캐시 양자화 타입은 다음과 같습니다.
f16— 고정밀도, 메모리 사용이 큼(기본값).q8_0— 8비트 양자화.f16의 대략 절반 메모리를 쓰고 정밀도 손실은 아주 작아요. 보통 모델 품질에 눈에 띄는 영향이 없습니다(f16을 안 쓴다면 권장).q4_0— 4비트 양자화.f16의 대략 1/4 메모리를 쓰고 정밀도 손실이 작거나 중간 정도이며, 컨텍스트 크기가 커질수록 더 눈에 띌 수 있어요.
캐시 양자화가 모델 응답 품질에 얼마나 영향을 주는지는 모델과 작업에 따라 달라집니다. GQA 수가 높은 모델(예: Qwen2)은 GQA 수가 낮은 모델보다 양자화로 인한 정밀도 영향이 더 클 수 있어요.
메모리 사용과 품질 사이의 최적 균형을 찾으려면 여러 양자화 타입을 실험해 보는 게 좋습니다.
Ollama 공개 키(Ollama Public Key)는 어디서 찾나요?
Ollama 공개 키는 로컬 Ollama 인스턴스가 ollama.com과 통신할 수 있게 해 주는 키 쌍의 공개 부분입니다.
이 키가 필요한 경우:
- 모델을 Ollama로 푸시
- 개인 모델을 Ollama에서 내 컴퓨터로 내려받기
- Ollama Cloud에 호스팅된 모델 실행
키 추가 방법
-
Mac 및 Windows 앱의 설정 페이지에서 로그인
-
CLI로 로그인
ollama signin
- Ollama Keys 페이지에서 키를 수동으로 복사·붙여넣기: https://ollama.com/settings/keys
Ollama 공개 키가 저장된 위치
| OS | id_ed25519.pub 경로 |
|---|---|
| macOS | ~/.ollama/id_ed25519.pub |
| Linux | /usr/share/ollama/.ollama/id_ed25519.pub |
| Windows | C:\Users\<username>\.ollama\id_ed25519.pub |
참고
을 실제 Windows 사용자 이름으로 바꾸세요.
로그인할 때 Ollama가 자동으로 시작되지 않게 하려면 어떻게 하나요?
Windows와 macOS용 Ollama는 설치 중 로그인 항목으로 등록됩니다. Ollama가 자동으로 시작되지 않게 하고 싶다면 이 설정을 끌 수 있어요. 이 설정은 애플리케이션을 제거하지 않는 한 업그레이드 이후에도 유지됩니다.
Windows
작업 관리자의시작 앱탭에서ollama를 찾아사용 안 함을 클릭
MacOS
설정을 열고 "로그인 항목"을 검색,백그라운드에서 허용아래Ollama항목을 찾아 슬라이더를 꺼 비활성화
더 알아보기 (Learn more)
출처: 공식문서 - FAQ