LangChain for RAG
LangChain is the most popular framework for building RAG applications. It provides modular components for document loaders, text splitters, embeddings, vector stores, retrievers, and LLMs – all chainable together.
LangChain simplifies RAG: load → split → embed → store → retrieve → generate.
Basic RAG Pipeline with LangChain
from langchain.document_loaders import PyPDFLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.embeddings import OpenAIEmbeddings
from langchain.vectorstores import Chroma
from langchain.chains import RetrievalQA
from langchain.chat_models import ChatOpenAI
# Load
loader = PyPDFLoader("doc.pdf")
docs = loader.load()
# Split
splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50)
chunks = splitter.split_documents(docs)
# Embed and store
embeddings = OpenAIEmbeddings()
vectorstore = Chroma.from_documents(chunks, embeddings)
# Retrieve and generate
llm = ChatOpenAI(model="gpt-3.5-turbo")
qa_chain = RetrievalQA.from_chain_type(llm, retriever=vectorstore.as_retriever())
answer = qa_chain.run("What is the main topic?")Key LangChain Components for RAG
- Document Loaders: PDF, text, web, CSV, etc.
- Text Splitters: Recursive, semantic, markdown.
- Embeddings: OpenAI, Hugging Face, Cohere.
- Vector Stores: Chroma, FAISS, Pinecone.
- Retrievers: Multi‑query, ensemble, parent document.
- Chains: RetrievalQA, ConversationalRetrievalChain.
LCEL (LangChain Expression Language)
Modern way to compose chains with pipe syntax.
from langchain_core.runnables import RunnablePassthrough
retriever = vectorstore.as_retriever()
rag_chain = ({"context": retriever, "question": RunnablePassthrough()}
| prompt | llm | output_parser)When to Use LangChain
Best for production RAG systems, wide ecosystem, and when you need many integrations. Steeper learning curve but most powerful.
Two Minute Drill
- LangChain provides modular components for every RAG step.
- Standard pipeline: load → split → embed → store → retrieve → generate.
- Use `RetrievalQA` chain for simple Q&A.
- LCEL offers flexible, composable pipelines.
Need more clarification?
Drop us an email at career@quipoinfotech.com
