Local model management
The Models sidebar tab is a full management surface for the local Ollama catalog, plus a read-only listing of the catalog reachable through your OpenAI-compatible endpoint.
The library
Every installed Ollama model gets a tile showing its name, family and on-disk size. Click a tile to open it in the Models editor, or use New chat on the tile to start a chat in that model. The header and each tile’s ⋯ menu offer:
- Pull model - type a tag (browse them at
ollama.com/library) and press Pull or Enter. Each download gets a progress chip with Ollama’s status line and a progress bar; its ✕ stops the pull, then dismisses the chip once it has finished or failed. Several pulls can run at once; starting one for a tag that is already downloading does nothing (a bare name counts as its:latesttag, sollama3andllama3:latestare the same pull). - Refresh - re-query both provider catalogs. The tab also refreshes each time you open it.
- Customize - open the model in the Models editor, same as clicking the tile.
- Duplicate… - copy the model under a new tag (Loach suggests
<name>-copy) without changes; the copy shares the same weights. If a model already has that tag, Loach asks first - Replace “<tag>”?, “A model with this tag already exists. Duplicating replaces it with this one.” - Delete - after a confirmation, remove the model files from disk. Irreversible. The model is also unpinned wherever it was a default: if Settings → General → Default model named it, that goes back to Use most recent, and a Space that used it as its default model falls back to the general default.
Below the Ollama tiles, an OpenAI section lists your endpoint’s models read-only; it appears only when that listing returned something. If Ollama can’t be reached, its error shows in a banner above the tiles.
A chat set to a model that is still downloading shows a progress banner above the message box (“Downloading <tag> - ready to chat once it finishes.”), and sending is held back with “<tag> is still downloading (43%)” rather than failing with a confusing not-found error.
The Models editor
Opening a model loads its configuration from Ollama into a form. The header shows its family, size, parameter count, quantization and format next to New chat and Delete buttons; the Models › tag breadcrumb above it takes you back. You can:
- Inspect and edit the System prompt (baked in as
SYSTEM; per-chat instructions still win at runtime), the Prompt template (Go-template syntax), the Parameters - grouped into Sampling, Length, Repetition, Performance and Reproducibility, each mapping to aPARAMETERline - and the Stop sequences. Blank fields inherit the base model’s value. Top-K, Context, Max tokens and GPU layers take whole numbers of 0 or more, and Seed any whole number; other input reverts, since a chat with the model couldn’t send it. Show live Modelfile reveals the Modelfile Ollama has for the model. - Save as new model - write your changes as a derived model under the New model tag you type (Loach suggests
<name>-custom), built on the Base model (FROM). Preview Modelfile shows exactly what will be sent. When it finishes, the editor switches to the new model. The base model is left untouched unless you reuse its tag. Saving under a tag that’s already taken - the base model’s own included - makes Ollama replace that model, so Loach asks first - Replace “<tag>”?, with “That’s the base model this one is built from. Saving replaces it with the customized version.” or “A model with this tag already exists. Saving replaces it with this one.” A bare name counts as:latest. Pick an unused tag to keep the original. Models pulled from Hugging Face ashf.co/user/repo:tagcan be saved this way too. Saving works with Ollama 0.5.5 and later, which want the Modelfile split into separate fields; if Loach can’t split it, the save stops with “Couldn’t read the Modelfile: …” and the reason. - Allow thinking step - a per-model default for the Thinking toggle, sitting between the Modelfile default and any per-chat override. Reset returns to the model’s own default. Disabled for models that don’t list a thinking capability. Remembered on this device across restarts.
- New chat - jump straight into a fresh chat in this model.
- Delete - remove the local copy. Irreversible.
Modelfile safety
Save as new model refuses to compile a Modelfile that would smuggle in extra directives via a malicious base tag, system block or template block. The base tag may use letters, digits, ., _ and - in any number of /-separated segments, plus one optional :tag - so llama3.1:8b and hf.co/user/repo:Q4_K_M both pass, while spaces, quotes and empty segments don’t. System and template bodies are rejected if they contain """, which the Ollama parser would treat as an early end-of-block. You get a clear error rather than a quietly corrupted model.
For lightweight customisation, open a model, change just the system prompt and save it under a tag like qwen-coder:my-style - that’s the version that shows up in the chat picker.