Building Agentic RAG Without the Guesswork
You've probably built a basic RAG pipeline before: embed some documents, stuff them into a vector store, retrieve the top-k chunks, and hand them to an LLM. It works fine until someone asks a vague question, or the first retrieval misses, or you need the system to remember what was said two turns ago. That's where most tutorials stop and things get messy. Agentic RAG for Dummies is a project that tries to bridge that gap—it's a modular, agent-driven RAG system built on LangGraph, with the kind of features (query clarification, self-correction, conversation memory) you'd actually want in something beyond a demo.
What It Does
At its core, this is a retrieval-augmented generation system where LangGraph coordinates the full workflow: retrieval, reasoning, and the decisions in between. Instead of a straight-line pipeline, an agent orchestrates the steps, which is what makes the fancier behaviors possible.
The repository is built around two paths. There's an interactive notebook that walks you through the concepts step by step—good if you're new to Agentic RAG or just want to experiment fast. And there's a modular project where each component can be swapped independently: the LLM provider, the embedding model, the PDF converter, and the agent workflow itself. The runnable app is Ollama-first, but examples are included for Anthropic, OpenAI, and Google. The stack is Python 3.11+, LangGraph 1.2+, and Qdrant as the vector database.
Why It's Cool
The feature list reads like a checklist of things that annoy you about naive RAG, which is a good sign.
-
Hierarchical indexing is a smart design choice. The system searches small chunks for precision but retrieves larger parent chunks for context. You get the best of both—accurate matching without starving the LLM of surrounding information.
-
Query clarification is the standout. The system can rewrite ambiguous queries or pause and ask you for details. It's human-in-the-loop by design, which is refreshing when so many agent projects assume the model will just figure it out.
-
Self-correction means the agent re-queries automatically when initial results aren't good enough. Combined with context compression (keeping working memory lean across long retrieval loops), you get a system that can iterate without ballooning its token usage.
-
Multi-agent map-reduce decomposes complex queries into parallel sub-queries. If you've ever watched a single retrieval struggle with a multi-part question, this is the answer.
-
Conversation memory maintains context across questions, so you're not re-explaining yourself every turn.
There's also observability via Langfuse (LLM calls, tool usage, graph execution) and evaluation with RAGAS metrics. Those two are easy to skip when you're prototyping and painful to add later, so having them built in from the start is a practical win. The project is MIT-licensed and listed on the awesome-langgraph list, if that matters to you.
How to Try It
The quickest route is the Colab notebook—no local setup required:
- Open the interactive notebook and run through it to see the concepts in action.
- If you want the full modular app, clone the repo:
git clone https://github.com/giovannipasq/agentic-rag-for-dummies
cd agentic-rag-for-dummies
- Follow the installation and usage section in the README. The app defaults to Ollama, so you'll want that running locally—or you can adapt it to Anthropic, OpenAI, or Google using the included examples.
- Check the troubleshooting section if something doesn't connect on the first try (vector DB config and LLM provider settings are the usual suspects).
The repository is at github.com/giovannipasq/agentic-rag-for-dummies.
Final Thoughts
This isn't a production framework—it's a learning resource and a reference architecture, and it's honest about that. The name says "for dummies," but the feature set is more sophisticated than plenty of "serious" RAG repos out there. If you've built a basic RAG pipeline and hit the wall of vague queries and shallow retrieval, this is a solid place to see how the pieces fit together and to borrow the architecture for your own project. Start with the notebook, then take what you need from the modular version.
Follow @githubprojects for more developer tools and open source projects.