Analysis updated 2026-05-18
Upload your own documents and ask questions grounded in that content using Naive RAG.
Compare Advanced, Modular, GraphRAG, Agentic, and Hybrid RAG side by side on the same documents.
Use GraphRAG to answer questions that require connecting facts across multiple documents.
Run everything against a local Ollama model to avoid a paid AI API subscription.
| jaimeirazabal1/rag-architectures | autolearnmem/automem | billy-ellis/exr-imageio-poc | |
|---|---|---|---|
| Stars | 32 | 32 | 32 |
| Language | Python | Python | Python |
| Setup difficulty | moderate | hard | moderate |
| Complexity | 4/5 | 5/5 | 3/5 |
| Audience | developer | researcher | researcher |
Figures from each repo's GitHub metadata at analysis time.
Requires Docker Compose and either an API key or a locally running Ollama model.
This project implements six different approaches to a technique called RAG (Retrieval-Augmented Generation) in Python, each running as a separate web service. RAG is a method for making AI language models answer questions using your own documents rather than relying only on what the model learned during training. The basic idea is: when a user asks a question, the system first searches your documents for relevant passages, then passes those passages to the AI as context so it can give a grounded, sourced answer instead of guessing. The six implementations are built as standalone services, each in its own folder and Docker container, and each exposing the same two main endpoints: one to upload and index documents, one to ask questions. They run on separate port numbers so you can run multiple at once and compare them. The simplest version (Naive RAG) converts documents into numerical vectors using a local embedding model and answers questions by finding the most similar chunks of text. The Advanced RAG version adds three improvements: it rewrites the user's question into a clearer form before searching, uses a second model to re-rank the search results by relevance, and stores documents in a two-level hierarchy so searches use small chunks while answers use their larger parent context. The Modular RAG version is designed so each processing step can be swapped out independently. GraphRAG builds a knowledge graph from the documents, which helps answer questions that require connecting information across multiple sources. Agentic RAG uses an autonomous reasoning loop where the AI decides which tools to use and in what order to build its answer. Hybrid RAG combines two different search methods (one semantic, one keyword-based) and merges the results, which balances finding conceptually similar text with finding exact term matches. All six services share common code for document chunking, text embedding, and calling an AI model. The project connects to any AI provider that follows the OpenAI API format, including locally running models via Ollama, making it usable without a paid API subscription. Setup uses Docker Compose. The README is written in Spanish.
Six standalone Docker services showing different ways to make AI answer questions using your own documents.
Mainly Python. The stack also includes Python, Docker, Docker Compose.
Unknown, the explanation does not state a license.
Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.