RAG (Retrieval-Augmented Generation) combines LLMs with external data retrieval. Instead of relying only on training data, the model retrieves relevant documents before generating answers.
Pipeline: embed documents into vectors (OpenAI embeddings, sentence-transformers), store in vector database (Pinecone, Weaviate, ChromaDB), retrieve top-k similar documents for each query, inject into prompt context.
Vector databases index embeddings for fast similarity search. Cosine similarity measures how close query and document embeddings are.
Chunking strategies: split documents into fixed-size chunks (512 tokens), overlap for context preservation, or use semantic chunking for meaningful boundaries.
Advanced RAG: query expansion, reranking retrieved results, hybrid search (keyword + semantic), and metadata filtering.
Evaluation: measure answer accuracy, retrieval relevance, and hallucination rate. Use RAGAS framework for automated evaluation.
Build RAG apps with LangChain, LlamaIndex, or Vercel AI SDK for rapid prototyping.