finds.dev← search

// the find

NirDiamant/Controllable-RAG-Agent

★ 1,614 · Jupyter Notebook · Apache-2.0 · updated Jun 2026

This repository provides an advanced Retrieval-Augmented Generation (RAG) solution for complex question answering. It uses sophisticated graph based algorithm to handle the tasks.

A LangGraph-based RAG agent that handles multi-step questions by anonymizing queries, generating a plan, breaking it into subtasks, and verifying answers against source material. Built around a single use case — the first Harry Potter book — with pre-committed FAISS vector stores included in the repo. Aimed at developers learning advanced RAG patterns, not at anyone building production systems.

The query anonymization step is genuinely interesting: stripping named entities before planning reduces LLM bias toward pre-trained knowledge and forces grounding in retrieved content. The Self-RAG-style verification loop (checking that generated answers are supported by retrieved context) is properly cited and actually implemented, not just mentioned. The graph schema diagrams are clear and make the agent's control flow easy to follow before reading a line of code. Including Ragas evaluation out of the box gives you a concrete way to measure whether changes help or hurt.

The committed FAISS index files (.faiss, .pkl) mean the repo ships with baked-in state for one specific book — you can't point it at your own documents without re-running the full ingestion pipeline, which is buried in a Jupyter notebook. Everything lives in two Python files and a notebook; there's no module structure, no tests, and no clear path from 'tutorial' to 'something I can actually use.' The planning and re-planning steps make multiple LLM calls per query with no cost accounting or timeout guards, so a single complex question can get expensive quietly. Last meaningful code activity appears to be 2024; the LangGraph API has moved significantly since then and the dependency pins in requirements.txt will likely conflict with current LangChain versions.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →