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 run → Apply 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.
Model reasoningWhether the model may reason before it answers. Off switches reasoning off wherever the endpoint allows it. See below.
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.

Model reasoning ​

Many current models reason before they answer unless told not to, and for extraction that is mostly cost: a chunk can take several times as long and produce several times the output tokens. With Model reasoning off, the engine asks the model once, with a short probe, whether it reasons, and if it does, finds the switch its endpoint accepts and sends it on every request. Nothing depends on recognising the provider from its name. A model that always reasons cannot be switched off and keeps reasoning.

Turn it on when your documents are complex enough that the extra thinking earns its cost. The platform default is off, and the field inherits it until you set it.

The switch belongs to your semantic model, not only to extraction: the same model writes search syntheses, the SQL for database questions and memory extraction, so those calls follow it too. If you brought your own key, the probe runs with that key, so what your account allows decides what your requests carry and no one else's.

A change here alters the extraction contract, just as a model change does. Dry run says so. Edges already extracted stay as they are; what is extracted after the change follows the new setting.

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.

Documents ​

The Documents section holds your tenant's switch for the document catalog, where your platform lets you choose. It also sets who may read a version no file holds any longer, and the limits on what a workspace may upload with a document. Each is described in Documents.

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.