build(docker): granite is the standalone stack's default embedding model

settings.EMBEDDINGS_NAME still defaults to mpnet so an upgraded deployment
keeps its index; new installs only get granite because setup.sh writes it to
.env. The standalone compose always starts on fresh volumes, so it defaults
EMBEDDINGS_NAME to granite (overridable from .env or the shell), and the
Docker guide's hand-written .env examples name the model too.
This commit is contained in:
Alex committed 2026-09-06 12:02:42 +01:00
1 parent 03cc60d481
commit 588f110693
2 files changed
+13 -2

No files matched your search

+8 -2
View File
@@ -42,7 +42,9 @@ first use. You do not need the source tree to run them:
`INTERNAL_KEY` is the secret the worker uses to hand finished indexes to
the API; without it every upload fails with a 401. `setup.sh` generates
one for you, a hand-written `.env` has to include it.
one for you, a hand-written `.env` has to include it. This stack runs the
granite embedding model unless `.env` sets `EMBEDDINGS_NAME`; both granite
and mpnet are baked into the image.
3. **Start it:**
@@ -91,9 +93,13 @@ extra packages: `EXTRAS=docling` in `.env`).
LLM_PROVIDER=docsgpt
VITE_API_STREAMING=true
INTERNAL_KEY=<any random string, e.g. openssl rand -hex 16>
EMBEDDINGS_NAME=ibm-granite/granite-embedding-311m-multilingual-r2
```
This minimal configuration tells DocsGPT to use the public API. For more advanced settings and other LLM options, refer to the [DocsGPT Settings Guide](/Deploying/DocsGPT-Settings).
This minimal configuration tells DocsGPT to use the public API. The
`EMBEDDINGS_NAME` line is what `setup.sh` writes for a new install; without
it the code falls back to mpnet, the model earlier releases indexed with,
so that an upgraded deployment keeps its existing index working. For more advanced settings and other LLM options, refer to the [DocsGPT Settings Guide](/Deploying/DocsGPT-Settings).
4. **Launch DocsGPT with Docker Compose:**