# NirDiamant/Controllable-RAG-Agent

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

Repository: https://github.com/NirDiamant/Controllable-RAG-Agent
Canonical: https://ross.abutalabs.com/products/controllable-rag-agent
Language: Jupyter Notebook
License: Apache-2.0
License Family: permissive
Topics: advanced-rag, agent, llm, rag, langchain, langgraph, openai, python, genai, llms
Last push: 2026-06-04T19:09:07+00:00

## Health v2 (maintenance only)
Score: 63/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 85, release rhythm 35, longevity 63
- inputs: {"age_days": 882, "days_push": 90, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1621, forks 268 (observed 2026-08-28T04:05:12.472837+00:00)

## What it is
A tutorial repository demonstrating an advanced, controllable RAG agent for complex question answering, built with a deterministic graph-based algorithm using LangGraph and LangChain. It is delivered as Jupyter notebooks that show how to answer non-trivial questions from your own data beyond simple semantic similarity retrieval.

## Use cases
- build a RAG agent that answers complex questions from my own documents
- learn how to use langgraph to control an autonomous RAG pipeline
- implement graph-based routing for retrieval-augmented generation
- go beyond simple semantic similarity retrieval for question answering
- study an advanced RAG agent implementation in python
- make my RAG system more controllable and deterministic

## When to choose
- you want to learn advanced, controllable RAG patterns through runnable notebooks
- your questions require multi-step reasoning that naive similarity retrieval fails at
- you use the LangChain/LangGraph/OpenAI ecosystem and want a reference implementation

## When to avoid
- you need a production-ready, maintained RAG library rather than educational notebooks
- you want a framework-agnostic or non-OpenAI solution out of the box
- you need a simple plug-and-play RAG service with an API

## Facets
- artifact type: learning-resource
- maturity: active
- function: rag, agent-framework, llm-inference, nlp
- domain: large-language-models
- platform: python
- tags: langgraph, langchain, advanced-rag, tutorial, notebook, controllable-agent, graph-based-retrieval, retrieval-augmented-generation, ai-agents, natural-language-processing

## Member repositories
- NirDiamant/Controllable-RAG-Agent (main) score 63

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:12.472837+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:49:04.096744+00:00, confidence not recorded.
  - readme: https://github.com/NirDiamant/Controllable-RAG-Agent (fetched 2026-08-28T04:05:12.472837+00:00, sha b787929013dc)
- Data as of 2026-08-30T08:39:29.467469+00:00.
