Awesome RAG
π Awesome list of Retrieval-Augmented Generation (RAG) applications in Generative AI.
Install / Use
npx skills add Danielskry/Awesome-RAGInstalls into whichever agent you are using.
README
π Awesome Retrieval Augmented Generation (RAG)
A curated resource map of tools, frameworks, techniques, and learning materials for building Retrieval-Augmented Generation (RAG) systems. This repository catalogs the RAG ecosystem and provides links to authoritative sources, tutorials, and implementations to help you explore and build RAG applications.
Also available as an Agent Plugin for VS Code, GitHub Copilot CLI, and Claude Code.
Overview
Retrieval-Augmented Generation (RAG) is a sophisticated technique in Generative AI that enhances Large Language Models (LLMs) by dynamically retrieving and incorporating relevant context from external knowledge sources during the generation process. Unlike traditional LLMs that rely solely on pre-trained knowledge, RAG systems enable models to access up-to-date, domain-specific, or proprietary information, significantly improving accuracy, reducing hallucinations, and enabling real-time knowledge integration.
Key Benefits
- Reduced Hallucinations: Grounds responses in retrieved factual information
- Domain Adaptation: Enables LLMs to work with specialized knowledge without fine-tuning
- Real-time Updates: Incorporates latest information without model retraining
- Cost Efficiency: More economical than fine-tuning for domain-specific tasks
- Transparency: Provides source attribution for generated content
- Privacy & Security: Keeps sensitive data in private knowledge bases
Content
- βΉοΈ General Information on RAG
- ποΈ Architecture Patterns
- π― Advanced Approaches
- π§° Frameworks that Facilitate RAG
- π Python Ecosystem for RAG
- π οΈ Techniques
- π Metrics & Evaluation
- πΎ Databases
- π Platform-Specific RAG Implementations
- π Production Considerations
- π‘ Best Practices
βΉοΈ General Information on RAG
RAG addresses a fundamental limitation of LLMs: their static knowledge cutoff and inability to access external information. Traditional RAG implementations employ a retrieval pipeline that enriches LLM prompts with contextually relevant documents from a knowledge base. For example, when querying about renovation materials for a specific house, the LLM may have general renovation knowledge but lacks details about that particular property. An RAG system can retrieve relevant documents (e.g., blueprints, material specifications, local building codes) to provide accurate, context-aware responses.
Implementation Resources
Python Tutorials & Examples
- Complete basic RAG implementation in Python: Full-stack RAG example with LangChain and Chroma
- LangChain RAG Tutorial: Comprehensive guide to building RAG applications
- LlamaIndex RAG Tutorial: Getting started with LlamaIndex for RAG
- Haystack RAG Pipeline: Building RAG pipelines with Haystack
- RAG Techniques: A comprehensive open-source collection of advanced Retrieval-Augmented Generation techniques as runnable Jupyter notebooks.
- RAG Interview System: A RAG-powered interview preparation system with 418 curated Q&A pairs (Basic β Advanced) covering 29 RAG architecture patterns.
Production & Best Practices
- Production RAG patterns and best practices: Production-ready RAG optimization strategies
- LangChain Production Guide: Deploying LangChain applications to production
- Python Async Best Practices: Writing efficient async Python code for AI applications
ποΈ Architecture Patterns
RAG systems can be architected using various patterns depending on requirements:
- Naive RAG: Basic retrieve-then-generate pipeline without optimization
- Advanced RAG: Incorporates query rewriting, re-ranking, and context compression
- Modular RAG: Composable components for retrieval, ranking, and generation
- Agentic RAG: LLM-driven agents that make retrieval decisions dynamically
- Self-RAG: Models that self-reflect on retrieval quality and adjust strategies
- Graph RAG: Leverages knowledge graphs for structured information retrieval
- Reasoning-Based RAG: Uses multi-step LLM reasoning to plan, navigate, and execute retrieval
π― Advanced Approaches
RAG implementations vary in complexity, from simple document retrieval to advanced techniques integrating iterative feedback loops, multi-agent systems, and domain-specific enhancements. Modern approaches include:
- Vision-RAG: Embeds entire pages as images, allowing vision models to handle reasoning directly without parsing text-RAG.
- Cache-Augmented Generation (CAG): Preloads relevant documents into a modelβs context and stores the inference state (Key-Value (KV) cache).
- Agentic RAG: Also known as retrieval agents, can make decisions on retrieval processes.
- A-RAG: Agentic RAG with hierarchical retrieval interfaces (keyword, semantic, chunk-level), enabling LLM agents to autonomously search and retrieve at multiple granularities. (Paper)
- Corrective RAG (CRAG): Methods to correct or refine the retrieved information before integration into LLM responses.
- Retrieval-Augmented Fine-Tuning (RAFT): Techniques to fine-tune LLMs specifically for enhanced retrieval and generation tasks.
- Self Reflective RAG: Models that dynamically adjust retrieval strategies based on model performance feedback.
- RAG Fusion: Techniques combining multiple retrieval methods for improved context integration.
- Temporal Augmented Retrieval (TAR): Considering time-sensitive data in retrieval processes.
- Plan-then-RAG (PlanRAG): Strategies involving planning stages before executing RAG for complex tasks.
- GraphRAG: A structured approach using knowledge graphs for enhanced context integration and reasoning.
- Code-Graph-RAG: A knowledge graph RAG system for multi-language codebase analysis.
- FLARE - An approach that incorporates active retrieval-augmented generation to improve response quality.
- GNN-RAG: Graph neural retrieval for large language modeling reasoning.
- Multimodal RAG: Extends RAG to handle multiple modalities such as text, images, and audio.
- VideoRAG: Extends RAG to videos using Large Video Language Models (LVLMs) to retrieve and integrate visual and textual content for multimodal generation.
- REFRAG: Optimizes RAG decoding by compressing retrieved context into embeddings before generation, reducing latency while maintaining output quality.
- InstructRAG: Enhances RAG systems through instruction-based fine-tuning using self-synthesized rationales to improve retrieval and generation quality.
- PageIndex: A vectorless, reasoning-based RAG framework that builds hierarchical document trees and performs retrieval through LLM-guided tree search rather than embeddings and vector similarity. Eliminates chunking and vector databases while providing explainable, context-aware retrieval for complex professional documents.
π§° Frameworks that Facilitate RAG
- Haystack: LLM orchestration framework to build customizable, production-ready LLM applications.
- LangChain: An all-purpose framework for working with LLMs.
- Semantic Kernel: An SDK from Microsoft for developing Generative AI applications.
- LlamaIndex: Framework for connecting custom data sources to LLMs.
- Dify: An open-source LLM app development platform.
- Cognita: Open-source RAG framework for building modular and production ready applications.
- Verba: Op
Related Skills
node-connect
385.5kDiagnose OpenClaw Android, iOS, or macOS node pairing, QR/setup code, route, auth, and connection failures.
blender-python-addon
40.5kBlender Python add-on rules for operators, panels, properties, registration, testing, and API-safe scripting
flutter-development-guidelines-cursorrules-prompt-file
40.5kCursor rules for Flutter development with MVVM architecture, Riverpod state management, Material widgets, and Dart style guidelines.
commit-push-pr
140.7kCommit, push, and open a PR
Security Score
Audited on Aug 8, 2026
