Grounding
Grounding means an answer is produced from supplied material and can be traced back to it. The test is not whether the answer sounds right — an ungrounded model is fluent by design — but whether you can point at the sentence it came from. Without that, a business answer and a confident guess are indistinguishable until a customer acts on the wrong one.
Grounded, plausible, and the gap between them#
A model trained on the public internet can produce a delivery policy for your business that reads perfectly and is entirely invented, because it has read thousands of delivery policies. Fluency is evidence of nothing. The two statements below are indistinguishable in tone and completely different in kind.
| Answer | Origin | What happens when it is wrong |
|---|---|---|
| Orders placed before 4pm ship the same day. | Retrieved from the workspace's own Knowledge | It is not wrong; if the policy changes, the source changes and so does the answer |
| Orders placed before 4pm ship the same day. | Produced from the model's general knowledge of retailers | A customer is told a commitment nobody made, and the business honours it or explains itself |
This is why grounding is a control rather than a quality improvement. It does not make answers better prose. It makes wrong answers detectable, and it makes the boundary between 'we know this' and 'we do not' something the system can act on.
What grounding requires in practice#
- Supplied material that is actually authoritative. A knowledge base full of drafts grounds an answer in a draft.
- Retrieval that finds the relevant part for this specific question, rather than everything on the topic.
- An instruction that binds the answer to it — answer from what is supplied, and say so when it is not there.
- A route for 'I do not know' that is treated as a correct outcome rather than a failure to be prompted away.
- A trace — which source, which fact — kept with the answer, not reconstructed afterwards.
Does Connect use grounding?#
Used, and it is a condition of drafting rather than a post-check. The engine's loop is triage, then ground, then draft, then decide: material is assembled from Knowledge and from the workspace's Facts before any reply text exists, and the ordering matters — a draft written first and checked afterwards is a draft that has already chosen its claims.
Knowledge sources are what a workspace supplies as authoritative (knowledge_bank.py); a Fact is one grounded statement extracted from a source or a conversation (knowledge.py). Both are visible on the Knowledge screen and both are editable, which is the part that matters operationally: when a grounded answer is wrong, the fix is a change to the source that changes every future answer, not a correction typed into one reply.
Connect grounds without a vector database and without embedding search — the retrieval is structural and the budget is small and fixed. Retrieval-augmented generation has the mechanism, and grounding an answer without pretending to have a vector database explains the reasoning.
How grounding fails#
- Retrieved the wrong passage
- The answer is grounded, traceable, and about last year's policy. Grounding guarantees provenance, not relevance.
- Grounded on part of the answer
- The first two sentences come from a source and the third is filler. This is the most common failure and the hardest to see, because the citation on the paragraph looks like a citation on every sentence.
- Stale source
- The material is authoritative and out of date. Grounding does not have an opinion about time; a review date does.
- Contradictory sources
- Two documents disagree and the model picks one silently. The honest behaviour is to surface the conflict rather than resolve it invisibly.
- Nothing retrieved
- The safe outcome is a stated gap and, where it matters, an item for a person. The unsafe one is a fluent answer with no source at all.
Questions#
Is grounding the same as citing a source?
A citation is the visible half. Grounding is the constraint that the answer was produced from that material in the first place. A citation attached to text the model wrote from its own general knowledge is worse than no citation, because it transfers unearned confidence to the reader.
What does Connect do when the Knowledge does not cover a question?
It says so rather than filling the gap. Depending on the channel and the autonomy rule, the unanswered question can become an item for a person, which is the outcome you want: an uncovered question is information about your knowledge base, and answering it invisibly destroys that information.
Does grounding stop unsupported claims completely?
No. It removes the largest category and makes the rest checkable. Partial grounding, stale sources and wrong-passage retrieval all survive it, which is why unsupported claims is a separate page with its own controls.