This is a full-stack application (FastAPI backend, React frontend) that builds knowledge graphs from unstructured data using LLMs. It ingests documents from local files, S3, GCS, web pages, YouTube, and Wikipedia, chunks them, extracts entities and relationships via LangChain's LLMGraphTransformer, and stores the graph in Neo4j. The system provides a chatbot interface with multiple retrieval modes (vector, graph, hybrid, fulltext, community search), post-processing capabilities (community detection, duplicate merging, vector indexes), and RAGAS-based evaluation metrics. The architecture is a monolithic backend with a single FastAPI app and a React SPA frontend, orchestrated via Docker Compose. External dependencies include Neo4j, multiple LLM providers (OpenAI, Gemini, Anthropic, etc.), and optional cloud storage integrations. The codebase is actively maintained with recent commits and issue triage, and shows low technical drift despite some aspirational model names and minor duplication.
Cognee is an open-source AI memory platform that enables agents and applications to build, store, and query persistent knowledge graphs from documents, code, and conversations. The system provides a Python SDK, a FastAPI REST API, a CLI, a Next.js frontend, and an MCP server for agent integration. Core operations include ingesting data (remember), extracting entities and relationships via LLMs or GLiNER (cognify), retrieving context (recall), and self-improvement loops (improve). The architecture is modular with adapter/registry patterns for graph databases (Ladybug, Neo4j, Turso), vector stores (LanceDB, PGVector), LLM providers (LiteLLM, OpenAI, Anthropic, Ollama), and integrations (Slack, GitHub, Google Drive). The frontend provides a dashboard for dataset management, knowledge graph visualization, and business analytics. The project also includes an evaluation framework for benchmarking retrieval strategies against standard datasets like HotpotQA and BEAM. While production-grade in many areas, some components are marked as demo-quality or have cloud-only stubs.
VeritasGraph is a comprehensive, governed GraphRAG and agent framework for building enterprise-grade knowledge graphs with verifiable attribution. The repository contains a core Python library (VeritasReason) for knowledge graph construction, semantic extraction, reasoning, provenance tracking, and export, along with multiple domain-specific applications: a HIPAA-safe clinical knowledge graph pipeline (clinical-kg), a floorplan extraction and validation web app (floorplan-kg), a municipality incident reporting chatbot, and a Model Context Protocol (MCP) server for IDE integration. The architecture is modular, with a plugin-based method registry pattern, unified configuration management, and a pipeline orchestration engine. While the primary character is an application framework, it also includes research-oriented components such as clinical benchmarks (MedKG-Signal) and evaluation suites, making it a hybrid project with a strong application focus.
This repository is a comprehensive, educational collection of 42+ Jupyter notebooks and runnable scripts demonstrating a wide array of Retrieval-Augmented Generation (RAG) techniques. It is primarily a data_research and educational resource, not a deployable application or library. The codebase serves as a practical cookbook for engineers and researchers, covering the full RAG stack from basic chunking and retrieval (e.g., simple RAG, BM25) to advanced methods like GraphRAG, Self-RAG, HyDE, RAPTOR, and agentic RAG. It also includes a dedicated evaluation framework with notebooks and reusable scripts for measuring faithfulness, relevance, and correctness using tools like DeepEval and custom LLM judges. The architecture is modular, with a shared helper_functions.py providing common utilities for PDF loading, embedding, and retrieval, and an evaluation/ module offering reusable evaluation pipelines. The runnable scripts in all_rag_techniques_runnable_scripts/ provide cleaner, class-based implementations of the techniques that are more suitable for integration into other projects than the notebooks themselves. While the code is well-structured for an educational project and demonstrates high craftsmanship in its reusable components, it is not designed for production deployment. Reproducibility is limited by the lack of a pinned dependency file and reliance on external API keys. The repository is actively maintained and highly influential (29k+ stars), making it a valuable reference for anyone building or evaluating RAG systems.
This repository is a comprehensive Chinese-language educational tutorial and codebase for Retrieval-Augmented Generation (RAG) systems, created by Datawhale. It systematically covers the full RAG stack from fundamentals (data loading, chunking, embeddings) to advanced techniques (hybrid search, query construction, Text2SQL, reranking, agentic RAG, and Graph RAG). The code is organized by chapter, with runnable Python scripts demonstrating each concept using popular frameworks like LangChain, LlamaIndex, and LangGraph, alongside vector databases (Milvus, FAISS) and graph databases (Neo4j). While primarily an educational resource, the repository contains several well-crafted, reusable components such as a minimal Text2SQL agent framework, a clean LangGraph-based agentic RAG pattern, and a custom ColBERT reranker. The practical application is a Chinese recipe Q&A system ('尝尝咸淡'), which serves as a consistent domain for demonstrating various RAG techniques. The codebase is hybrid in nature, blending structured educational content with functional demo applications. The repository is actively maintained with a large community following. However, users should be aware of technical drift risks including vendored model code, hardcoded API dependencies, and the presence of AI-generated code sections. The core value lies in its structured curriculum and reusable RAG patterns rather than as a production-ready system.
Hyper-RAG is a hypergraph-driven Retrieval-Augmented Generation (RAG) system designed to reduce LLM hallucinations by modeling beyond-pairwise correlations in domain knowledge. The repository provides both a Python library (`hyperrag`) and a full-stack web application with a FastAPI backend and React frontend. The core innovation is the use of hypergraphs to represent complex relationships among entities, outperforming traditional graph-based RAG methods like Graph RAG and Light RAG. The system supports multiple query modes: hyper (full hypergraph), hyper-lite, graph, naive, and direct LLM, with streaming responses. Architecture: The Python library (`hyperrag/`) implements the RAG pipeline: text chunking, entity extraction via LLM, hypergraph construction, vector embedding storage (NanoVectorDB), and query execution. The web UI (`web-ui/`) consists of a FastAPI backend (`main.py`) exposing REST endpoints for file upload, database CRUD, and HyperRAG queries, plus a React frontend with Ant Design and Graphin for interactive chat, hypergraph visualization, and settings management. Docker Compose orchestrates the frontend, backend, and Nginx reverse proxy. Key entry points: `hyperrag/hyperrag.py` (HyperRAG class), `service_api.py` (standalone API), `web-ui/backend/main.py` (FastAPI app). External dependencies include OpenAI/Azure/Bedrock LLM APIs, NanoVectorDB, tenacity, aiofiles, and various Python packages. The system is configurable via `config_temp.py` and `settings.json`. Data flows: Raw text (uploaded or provided) is chunked, entities and relationships are extracted via LLM, hyperedges are constructed, and embeddings are stored. Queries are processed by selecting relevant hyperedges and entities, constructing a context, and generating a response. The system caches LLM responses and supports real-time logging via WebSocket during embedding.
This repository is a tutorial and research exploration of Graph RAG (Retrieval-Augmented Generation) combining vector databases (Weaviate) and knowledge graphs (RDF/SPARQL). It contains Jupyter notebooks that demonstrate building knowledge graphs from PubMed articles, World Bank documents, and Netflix movies, comparing vector search and structured query performance for retrieval-augmented generation. A Streamlit app provides an interactive demo for medical article search with MeSH term refinement and LLM summarization. The code is primarily educational, with reusable query modules for Weaviate, RDF, and Databricks, but lacks dependency pinning and has hardcoded credentials, limiting reproducibility. The repository is hybrid, with both application (Streamlit app) and data research (notebooks, datasets) elements, but the dominant character is data research as the core value lies in the experimental notebooks and data pipelines.