Skip to content

Overriding the Defaults

Your operator sets platform defaults for everything on Settings (/app/settings). Every field there is unset until you touch it, and an unset field follows the default — including when the operator changes it later. Overriding pins your own value and stops inheriting.

That is the whole mental model: unset = follow the platform, set = pin mine. Each field shows the inherited value next to it, so you can see what you are moving away from before you move.

Save is not apply

Saving stores your overrides. They take effect only after Dry runApply reload in the Apply changes panel at the bottom of the page. Some changes warn that they need re-embedding and require you to acknowledge the cost first.

Only override with a reason. The defaults are tuned for the deployment, and a pinned value is one you now own — it will not improve when the platform's does.

Runtime

Ingestion throughput

FieldWhat it doesRaise it when
Ingest workersParallel workers draining the ingest queue.Indexing is slow and your embedding provider has headroom. Costs provider concurrency.
Ingest queue capacityChunks buffered before push/batch starts rejecting.Clients see rejections during bulk pushes. A full queue is backpressure, not an error.
Max chunks per batchLargest batch one push/batch call may carry.Your client batches aggressively and is being rejected.
Max request bytesLargest ingest request body accepted.You push large files and see request-size rejections.

Raising workers and queue capacity together is usually the right move; raising workers alone just moves the bottleneck onto the provider.

Embedding

FieldWhat it does
Embedding rate limitEmbedding calls per minute. Set this below your provider's limit, not at it — bursts and retries need the headroom.
Embedding cache entriesHow many embeddings stay in memory to avoid re-embedding identical text. Larger cache, fewer duplicate calls, more memory.

If you brought your own provider on the Models page, the rate limit here should match that account's quota, not the platform's.

Search quality

FieldWhat it does
RRF kThe reciprocal-rank-fusion constant that blends vector and lexical results. Larger flattens the weighting between them.
Query expansionExpands a query into variants before searching. Better recall, at one extra model call per search.
Minimum relevanceDrops results the reranker scored below this, 0 to 1. 0 keeps everything.

Minimum relevance has a prerequisite: it needs a reranker. Without one, scores are relative to each query and a fixed cutoff means nothing. Two more details worth knowing before you tune it — the best result is always returned even if it falls below the floor, and the comparison happens against the reranker's own score before the path-type weighting search applies afterwards, so a result can display slightly below the floor it actually passed.

Per-workspace relevance

The relevance floor can be overridden per workspace, not just globally. Use this when one workspace has systematically different content — a documentation corpus and a code corpus rarely want the same cutoff. Pick the workspace from the dropdown rather than typing its id.

Database sync

Rows per embedding batch controls how many database rows a sync embeds per call. Larger means fewer round trips and a faster sync at the same token cost. It is deliberately separate from the chunk batch above, because rows are short and code chunks are not.

Semantic extraction

These govern Pass 3 — the optional LLM step that infers relations the parser cannot. They are the fields that most directly move your bill.

FieldWhat it does
Semantic extractionOff means no LLM calls for graph extraction at all. The deterministic parser keeps working; inferred relations stop being added. The single biggest cost lever.
Max tokens per extractionCeiling on the response for one call. Directly bounds cost per chunk.
Confidence thresholdProposed relations scoring below this are discarded. Higher means fewer, better edges.
Max edges per extractionMost relations one chunk may contribute, whatever the model proposes.
Minimum text lengthChunks shorter than this are skipped — too little context to extract anything worth keeping.
Stream responsesConsume model output as it arrives.
Extraction workersParallel extraction workers. More throughput, more concurrent provider calls.
Queue capacityChunks waiting for extraction before work is shed to the backlog.
Backlog entries / Backlog max ageHow many shed chunks are retained for retry, and for how long.

Turning extraction off is reversible and does not damage what you have: the deterministic graph (contains, defines, imports, calls, implements) is built without an LLM and stays. You lose only the inferred edges.

Database sources

The per-source tuning on this page — row policies, row indexing, ontology classes — is covered in Connecting a Database, because it only makes sense alongside the connection itself. Adding a source and changing its connection string happen on Connections; removing one happens here.

When an override was a mistake

Clear the field. An empty field is unset, which resumes inheriting the platform default — there is no separate "reset" action. Then save and apply as usual.

Released under the Private Beta License.