Controllable-RAG-Agent
View on GitHubThis repository provides an advanced Retrieval-Augmented Generation (RAG) solution for complex question answering. It uses sophisticated graph based algorithm to handle the tasks.
Reference implementation of a controllable RAG agent where a deterministic LangGraph 'brain' plans, decomposes, retrieves and verifies to answer complex multi-hop questions over PDFs. Uses FAISS vector stores for chunks, chapter summaries and quotes, with Ragas evaluation and a Streamlit visualizer.
Use Cases
Answering complex multi-hop questions over a book or PDF corpusBuilding a controllable retrieval agent with deterministic LangGraph flowChapter-level summarization plus chunk and quote vector storesPreventing hallucinations via content verification and re-planningEvaluating RAG quality with Ragas metrics (faithfulness, recall, correctness)Question anonymization to avoid LLM pre-trained biasReal-time agent visualization with StreamlitStep-by-step RAG agent tutorial via Jupyter notebooks
Built With
- Language
- Jupyter Notebook
- Frameworks
- LangChain · LangGraph · FAISS · Streamlit · Ragas · Docker · Hugging Face · NetworkX
Tags
rag · langgraph · langchain · agentic-rag · graph-based-agent · multi-step-reasoning · hallucination-prevention · faiss · vector-store · evaluation · ragas · question-answering · pdf-processing · chain-of-thought · streamlit · self-rag