Rag And Retrieval easy
An internal RAG assistant indexes HR documents, some of which only managers may read. All employees use the same assistant. Where should access control be enforced?
- A In the retrieval query, filtering chunks by the user's ACL before they ever reach the prompt.
- B After generation, by scanning the answer and redacting text drawn from restricted documents.
- C In the system prompt, instructing the model never to reveal content the user cannot access.
- D At ingestion only, by skipping restricted documents so that they are never embedded at all.
Answer: A. In the retrieval query, filtering chunks by the user's ACL before they ever reach the prompt.
**Permission filtering must happen before or during retrieval**, because once restricted text is in the prompt, the model can paraphrase or leak it in ways no post-filter catches. The cost is storing ACL metadata on every chunk and keeping it in sync. Option B fails because paraphrased content slips past redaction; option D is safe but would only be right if no user, including managers, ever needed those documents.
One system design question a day, with spaced repetition so the ones you miss come back.
Get the appRelated questions
- You must index 100M chunks using a 3,072-dimension embedding in fp32, served from RAM via HNSW. The raw vectors alone take about 1.2 TB before graph overhead. You need to cut memory several-fold while losing at most a point or two of recall@10. Which approach fits?
- A multi-tenant SaaS app stores all tenants in one vector index with a tenant_id field. Queries fetch the top 20 chunks by similarity and then drop chunks from other tenants. Small tenants often get 0-2 results. Why does this happen, and what is the fix?
- Runbooks are split into fixed 300-token chunks with no overlap. When a procedure step starts near the end of one chunk and finishes in the next, answers come back incomplete. What is the lowest-cost fix?
- Your offline eval shows recall@5 of 92% on a labeled set, so the gold passage is in the context for nearly every question. Yet human graders mark 35% of answers wrong, and the wrong answers often ignore or contradict the gold passage. Where should the team invest next?
- Your product requires every RAG answer to include clickable source citations that users can verify. How should those citations be produced?
- A runbook RAG system uses fixed 500-token chunks with no overlap. Users who ask for a multi-step recovery procedure get answers that stop at step 4 of 9, and retrieval logs show the top hit ends mid-procedure. What is the most targeted fix?