Ollama
Get up and running with large language models.
Run Llama 3, Phi 3, Mistral, Gemma, and other models. Customize and create your own.
Llama 2 및 기타 대규모 언어 모델을 로컬에서 시작 및 실행
Categories
- Ollama:Python (Ollama Python Library)
- Cactus - 스마트폰을 위한 Ollama
Examples
- AutoGen#Ollama Coding Example - AutoGen 에서 Ollama 연결하는 방법
Model Library
Model | Parameters | Size | Download |
Gemma 3 | 1B | 815MB | |
Gemma 3 | 4B | 3.3GB | |
Gemma 3 | 12B | 8.1GB | |
Gemma 3 | 27B | 17GB | |
QwQ | 32B | 20GB | |
DeepSeek-R1 | 7B | 4.7GB | |
DeepSeek-R1 | 671B | 404GB | |
Llama 3.3 | 70B | 43GB | |
Llama 3.2 | 3B | 2.0GB | |
Llama 3.2 | 1B | 1.3GB | |
Llama 3.2 Vision | 11B | 7.9GB | |
Llama 3.2 Vision | 90B | 55GB | |
Llama 3.1 | 8B | 4.7GB | |
Llama 3.1 | 405B | 231GB | |
Phi 4 | 14B | 9.1GB | |
Phi 4 Mini | 3.8B | 2.5GB | |
Mistral | 7B | 4.1GB | |
Moondream 2 | 1.4B | 829MB | |
Neural Chat | 7B | 4.1GB | |
Starling | 7B | 4.1GB | |
Code Llama | 7B | 3.8GB | |
Llama 2 Uncensored | 7B | 3.8GB | |
LLaVA | 7B | 4.5GB | |
Granite-3.2 | 8B | 4.9GB | |
VRAM Requirements
- 7B 모델을 실행하려면 최소 8GB의 RAM이 필요하고, -> NVIDIA GeForce RTX 3070 Ti (8G VRAM) 에서 적합.
- 13B 모델을 실행하려면 16GB, -> NVIDIA GeForce RTX 3070 Ti (8G VRAM) 2장 에서 적합.
- 33B 모델을 실행하려면 32GB가 필요합니다.
만약 2장이 병렬로 꼽혀있어도 별도의 설정이 필요 없다. 알아서 잡아준다.
NVIDIA GeForce RTX 3070 Ti (8G VRAM) 2장에서 실행 가능한 모델들
- codellama:13b
- deepseek-r1:14b
Coding Banchmarks
코딩 분야에서 가장 성능이 좋은거... 찾는 과정
- CodeLlama-34b-Instruct - 코딩 전용으로 미세 조정된 모델로 코드 생성 능력이 뛰어나지만, 두 장의 3070 Ti로도 실행이 어려울 수 있습니다.
- DeepSeek Coder-33b-Instruct - 코딩에 특화된 모델이지만 GPU 메모리 요구 사항이 높습니다.
- CodeLlama-13b-Instruct - 중간 크기 모델로 34b보다 작지만 여전히 뛰어난 코딩 성능을 제공하며 두 장의 GPU로 실행 가능합니다.
- WizardCoder-15b-V1.0 - 코딩에 특화된 중형 모델로 성능이 우수합니다.
- Phind-CodeLlama-34b-v2 - 코딩에 최적화된 모델이지만 VRAM 요구사항이 높습니다.
RTX 3070 Ti 두 장의 구성을 고려할 때, CodeLlama-13b-Instruct 또는 WizardCoder-15b-V1.0이 가장 적합한 선택일 것입니다. 두 모델 모두 코딩 성능이 뛰어나면서도 하드웨어 사양에 맞게 실행 가능합니다. 특히 코드 이해, 생성 및 디버깅에 있어 강점을 보입니다.
7B 라인업
- CodeLlama-7b-Instruct - Meta에서 개발한 코딩 특화 모델로, 큰 모델들의 작은 버전이지만 코드 생성과 이해에 매우 효과적입니다.
- WizardCoder-7b-V1.0 - 코딩 작업에 최적화된 모델로, 특히 Python 코드 생성에 강점을 보입니다.
- DeepSeek Coder-7b-Instruct-v1.5 - 코드 이해와 생성에 특화된 모델로, 다양한 프로그래밍 언어를 지원합니다.
- Phind-CodeLlama-7b-v2 - 코드 생성에 특화된 미세 조정 모델입니다.
- CodeGemma-7b - Google에서 개발한 코딩 특화 모델로 최근에 출시되었습니다.
이 중에서 CodeLlama-7b-Instruct와 DeepSeek Coder-7b-Instruct-v1.5가 가장 균형 잡힌 성능을 보여줍니다. 특히 DeepSeek Coder는 코딩 벤치마크에서 우수한 성능을 보여주고 있으므로, 7B 모델 중에서는 최고의 선택이라고 할 수 있습니다. RTX 3070 Ti에서는 이 정도 크기의 모델은 양자화 없이도 충분히 실행 가능하지만, 메모리 효율성을 위해 Q5_1 정도의 양자화를 적용하면 더 빠른 응답 속도를 얻을 수 있습니다.
CLI
ollama
Enter:
Usage:
ollama [flags]
ollama [command]
Available Commands:
serve Start ollama
create Create a model from a Modelfile
show Show information for a model
run Run a model
pull Pull a model from a registry
push Push a model to a registry
list List models
cp Copy a model
rm Remove a model
help Help about any command
Flags:
-h, --help help for ollama
-v, --version Show version information
Use "ollama [command] --help" for more information about a command.
Docker 실행 방법
docker run -d --gpus=all -v /home/zer0/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
GPU 사용 방법
알아서 자동으로 사용된다. 다만 메모리 제한량에 다다르면 CPU와 병행 모드로 실행된다. ollama ps
로 확인하면 된다.
오직 GPU만 모드로 실행될 경우:
CPU/GPU 병행 모드로 실행될 경우:
NAME ID SIZE PROCESSOR UNTIL
llama3.3:70b-instruct-q2_K a6f03da15cbc 28 GB 18%/82% CPU/GPU 4 minutes from now
환경 변수
- Ollama 설치와 운영 : 로컬 환경에서 대규모 언어 모델을 쉽게 실행하기
- Global Configuration Variables for Ollama · Issue #2941 · ollama/ollama
- ollama/envconfig/config.go at main · ollama/ollama
ollama serve --help
로 확인 가능:
Environment Variables:
OLLAMA_DEBUG Show additional debug information (e.g. OLLAMA_DEBUG=1)
OLLAMA_HOST IP Address for the ollama server (default 127.0.0.1:11434)
OLLAMA_KEEP_ALIVE The duration that models stay loaded in memory (default "5m")
OLLAMA_MAX_LOADED_MODELS Maximum number of loaded models per GPU
OLLAMA_MAX_QUEUE Maximum number of queued requests
OLLAMA_MODELS The path to the models directory
OLLAMA_NUM_PARALLEL Maximum number of parallel requests
OLLAMA_NOPRUNE Do not prune model blobs on startup
OLLAMA_ORIGINS A comma separated list of allowed origins
OLLAMA_SCHED_SPREAD Always schedule model across all GPUs
OLLAMA_FLASH_ATTENTION Enabled flash attention
OLLAMA_KV_CACHE_TYPE Quantization type for the K/V cache (default: f16)
OLLAMA_LLM_LIBRARY Set LLM library to bypass autodetection
OLLAMA_GPU_OVERHEAD Reserve a portion of VRAM per GPU (bytes)
OLLAMA_LOAD_TIMEOUT How long to allow model loads to stall before giving up (default "5m")
PandasAI와 결합
- Ollama #1: 비용 걱정 없이 내 컴퓨터에서 제약 없는 LLM 실행하기 | AI&GameDev
- Ollama #6: GPT와 로컬LLM으로 PandasAI의 강력한 데이터 분석 기능 테스트 | AI&GameDev
한국어 사용
- Ollama로 Llama3 실행하기 (2/2): HuggingFace에서 한국어 Llama3 사용하기
- Ollama를 이용한 한글판 로컬 LLM
- Ollama와 한글 LLM모델 로컬설치 :: 팥들었슈
임베딩 모델
- Embedding models · Ollama Blog
- chromadb
Ollama는 임베딩 모델을 지원하므로 텍스트 프롬프트와 기존 문서 또는 기타 데이터를 결합하는 검색 증강 생성(RAG) 애플리케이션을 구축할 수 있습니다.
임베딩 모델이란 무엇인가요?
임베딩 모델은 주어진 텍스트 시퀀스에 대한 의미적 의미를 나타내는 숫자의 긴 배열인 벡터 임베딩을 생성하도록 특별히 훈련된 모델입니다. 결과적으로 생성된 벡터 임베딩 배열은 데이터베이스에 저장될 수 있으며, 이를 비교하여 의미가 유사한 데이터를 검색하는 데 사용됩니다.
양자화(Quantization) 옵션
양자화(Quantization) 옵션은 대규모 언어 모델(LLM)의 메모리 사용량을 줄이기 위한 기술로, Ollama에서는 다양한 양자화 레벨을 제공합니다. 이 옵션들을 통해 GPU 메모리가 제한된 환경에서도 대형 모델을 실행할 수 있습니다.
Ollama의 주요 양자화 옵션:
- Q4_0: 가장 가벼운 양자화 레벨로, 메모리 사용량을 크게 줄이지만 정확도가 다소 손실될 수 있습니다.
- Q4_1: Q4_0보다 약간 더 많은 메모리를 사용하지만 더 나은 정확도를 제공합니다.
- Q5_0: 중간 수준의 양자화로, 메모리와 정확도 간의 균형을 제공합니다.
- Q5_1: Q5_0보다 조금 더 정확하지만 메모리 사용량도 약간 더 높습니다.
- Q8_0: 높은 정확도를 유지하면서 모델 크기를 줄입니다. 더 많은 메모리를 사용하지만 정확도가 가장 높습니다.
- F16: 양자화 없이 반정밀도(half-precision) 부동 소수점을 사용합니다. 메모리 사용량이 가장 많지만 품질 손실이 없습니다.
Ollama에서 양자화된 모델을 사용하는 방법
모델 다운로드 시 양자화 설정 (예: CodeLlama-13b를 Q4_0으로 양자화)
또는 Modelfile에서 직접 설정
메모리 사용량을 줄이기 위해 Ollama에서 --quantize
옵션을 사용하여 양자화된 버전을 실행하는 것도 고려해 볼 수 있습니다.
Ollama Turbo
Ollama 대안 및 비교
- ollama
- 발전속도 - 빠른 발전 속도를 보이고 있으며, 활발한 커뮤니티 지원을 받고 있습니다.
- 강점 - 사용 편의성, 다양한 모델 지원, 효율적인 리소스 관리
- 약점 - 일부 고급 최적화 기능에서는 vLLM에 비해 제한적일 수 있음
- vLLM
- 발전속도 - 학술적 배경을 바탕으로 빠르게 발전 중이며, 성능 최적화에 중점을 두고 있습니다.
- 강점 - 고성능 추론, 메모리 효율성, 대규모 배치 처리
- 약점 - 설정의 복잡성, ollama에 비해 사용자 친화적이지 않을 수 있음
- LocalAI
- 발전속도 - 꾸준히 발전하고 있으며, 다양한 모델 지원에 초점을 맞추고 있습니다.
- 강점 - 다양한 모델 유형 지원 (텍스트, 음성, 이미지), Docker 기반 쉬운 배포
- 약점 - 일부 최신 최적화 기술에서 vLLM이나 ollama에 뒤질 수 있음
- FastChat
- 발전속도 - 활발한 발전을 보이고 있으며, 다양한 오픈소스 모델 지원에 주력하고 있습니다.
- 강점 - 다양한 오픈소스 모델 지원, 웹 UI 제공
- 약점 - ollama에 비해 리소스 관리 측면에서 덜 최적화될 수 있음
See also
- LLM
- llama
- LangChain - LLM을 외부와 연결해주는 라이브러리
- Open WebUI
- LM Studio
- ollama - 사용 편의성, 다양한 모델 지원, 효율적인 리소스 관리
- vLLM - 고성능 추론, 메모리 효율성, 대규모 배치 처리
- LocalAI - 다양한 모델 유형 지원 (텍스트, 음성, 이미지)
- FastChat - 다양한 오픈소스 모델 지원, 웹 UI 제공
- Dolphin MCP
- Microsoft AutoGen - 차세대 LLM 어플리케이션을 위한 프레임워크
Favorite site
-
Ollama web site-> Ollama web site -
Github - jmorganca/ollama - Github - ollama/ollama
- ChatGPT 플러스 결제를 중단하는 이유? - YouTube - 노마드 코더 Nomad Coders
- 09. 올라마(Ollama) - <랭체인LangChain 노트> - LangChain 한국어 튜토리얼🇰🇷
- Ollama 사용법: 설치부터 로컬 LLM 모델 실행까지