Ollama
General AI model hosting. Everything else in the stack that reasons, embeds or reads an image talks to it.
- Source: https://github.com/ollama/ollama
- License: MIT
- Alternatives: vLLM, LocalAI, LM Studio
Models
You do not pick models here. Model choice is global and lives in the Model Selection block of
.env.shared, filled in from a VRAM tier table by the question quest asks on first run — see
Configuration → Models.
The models are pulled for you: the 10-ollama-* … 14-ollama-* decree migrations run as soon as
ollama answers /api/tags, and the Core quest copies them in. If you skipped that, pull manually:
./existential.sh run ollama pull-models
Migration 11 rebuilds the chat tag with num_ctx=EXIST_MODEL_CHAT_NUM_CTX (65536), because
ollama otherwise serves a much smaller default context and truncates silently — which reads
as the model forgetting its instructions rather than as an error. Hermes refuses to start below
64,000 tokens.
A running instance keeps the context it was loaded with, so after a rebuild evict it:
./existential.sh run ollama unload
Where it runs
EXIST_OLLAMA_URL (and the per-role EXIST_OLLAMA_URL_CHAT|_EXTRACT|_EMBED|_VISION) decide which
machine serves each role, so the models can live on a different box than the rest of the stack.
The ollama.<domain> Caddy hostname follows the same value. Details:
Configuration → Endpoints.
For GPU setup, see Proxmox GPU.
Diagnostics
./existential.sh run ollama test # reachability, model presence, num_ctx, KV headroom
./existential.sh run ollama benchmark # decode speed as context grows