ollama
무엇인가
Ollama는 로컬 하드웨어에서 대규모 언어 모델을 내려받아 실행하는 단일 바이너리 런타임이다. 클라우드 API 키 없이 가중치를 자기 디스크에 두고 추론하는 계열에 속하며, 모델 획득부터 서빙까지를 한 도구 안에서 처리한다.
어떻게 동작하나
실행 파일은 ollama serve로 상주 데몬을 띄우고, CLI는 그 데몬에 요청을 보내는 클라이언트로 동작한다. 추론은 llama.cpp 백엔드가 담당하고 GGUF 형식 가중치를 읽는다. 모델은 ollama.com/library 레지스트리에서 pull로 받아 로컬에 캐시되며, Modelfile에 시스템 프롬프트·템플릿·샘플링 파라미터를 적어 파생 모델을 만들 수 있다. 외부 프로그램은 기본 11434 포트의 REST API로 생성·임베딩·모델 관리를 호출한다.
무엇과 다른가
llama.cpp를 직접 빌드해 쓰는 방식과 달리 모델 획득, 양자화 선택, 프로세스 관리를 하나의 명령으로 묶는다. vLLM처럼 다중 사용자 처리량을 겨냥한 서빙 서버가 아니라 워크스테이션 한 대에서 모델을 돌리는 데 맞춰져 있다. 모델 정의를 파일로 남겨 재현할 수 있고, 같은 데몬을 여러 클라이언트가 공유한다.
어떻게 쓰나
설치 후 ollama run <모델>로 대화를 시작한다. Claude Code, Codex, Copilot CLI, OpenCode 같은 코딩 도구에 연결하는 통합 실행 명령이 따로 있고, OpenClaw를 거쳐 메신저 채널에 붙일 수 있다. Python과 JavaScript 라이브러리가 REST API를 감싼다.
전제와 한계
지원 아키텍처는 llama.cpp가 구현한 범위로 한정된다. 모델 파라미터 수에 비례해 RAM 또는 VRAM이 필요하고, 컨텍스트 길이와 양자화 수준이 실제 사용량을 좌우한다. macOS, Windows, Linux, 그리고 ollama/ollama Docker 이미지로 배포된다.
관련 논문 1
유사 도구
- llama.cppC/C++로 작성된 LLM·VLM 추론 엔진이다. ggml 위에서 GGUF 양자화 모델을 CPU·GPU로 실행하며 외부 의존성이 없다.
- llamafilellama.cpp와 Cosmopolitan Libc를 결합해 LLM 가중치와 추론 런타임을 단일 실행 파일로 묶는 로컬 실행기다. 설치 없이 여러 운영체제와 CPU 아키텍처에서 구동된다.
- lemonade로컬 GPU와 NPU에서 LLM·음성·이미지 모델을 실행하고 OpenAI·Anthropic·Ollama 호환 API로 노출하는 C++ 추론 서버다.
- harborDocker Compose로 Ollama·llama.cpp·vLLM 백엔드와 Open WebUI·SearXNG·ComfyUI를 한 명령에 묶어 띄우는 Python CLI다.
- bifrost23개 이상 LLM 제공자를 하나의 OpenAI 호환 API로 중계하는 Go 기반 AI 게이트웨이다. 5천 RPS에서 요청당 11µs 오버헤드를 추가한다.
- trpc-agent-goGo로 프로덕션 에이전트 시스템을 만드는 프레임워크다. 그래프 워크플로, 도구 호출, 메모리, A2A·AG-UI·MCP 연동, 평가, OpenTelemetry 관측성을 한 스택에 담는다.