All case studies

RAGOps Studio.

Production-Oriented Agentic RAG Platform

A full-stack knowledge system with inspectable hybrid retrieval, governed document versions, tenant-aware access and source-grounded answers.

Area
Retrieval
Implementation focus
React workspace, FastAPI services, hybrid retrieval, document revisions, citations and evaluation.
What you can inspect
Try local retrieval, inspect every stage, and compare a reproducible 24-query evaluation.

Follow an answer back to its source.

Try real retrieval over a fictional workspace. Example questions use BM25, Dense and RRF; answers are labeled fixture replay.

Demo WorkspaceSafe demo
12 documents
Synthetic reference corpus · No customer data · No external AI calls

Examples: real BM25 + Dense + RRF, using precomputed embeddings. Free text: real BM25. Answers: fixture replay only.

Choose an example or run a query.

Every answer should have a trail.

Run a query to inspect its retrieved evidence.

One project. Two scopes.

The embedded sandbox isolates retrieval for easy inspection. The full application covers ingestion, accounts and document governance.

Portfolio sandbox

LIVE
BM25 for free text; Dense + RRF for four examples using precomputed MiniLM embeddings.
FIXTURE REPLAY
Authored answers appear only when their citation passages are actually retrieved.
EVALUATION
24 synthetic queries with measured Recall@5 and MRR@5.

Full implementation

APPLICATION
Ingestion, access checks, document revisions, citations and retrieval evaluation.
LOCAL PROFILE
Rule-based routing, feature-hashing vectors, lexical reranking and extractive answers.
OPTIONAL PROVIDERS
Learned embeddings, model reranking, external generation and vector databases.
Inspect runtime profiles →

The problem

Useful retrieval is more than finding similar text. An answer needs current sources, the right access scope, inspectable citations and a way to distinguish a retrieval failure from an unsupported answer.

How the pieces fit

The repository supports a deterministic local profile and optional LangGraph / model / vector-store integrations. The portfolio demo is a separate synthetic, browser-local experience—not a running deployment of that backend.

Key engineering decisions

Retrieve inside an authorized snapshot

The retriever starts from the principal’s permitted, current document snapshot. Index hits outside that snapshot are rejected before reranking or answer generation.

Separate retrieval stages

Dense retrieval and BM25 feed reciprocal rank fusion, followed by reranking. Provider interfaces separate the deterministic local profile from optional learned embeddings and rerankers.

Treat sources as versioned records

Immutable document revisions, content hashes and an atomic active-version switch make citations inspectable. SQLite is the current document store; Milvus and Qdrant are optional vector backends.

Bound the agentic loop

The workflow distinguishes direct, clarify and retrieve routes, limits follow-up searches and stops when evidence cannot support an answer. LangGraph is an optional workflow engine.

Reliability & failure handling

Citations must survive validation

Answers are checked against server-bound chunk IDs and current source revisions. Unverifiable grounding is not treated as a successful answer.

Configuration mismatch fails explicitly

Embedding and index fingerprints prevent accidental reuse of incompatible vectors. Missing optional providers do not silently become a successful live integration.

Evaluate what is actually measurable

Deterministic retrieval evaluation with Recall@K, MRR and nDCG@K; keyword coverage is also implemented. The public repository exposes retrieval-oriented evaluation artifacts; no production accuracy or Faithfulness score is claimed.

Evidence & scope

Source links are pinned to the reviewed revision so you can follow each implementation detail.

What this case establishes

Production-oriented reference implementation. Public source and synthetic examples are inspectable; production-model accuracy is not asserted.

Continue exploringTestKit