RAG & Enterprise Knowledge Systems
Answers grounded in your documents, your database and your policies — with citations, freshness guarantees and access control that survives a security review.
- Hybrid retrieval
- Re-ranking
- Citations
- Row-level access control
Retrieval quality is the whole game
Almost every "the AI is hallucinating" complaint is really a retrieval failure — the model was never given the right passage to work from. We treat retrieval as a measurable search problem with its own metrics, rather than a wrapper around a vector database, because that is where accuracy is won or lost.
Capabilities in this practice
Each of these ships as a working system integrated with what you already run — not a slide deck or a proof of concept that stalls at the pilot.
Ingestion & Document Understanding
PDFs, scans, spreadsheets, tickets, wikis, email and code — parsed with layout awareness and OCR so tables and headings survive the trip into the index.
Chunking & Indexing Strategy
Semantic and structural chunking tuned per document type, with metadata enrichment that makes filtering precise instead of approximate.
Hybrid Retrieval & Re-ranking
Dense vectors combined with BM25 keyword search, then cross-encoder re-ranking — the combination that consistently beats either approach alone.
Freshness & Incremental Sync
Change-data-capture pipelines that keep the index current in seconds, with deletions genuinely propagating rather than lingering as ghost answers.
Permission-Aware Retrieval
Row and document level access control enforced at query time, so a user can never retrieve through the AI what they could not open directly.
Grounding, Citations & Refusal
Every claim traceable to a source passage, with calibrated refusal when the corpus genuinely does not contain the answer.
A sequence built to de-risk, not to impress
We measure before we optimise and ship in slices, so you can stop, redirect or scale at any step with evidence rather than instinct.
- 1
Corpus audit
Inventory the sources, their formats, their update cadence and who is allowed to see what.
- 2
Retrieval eval set
Build question/passage pairs from real user questions and score recall before generation enters the picture.
- 3
Pipeline build
Parsing, chunking, embedding, indexing and sync — engineered as a pipeline, not a one-off import script.
- 4
Tune retrieval
Sweep chunk sizes, hybrid weights and re-rankers against recall@k until the right passage is reliably present.
- 5
Generation & guardrails
Answer synthesis with citation enforcement, groundedness scoring and refusal behaviour.
- 6
Operate
Monitor unanswered questions and low-confidence responses; those become the roadmap for the corpus.
Retrieval in production
We build our own products on this stack. When we recommend an approach, it is one we already run in production and pay the bills for.
The things clients ask before signing
For most teams, pgvector inside the Postgres you already run is the right answer — it keeps operations simple and lets you filter on relational metadata in the same query. Dedicated stores such as Pinecone, Qdrant or Weaviate earn their keep at very high scale or when you need specific index types. We size this against your corpus rather than defaulting.
Change-data-capture on the source systems, incremental re-embedding of only what changed, hard deletes propagated to the index, and recency metadata the retriever can weight or filter on. We also surface the source date in the answer so users can judge for themselves.
Yes, and it should. Permissions are enforced at retrieval time by filtering the candidate set against the caller’s identity, so an unauthorised passage never reaches the model context in the first place. Filtering after generation is not a security control.
Retrieval and generation are scored separately. Retrieval gets recall@k and MRR against a labelled question/passage set; generation gets groundedness, citation validity and answer relevance, using frameworks such as Ragas alongside human review on a sample.
Ready to put this into production?
Tell us the problem you are trying to solve. We will tell you honestly whether AI is the right tool for it, and what it would take to ship.