embabel embeddings
Whether documents can be indexed, and with what.
embabel embeddings show # on or off, and whyembabel embeddings use local # ~1.1GB, runs here, nothing leaves the machineembabel embeddings use hosted # uses the provider key you already gaveembabel embeddings off # no model; document features go offAn appliance ships without an embedding model. The local one is about 1.1GB and needs
Docker Model Runner, which is a Docker Desktop feature — so requiring it made every first
run pay for a capability many people never touch, and ruled out plain Docker Engine
entirely, where docker model is not a command at all.
So document features are off, not broken, and the difference is the point: upload
answers 409 with one sentence naming the command that fixes it, rather than accepting a
document it cannot index or returning an empty search that looks like an empty world.
Everything else — the graph, realms, views, handlers, chat — works untouched.
First-run setup offers this and defaults to no, so knowing the capability exists costs nothing.
The choice is sticky. Vectors already stored were made by whichever model made them, and a vector index is built at that model’s width — so changing the model re-embeds everything already indexed. The appliance does that properly (drop the indexes, re-embed each store, rebuild at the new width, roll back on failure), but it is not free, and a first choice on an empty appliance is the cheap moment to make it.
use local composes in embeddings-local-<mode>.yml, which is the only thing that
requires Model Runner. Without it, nothing in the compose files mentions it.
use hosted writes a ROLE, not a model name, and the difference is load-carrying. The
appliance image ships no provider starters, so a model name like text-embedding-3-small
matches nothing registered and resolves to the setup-required placeholder — document
features would stay off with nothing saying why. A role is resolved per call against
whichever key the appliance holds, so it means “embed with the key I gave you” and keeps
meaning that if you later swap providers. use openai still works and sets the same role;
so does typing a known hosted model name.

