RAG Techniques

Active
GitHub Jupyter Notebook NOASSERTION

Description

NirDiamant's RAG_Techniques repository systematically collects and demonstrates cutting-edge retrieval-augmented generation techniques and engineering practices.

Key Features

  • Systematic taxonomy — techniques organised by simple / advanced / modular levels for targeted learning
  • Runnable notebooks — every technique ships with a Jupyter notebook and minimal runnable code
  • Evaluation & comparison — retrieval quality and answer quality evaluation scripts with visualisation
  • Multi-backend — implementations spanning LangChain, LlamaIndex, Haystack and more
  • Continuously updated — tracks academic and industry progress, regularly adds new methods
  • Teaching-friendly — accompanying articles, tutorials and companion book on Amazon

Use Cases

💡 Systematically learning advanced RAG techniques and engineering practices
💡 Comparing and evaluating RAG approaches for internal technology selection
💡 Copy-pasting notebook snippets directly into production projects
💡 Using as teaching material for internal RAG training programmes
💡 Bridging latest RAG research with open-source implementations

Categories

Quick Start

# Clone the repo
git clone https://github.com/NirDiamant/RAG_Techniques.git
cd RAG_Techniques

# Create a virtual environment
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt

# Launch Jupyter
jupyter notebook

# Pick any technique notebook in all_rag_techniques/ and run it

Related Projects