You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/README.md
+17-5Lines changed: 17 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -200,9 +200,9 @@ string, which would only surface later as a provider 401).
200
200
| `splitter.chunk_overlap` | int | `50` | indexer | Overlap (used by `recursive`). |
201
201
| `indexer.fetch_retries` | int | `3` | indexer | Retries (exponential backoff from 1s) of a document's byte fetch before it is given up on: indexed as empty and ERROR-logged. Remote sources fail transiently under bulk backfills. |
202
202
| `indexer.workers` | int | `1` | indexer | Worker **processes** (sharded via `pathway spawn`). Raise for large backfills — each worker carries its own embedding stack (~1 GB with local embeddings); the benchmarks run with `8`. |
203
+
| `workdir_path` | str | `./serviette-workdir` | indexer | serviette's working directory — everything it keeps between runs: the configuration fingerprint at its top level, the Pathway persistence state (and the parse cache, `runtime_calls/`) under `persistence/`. Relative to the process's working directory. Silent default — the wizard does not ask. |
| `persistence.path` | str | `./persistence` | indexer | serviette's data directory: the configuration fingerprint at its top level, the Pathway persistence state (and the parse cache, `runtime_calls/`) under `PStorage/`. Silent default — the wizard does not ask. |
206
206
| `server.host` / `server.port` | str / int | `127.0.0.1` / `8989` | server | Bind address. Loopback by default; set `0.0.0.0` explicitly to listen on all interfaces (containers, remote access) — see [Security](#security--exposing-the-server). |
207
207
| `server.serve_frontend` | bool | `true` | server | Serve the chat UI on `/` from the same port (API stays under `/api/v1`). |
208
208
| `server.cors_origins` | list[str] | `[]` (disabled) | server | Opt-in CORS allowlist for third-party browser frontends calling the API directly from another origin. serviette's own UIs never need it. Prefer exact origins over `*`. |
@@ -367,14 +367,26 @@ the last run, so:
367
367
- **documents removed while the indexer was down are correctly retracted** from
368
368
the vector DB on the next run.
369
369
370
-
The engine's state lives under `<persistence.path>/PStorage/` (the top level of
371
-
`persistence.path`is reserved for serviette's own files, such as the
372
-
configuration fingerprint); the same `PStorage/` also hosts the **parse cache**
373
-
(`runtime_calls/`, via `pw.udfs.DefaultCache` — diskcache, LRU-bounded by
370
+
The engine's state lives under `<workdir_path>/persistence/` (the top level of
371
+
the working directory is reserved for serviette's own files, such as the
372
+
configuration fingerprint — the engine logs an ERROR for every foreign entry
373
+
in the directory it is given, so the two never share a folder); the same
374
+
`persistence/`also hosts the **parse cache** (`runtime_calls/`, via
375
+
`pw.udfs.DefaultCache`— diskcache, LRU-bounded by
374
376
`indexer.parse_cache_size_gb`, default 8): extracted document text stays warm
375
377
across restarts, so unchanged documents are neither re-downloaded nor
376
378
re-parsed. Disabling persistence also disables the parse cache.
377
379
380
+
The **configuration fingerprint** (`<workdir_path>/serviette-fingerprint.json`)
381
+
records the chunking-relevant settings the working directory was indexed with
0 commit comments