Internal Knowledge Retrieval
Question answering over an organisation's own documents, built so every answer cites the source it came from.
- Sector
- Professional services
- Discipline
- AI / ML
- Technology
- Python, OpenAI APIs, PostgreSQL, FastAPI, Docker
The problem
Internal knowledge is spread across documents, wikis and shared drives. Search returns filenames rather than answers, and a language model asked the question directly will answer fluently and sometimes wrongly, with nothing to check it against.
What we built
We built retrieval-augmented question answering over an organisation's own content. Documents are chunked with their structure preserved, retrieved by hybrid search, and answered only from retrieved context. Every answer carries citations, and the system declines rather than guesses when retrieval returns nothing relevant.
Architecture
How the system fits together.
- 01
Ingest
Documents parsed with headings and hierarchy preserved, then chunked so each passage keeps its context.
- 02
Index
Embeddings alongside keyword indexing, enabling hybrid retrieval over both meaning and exact terms.
- 03
Retrieve
Hybrid search with reranking and an explicit relevance floor below which nothing is returned.
- 04
Answer
Answers generated strictly from retrieved passages, with citations, and refusal when context is insufficient.
- 05
Evaluate
A fixed question set scored on retrieval quality and answer groundedness, re-run whenever the system changes.
Outcome
What the system delivers.
Capability delivered, stated plainly. We do not attach business metrics to this work that we are not in a position to verify.
- Answers grounded in retrieved passages, each one cited back to its source document
- An explicit refusal path when retrieval finds nothing relevant
- A repeatable evaluation set, so changes can be measured rather than eyeballed
- Access controls carried through retrieval, so results respect existing document permissions
- Python
- OpenAI APIs
- PostgreSQL
- FastAPI
- Docker