RAG: Retrieval Augmented Generation
LLM ko apna knowledge base do � hallucination zero, accuracy hero!
Why Learn RAG?
RAG se LLM apne knowledge base se answer deta hai � hallucination kam hota hai, fresh data milta hai. Production AI systems mein sabse zyada use hota hai.
Samjho, LLM ko library mein bitha diya � ab woh kitabon se jawab dega, yaad se nahi!
Concept Grid
RETRIEVAL
Fetch relevant documents from knowledge base
"Data dhoondna � jaise library mein book dhundhte ho"AUGMENTATION
Add retrieved context to the user query
"Context add karna � sawal ke saath kitab ka page bhi do"GENERATION
LLM generates answer using augmented context
"Answer banana � ab LLM sab kuch padh ke jawab dega"EMBEDDING
Convert text to vector representation for search
"Numbers mein convert karna � taaki computer samjhe"How RAG Works
User Query
→
Retrieve Docs
→
🔧
Augment Query
→
LLM Generate
→
Answer
RAG vs Fine-tuning
Dono ka fark samjho:
COMPARISON
# Fine-tuning: Model ko naya skill sikhaate ho
# Jaise: Bachhe ko French padhna sikhaana
# Result: Model naya skill seekh leta hai
# Limitation: Sirf training data tak limited
# RAG: Model ko library card dete ho
# Jaise: Bachhe ko library ka access dete ho
# Result: Model kitabon se padh ke answer deta hai
# Advantage: Naya data aaya✓ Library mein daal do!
# Practical Example:
# Company ka internal FAQ system
# - Fine-tune: Har naya question pe retrain karo ?
# - RAG: Naye docs daal do, auto-update ?
RAG Pipeline Components
Ek complete RAG system mein ye sab hota hai:
ARCHITECTURE
# 1. Document Store
# - PDFs, HTML, TXT, Database records
# - Chunking: Bade documents ko chhote pieces mein todo
# 2. Embedding Model
# - Text ✓ Vector (numbers)
# - Examples: all-MiniLM-L6-v2, text-embedding-ada-002
# 3. Vector Database
# - Vectors store karo + search karo
# - Examples: FAISS, Pinecone, Weaviate, ChromaDB
# 4. Retrieval Logic
# - Query embed karo
# - Similar documents dhoondo
# - Top-K results lo (jaise top 3)
# 5. LLM with Context
# - Prompt mein context daalo
# - LLM se answer generate karao
Code Example: Simple RAG
PYTHON
# Simple RAG with FAISS
from sentence_transformers import SentenceTransformer
import numpy as np
# Knowledge base
documents = [
"DSWallah ek learning platform hai",
"Python beginner ke liye best hai",
"Machine Learning se predictions hoti hain",
"Data Science mein statistics important hai",
]
# Embed
model = SentenceTransformer('all-MiniLM-L6-v2')
doc_embeddings = model.encode(documents)
# Query
query = "Kya sikhein data science mein?"
query_embedding = model.encode(query)
# Search
similarities = np.dot(doc_embeddings, query_embedding)
best_idx = np.argmax(similarities)
print(f"Most relevant: {documents[best_idx]}")
print(f"Query: {query}")
print("Answer based on retrieved context!")
Production RAG with LangChain
PYTHON
from langchain.document_loaders import PyPDFLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.embeddings import OpenAIEmbeddings
from langchain.vectorstores import FAISS
from langchain.chains import RetrievalQA
from langchain.llms import OpenAI
# 1. Load documents
loader = PyPDFLoader("company_manual.pdf")
documents = loader.load()
# 2. Split into chunks
splitter = RecursiveCharacterTextSplitter(
chunk_size=1000,
chunk_overlap=200
)
chunks = splitter.split_documents(documents)
# 3. Create vector store
embeddings = OpenAIEmbeddings()
vectorstore = FAISS.from_documents(chunks, embeddings)
# 4. Create QA chain
qa_chain = RetrievalQA.from_chain_type(
llm=OpenAI(),
retriever=vectorstore.as_retriever()
)
# 5. Ask questions!
answer = qa_chain.run("Company ka leave policy kya hai?")
print(answer)
Interactive Editor
Apna RAG system build karo � code edit karo aur Run dabao!
RAG Playground
Output
Run code dekhne ke liye...
Exercise
Check Your Understanding
RAG kya hai?