diff --git a/services/ai-stack.md b/services/ai-stack.md index 80cd26a..73d5a56 100644 --- a/services/ai-stack.md +++ b/services/ai-stack.md @@ -109,11 +109,30 @@ docker exec ollama ollama pull moondream # or llava:7b / qwen2.5vl:7b / llama3 | `qwen2.5vl:7b` | ~6 GB | Stronger accuracy, needs more RAM/VRAM. | | `llama3.2-vision:11b` | ~7.9 GB | Meta's vision model — heaviest of these four. | -Point any OpenAI-compatible app's vision/image-import feature (e.g. Mealie's -"import recipe from photo") at this stack's Ollama endpoint with the pulled -model as `OPENAI_MODEL` — see Open WebUI → Settings → Connections for the -exact local base URL, or `docker inspect ollama` for the container's address -on `caddy_net`/the compose network. +Point any OpenAI-compatible app's vision/image-import feature at this stack's +Ollama endpoint with the pulled model. For Mealie's "import recipe from +photo" specifically — checked against docs.mealie.io directly, since Mealie +moved this off env vars at some point and old `OPENAI_*` env var guidance +for it is now stale: it's configured live in the UI, not `.env` — +**Group Settings → AI Providers** in Mealie itself, not this stack's +`.env` or `docker-compose.yml`. Add a provider with: +- `base_url`: `http://host.docker.internal:11434/v1` (Ollama publishes on + the host at `0.0.0.0:11434`, and Mealie is a separate compose project + not sharing a network with this stack, so it has to be reached over the + host the same way Caddy reaches bridge-mode services — see Mealie's own + compose: add `extra_hosts: ["host.docker.internal:host-gateway"]` to its + `mealie:` service if that hostname doesn't already resolve there. The + host's real LAN IP works too with no compose edit, just less stable + across DHCP renewals.) +- `api_key`: any non-empty placeholder — required by Mealie's form, ignored + by Ollama. +- model: the vision model just pulled (e.g. `moondream`). + +Then mark that provider as the one used for image recognition (a separate +toggle from the general default-provider setting) — that's what actually +turns on the photo-import feature. No Mealie container restart needed, it +applies live. See Open WebUI → Settings → Connections if you'd rather +confirm the local base URL/model name there first. ## NVIDIA server-GPU generations — capability reference What a given datacenter GPU generation can actually run through this stack