Rag And Retrieval medium
You want to move a 20M-chunk index to a new, higher-quality embedding model. An engineer proposes embedding only new and changed documents with the new model and leaving existing vectors in place. What should you do instead?
- A Re-embed the full corpus into a parallel index, compare retrieval metrics, then cut over queries atomically.
- B Embed only new and changed documents with the new model, since incremental upserts keep the index fresh.
- C Keep the old vectors and embed each query with both models, then average the two query vectors before searching.
- D Embed new docs with the new model and project old vectors into the new space by padding them to its dimension.
Answer: A. Re-embed the full corpus into a parallel index, compare retrieval metrics, then cut over queries atomically.
Vectors from different embedding models live in **incompatible spaces**, so a mixed index produces meaningless similarity scores. A parallel re-embed doubles storage and costs a full embedding pass during the migration, but it allows a safe A/B comparison and an atomic cutover. Incremental upsert is correct for content changes under the same model, not for a model change.
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?