AI engineeringData
Knowledge search your staff can rely on
An assistant that answers from your own files is quick to demo and slow to earn trust. Trust rests on five qualities you can design and keep testing: access rights, sources, currency, admitted gaps and measured quality.
- By
- FromNine editorial team
- Published
- Reading time
- 6 min read
Key takeaways
- Apply access rights for each user at the moment of retrieval, taken from the source systems. Once a passage is in the model’s context, you cannot count on it staying hidden.
- Each claim in an answer should lead to a passage that a reader can open and verify within seconds, with its date and status shown.
- Test retrieval and answers against genuine questions before go-live and keep testing afterwards, because your content and the models both keep changing.
Contents
Why the demo convinces and production does not
Nearly every knowledge assistant uses one pattern, retrieval-augmented generation (opens external site): look up the passages that fit a question, then let a language model compose an answer based on them. Point it at a tidy folder of fifty documents and it impresses within days.
Real estates are messier. Think of a State agency with two decades of network drives, circulars, intranet pages, case notes and guidance, much of it duplicated, superseded or restricted. There the assistant can fail twice over. A wrong answer makes people give up on it. A wrong answer delivered confidently is worse, because people act on it.
So reliability depends less on the model than on five qualities of the system built around it. Each one can be designed, and each one can be tested.
Access rights: only what this user may open
The principle fits in one line: never show a person a passage they could not open in the system it came from. Where you enforce that is the hard part. Anything that reaches the model can end up in the answer, so rights have to be applied before generation, during retrieval, for the person asking.
OWASP ranks sensitive information disclosure (opens external site) and vector and embedding weaknesses (opens external site), such as leaks between permission groups, among the main risks of language model applications. For a build team that translates into four rules.
- Attach the source document’s access rights to every chunk in the index, read from the source system instead of being rebuilt by hand.
- Filter by those rights at query time with the signed-in user’s identity, before ranking and before the model sees anything.
- Sync permission changes at least as fast as content changes, and agree how quickly a withdrawn right must stop working.
- Test with actual roles. Whether a new clerical officer can surface the pay scales is a test case, not a lesson for the incident review.
Sources a reader can check
Every claim should lead back to its passage: title, version or date, owner, and a link that lands on the right spot. Display the passage, not just the file name, so the reader sees at a glance whether it backs up the sentence. Where a policy exists in Irish and English, cite the version the reader asked in, and link the other.
Shape the answer so that unsupported wording is obvious. When no retrieved passage backs a sentence, the system drops it or flags it. Check that automatically too, by comparing each cited passage with the claim it is meant to support and sampling the results for review by a person. A citation that is present but proves nothing is a frequent failure, and an easy one to miss.
Currency and the authoritative source
Organisations keep many versions of the same rule. Last year’s travel and subsistence circular and this year’s both match a question about mileage rates, and they disagree. Index what separates them: effective date, status (draft, approved, superseded) and owner. Put current approved material first, leave superseded versions out unless someone asks for the history, and show the date in each citation.
Agree for each subject which source wins. HR policy comes from the HR portal, not from an email quoting an older copy. Set how often each source is re-indexed, from close to real time for case data to once a day for an intranet, and watch it: an outdated index gives answers that look plausible and are wrong.
Admitting a gap
Sometimes the best answer is that there is no answer. Language models can produce smooth statements that nothing supports, which NIST’s generative AI profile calls confabulation (opens external site). Grounding the model in retrieved passages lowers that risk without removing it. OWASP also lists the consequence, people acting on false output, as a risk of its own under misinformation (opens external site).
Pick a relevance threshold under which the assistant says it found no reliable source and points to who can help. On questions of policy, entitlement or obligation, stop the model from filling holes with general knowledge. Track how often it declines, per topic. Early on, that list is frequently the most valuable thing the project delivers, because it shows content owners precisely where guidance is missing.
What the pipeline looks like
You do not need unusual technology for any of this. You need access rights, metadata and checks to be built into the pipeline from the start, not bolted on once the demo has impressed.
Figure 1
Illustrative workflowRead the diagram as text
Content is collected from the source systems with its access rights and its metadata, such as date, status and owner, and then indexed.
A question comes in together with the signed-in user’s identity. A rights filter takes out every passage this user cannot open, before the model sees anything.
The model drafts a cited answer from what is left. A grounding check tests each statement against its passage. The user gets either an answer with sources or a plain message that no reliable source exists.
Treat personal data deliberately. Indexing documents still counts as processing the personal data inside them, so the GDPR principles of purpose limitation and data minimisation (opens external site) in Article 5 apply, under the supervision of the Data Protection Commission. Exclude sources the use case does not need, make sure a deletion in a source system also reaches the index, and cover the index when you handle a subject access request. Keep the index hosted in the EU.
Quality you measure, before go-live and after
A handful of questions tried in a meeting tells you nothing about reliability. Set quality criteria with the content owners and measure every layer on its own, so a problem points to its fix.
| Layer | What you ask | How you check |
|---|---|---|
| Retrieval | Were the right passages returned? | Recall and precision on a labelled set of genuine questions |
| Grounding | Does each citation support its statement? | Automatic statement-to-passage checks with sampled review by people |
| Answer | Is it accurate, complete and of use? | Subject experts score a sample against agreed criteria |
| Access | Did anyone see what they should not? | Rights tests for each role, rerun on every connector or index change |
| Use | Do people depend on it, and where does it let them down? | Feedback, declined answers per topic, follow-up questions, escalations |
Draw the test set from questions people really ask: search logs, service desk tickets, what new starters want to know. A few hundred questions with answers agreed by the content owners is a sound beginning. Rerun all of them after each change, whether a new model, a different chunking approach or an extra source. Quality slips quietly as content changes, and only a stable test set shows the slippage.
How reliability shows up for the reader
For staff, all of the above becomes a few things they can see for themselves. Answers come only from documents they are entitled to open. Each claim carries a source they can click. They can tell how recent that source is. They hear plainly when no reliable answer exists. And they can flag a wrong answer and watch it get corrected, which tells them someone is measuring.
Answers will still be wrong at times, and some questions belong with a colleague rather than a search box. Being open about that does not weaken the assistant. It is the reason people trust it with everything else.
Sources
- arXiv. Lewis et al. (2020), Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks (accessed )
- OWASP GenAI Security Project. LLM02:2025 Sensitive Information Disclosure (accessed )
- OWASP GenAI Security Project. LLM08:2025 Vector and Embedding Weaknesses (accessed )
- OWASP GenAI Security Project. LLM09:2025 Misinformation (accessed )
- National Institute of Standards and Technology. NIST AI 600-1, Generative AI Profile of the AI Risk Management Framework (accessed )
- EUR-Lex. GDPR, Regulation (EU) 2016/679, Article 5 (accessed )
Continue reading
- ServiceAI Engineering & GenAIRetrieval, model choice, evaluation and LLMOps, so generative AI keeps working once real users arrive.
- SolutionEnterprise knowledgeAnswers drawn from your own circulars, procedures and manuals, limited to what each person is cleared to see, each backed by a source.
- InsightWhen an AI agent must wait for a personAgents can draft nearly any action. How to decide which steps they finish alone and which wait for sign-off by a person, for Irish organisations.
- InsightThe AI Act for Irish public bodies: the 2026 Act, the AI Office and December 2027Ireland now has its Regulation of Artificial Intelligence Act 2026 and an AI Office. What already applies, what high-risk use requires from December 2027, and a dated plan for departments, agencies and councils.
Want your own documents to answer questions?
We build knowledge assistants on the sources you already have, with access rights, citations and a test set agreed with your content owners in the first sprint.