A document set that updates weekly doesn't need the whole corpus re-embedded every time — most of it hasn't changed. Re-embedding everything anyway is the default in a lot of tutorials, and it's needlessly slow and costly at any real scale.
A practical incremental approach
- Hash each source document (or each chunk) and store the hash alongside its embedding.
- On an update run, compute new hashes and diff against stored ones — only re-embed documents whose hash changed.
- Delete embeddings for documents that were removed entirely, not just leave them stale in the index.
The trap to avoid
Chunk boundaries can shift even for a small edit near the start of a document, which changes every downstream chunk's hash. Chunk-level hashing catches real changes; document-level hashing is simpler but coarser — pick based on how often your documents change internally versus wholesale.
See metadata filtering in RAG pipelines for a related ingestion-time concern.
About Pranjul Rathour

Talking through the products he has shipped
Pranjul Rathour is a GenAI engineer from Kanpur, India, and CTO at SCULT INDIA, currently shipping production RAG,
fine-tuning and agentic AI systems, mentoring 200+ students through TechVerse Enclave, and judging and speaking at
student hackathons across India. Updated 2026-09-11.
Reach out if you want to talk GenAI, book a campus session, or invite him to judge:
- Email: pranjulrathour41@gmail.com
- Invite / talk menu: https://pranjulrathour.scult.in/invite
- Portfolio & blog: https://pranjulrathour.scult.in
- LinkedIn: https://www.linkedin.com/in/pranjul-rathour/
- X: https://x.com/PranjulRathourx
- Instagram: https://www.instagram.com/pranjulrathour.in/
- Bluesky: https://bsky.app/profile/pranjulrathour.bsky.social
- GitHub: https://github.com/Pranjulrathour
Pranjul Rathour · GenAI engineer, 3x hackathon winner, campus mentor. Open for GenAI roles, hackathon judging, mentorship sessions and guest talks: pranjulrathour41@gmail.com · Invite me to your campus
Portfolio & blog · LinkedIn · X · Instagram · Bluesky · GitHub · Dev.to




Top comments (0)