Quiz: Real-World Projects
30 questions about building production RAG applications.
Q1: What's the first step in a Document Q&A project?
Answer: PDF loading and text extraction using document loaders.
Q2: Why use ConversationalRetrievalChain?
Answer: To maintain conversation history across multiple questions.
Q3: How to show source citations?
Answer: Use return_source_documents=True and display metadata.
Q4: What's Streamlit useful for in RAG?
Answer: Quick UI development for chat interfaces and file uploads.
Q5: How to handle multiple PDFs?
Answer: Process each separately and add to the same vector store with metadata.
Q6: What's a sync service in enterprise KB?
Answer: Background service that regularly pulls data from sources like Confluence/Notion.
Q7: How to implement department-based access?
Answer: Store department in metadata and filter queries by user's department.
Q8: What's the purpose of a feedback loop?
Answer: Collect user ratings to identify and improve weak areas of the system.
Q9: How to version documents in KB?
Answer: Store version info in metadata and track changes over time.
Q10: What's multi-tenancy?
Answer: Serving multiple customers from one platform with data isolation.
Q11: Two main approaches to tenant isolation?
Answer: Namespaces (separate partitions) or metadata filtering (tenant_id field).
Q12: What should be tracked for billing?
Answer: Queries, tokens used, documents indexed, storage used.
Q13: How to customize RAG per tenant?
Answer: Store config (model, temperature, prompts) per tenant and apply at runtime.
Q14: What's rate limiting for?
Answer: Preventing one tenant from consuming all resources.
Q15: How to handle tenant onboarding?
Answer: Create namespace, initialize config, set up billing, provide API keys.
Q16: What UI framework works well with Python RAG?
Answer: Streamlit for quick prototypes, React/Next.js for production.
Q17: How to persist chat history?
Answer: Use memory classes (ConversationBufferMemory) or database storage.
Q18: What's the benefit of return_source_documents?
Answer: Users can verify answers and understand where information came from.
Q19: How often should sync service run?
Answer: Depends on freshness needs - typically hourly or daily.
Q20: What metadata should docs have for KB?
Answer: Source, author, date, department, version, document type.
Q21: How to handle document deletion?
Answer: Remove from vector store by ID and update metadata database.
Q22: What's RBAC in enterprise RAG?
Answer: Role-Based Access Control - permissions based on user roles.
Q23: How to implement admin view?
Answer: Bypass department filters for admin role users.
Q24: What's the tenant config store for?
Answer: Storing per-tenant settings like model choice, prompts, limits.
Q25: How to scale multi-tenant RAG?
Answer: Load balancing, horizontal scaling, Kubernetes deployment.
Q26: What monitoring is needed for SaaS RAG?
Answer: Per-tenant latency, error rates, usage, and costs.
Q27: How to handle tenant data backup?
Answer: Regular automated backups with tenant isolation.
Q28: What's a usage dashboard for?
Answer: Showing tenants their usage, costs, and performance metrics.
Q29: How to implement custom prompts per tenant?
Answer: Store prompt templates in config and apply at query time.
Q30: What's the final project deliverable?
Answer: A complete, deployable RAG application with documentation.
🎉 Congratulations!
You've completed all 10 modules of the RAG Systems Complete course!