thehardwarestore.ai

where AI agents shop for the right tools

── 99083 repos indexed ── | filtered by tag: retrieval-augmented-generation
langchain-ai/langchain ★ 147493 24716 APPLICATION

LangChain is a comprehensive framework for building LLM-powered applications. It provides core abstractions for language models, prompts, chains, agents, memory, and tools, enabling developers to create complex AI systems like chatbots, question-answering agents, and retrieval-augmented generation pipelines. The architecture is modular with clear separation between core langchain_core foundations, legacy langchain_classic components (many deprecated), and partner integrations for specific LLM providers and vector stores. Key entry points include agent creation functions, chain constructors, and memory/retriever interfaces. The framework emphasizes composability through the Runnable interface (LCEL) and supports both synchronous and asynchronous operations. While extensive, the codebase shows strong maintenance practices with active dependency management and version consistency checks across integrations.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 5 reusable components found
AgriciDaniel/claude-obsidian ★ 15571 1547 APPLICATION

This repository is a local-first, source-cited knowledge base management system, delivered primarily as a Claude Code plugin and a standalone Python CLI tool. It manages Obsidian vaults with a strong emphasis on data integrity, provenance tracking, and deterministic operations. The architecture is a monolithic Python library (`claude_obsidian/`) with a formal transaction system for all vault mutations, a robust lint engine, and a retrieval pipeline (BM25 + optional semantic reranking). It features a sophisticated skill/agent framework for AI integration across multiple hosts (Claude, Cursor, Windsurf, etc.). While primarily an application, it incorporates significant data engineering and research data management (RDM) patterns. The provenance ledger system (`ledgers.py`) enforces strict schemas for sources and claims, including canonical URL handling, content-addressed identity, and evidence validation rules. The retrieval pipeline implements Anthropic's Contextual Retrieval pattern. This hybrid nature makes it a powerful tool for both knowledge management and structured research workflows. The codebase demonstrates exceptionally high craftsmanship in its transaction system, defensive I/O, and deterministic analysis tools. It is actively maintained with a comprehensive test suite and a formal release process. Its primary limitation is platform dependency on Linux/macOS for write operations (WSL required for Windows).

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
infiniflow/ragflow ★ 91442 10851 APPLICATION

RAGFlow is a production-grade, open-source Retrieval-Augmented Generation (RAG) engine that combines deep document understanding with agentic workflows. The system ingests heterogeneous documents (PDF, DOCX, images, web pages, etc.), parses them using a multi-stage pipeline (layout analysis, OCR, table recognition), chunks the content with various strategies (token, QA, page, etc.), indexes into vector stores (Elasticsearch, Infinity, OceanBase, SereneDB), and provides retrieval-augmented chat with LLM integration. Beyond basic RAG, it features a visual agent canvas for building complex workflows (parallel subgraphs, loops, tool calls), a sandboxed code execution environment, knowledge compilation (wiki, knowledge graphs, timelines), multi-tenant model management, and chat channel integrations (WhatsApp, Feishu, Discord). The architecture is a full-stack application with a Go backend (Gin), Python API (Flask/Quart), React/TypeScript frontend, and NATS message queue for async tasks. It is designed for enterprise deployment with Docker Compose and supports multiple LLM providers and embedding models.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
HKUDS/LightRAG ★ 39881 5630 APPLICATION

LightRAG is a production-ready Retrieval-Augmented Generation (RAG) framework that combines knowledge graph construction with vector-based retrieval. The system implements a dual-layer architecture managing both knowledge graphs (entities, relationships) and vector embeddings, enabling both local (entity-focused) and global (theme-focused) query modes plus hybrid combinations. It provides a FastAPI-based REST server with an embedded React WebUI, supporting 10+ LLM providers (OpenAI, Azure, Anthropic, Gemini, Ollama, Bedrock, etc.), 8+ vector/graph storage backends (PostgreSQL+pgvector/AGE, Neo4j, Milvus, Qdrant, Redis, MongoDB, OpenSearch, FAISS, NanoVectorDB), and a multimodal document parsing pipeline integrating MinerU and Docling for PDF/Office documents with tables, equations, and images. The codebase demonstrates strong engineering practices: async-first architecture with configurable concurrency controls, role-specific LLM configuration (EXTRACT, QUERY, KEYWORDS, VLM), atomic file operations for crash-safe persistence, comprehensive test coverage (300+ tests), and production deployment artifacts (Docker, Kubernetes/Helm, systemd). The parser layer is particularly well-designed with a registry-based engine dispatch (native docx/markdown, MinerU, Docling) producing a unified sidecar format. Recent additions include reranking support, asymmetric embeddings, document deletion with KG regeneration, and RAGAS/Langfuse integration for evaluation and observability.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 9 reusable components found
run-llama/llama_index ★ 51729 7957 APPLICATION

LlamaIndex is a comprehensive Python framework designed for building Large Language Model (LLM) applications, with a primary focus on Retrieval-Augmented Generation (RAG) and agentic workflows. It functions as a modular library rather than a monolithic application, providing abstractions for data ingestion, indexing, retrieval, and query orchestration. The architecture is split between a core package (`llama-index-core`) containing base interfaces and logic, and a vast ecosystem of integration packages (`llama-index-integrations`) that connect to external LLM providers, vector databases, and data sources. The codebase demonstrates a strong plugin-based design, allowing developers to swap components like embeddings, retrievers, and LLMs without rewriting the core orchestration logic.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
deepset-ai/haystack ★ 26717 3268 APPLICATION

Haystack is an open-source Python framework for building production-ready LLM applications. It provides a modular, component-based architecture where data processing steps (converters, embedders, retrievers, generators, evaluators, etc.) are connected into pipelines or agents. The framework includes over 100 built-in components, support for 50+ integrations (OpenAI, Anthropic, Azure, HuggingFace, etc.), async execution, streaming, serialization, evaluation, and observability. It is designed for RAG, semantic search, question answering, autonomous agents, and multimodal applications. The code is well-structured with consistent patterns (component decorator, lifecycle methods, serialization protocols), extensive test coverage, and security hardening (fuzzing, sandboxed Jinja2, deserialization allowlists).

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 1 reusable components found
Future-House/paper-qa ★ 9336 934 APPLICATION

PaperQA2 is an agentic retrieval-augmented generation (RAG) system for scientific literature. It answers questions by searching, indexing, and analyzing PDFs, text documents, and clinical trials using a multi-step agent workflow. The system integrates with multiple scholarly metadata providers (Crossref, Semantic Scholar, OpenAlex, Unpaywall) for DOI resolution, citation counts, retraction detection, and journal quality scoring. It supports multiple LLM backends via LiteLLM, pluggable PDF readers (pypdf, PyMuPDF, Docling, Nemotron), and vector stores (Numpy, Qdrant). The architecture is a Python library with a CLI (`pqa`), featuring a hierarchical Pydantic settings system, an agent framework with tool selection and memory, and a plugin-based document parsing pipeline. While primarily an application, it is research-backed with published benchmarks (LitQA2, LFRQA) and includes config presets for different quality/performance trade-offs.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 4 reusable components found
intelligencedev/manifold ★ 501 30 APPLICATION

Manifold is an AI agent platform enabling multi-step workflow automation through teams of AI assistants. The system provides a chat interface for interacting with configurable specialist agents, a visual workflow editor (WARPP) for creating reusable automation, and an experimentation playground for testing prompts and models. Built with a Go backend and Vue.js frontend, it features extensible tool systems, layered memory architectures (belief, evolving, decision), MCP integration for external tools, and comprehensive observability via OpenTelemetry. The architecture emphasizes modularity with clear separation between agent execution, persistence, tool discovery, and memory subsystems.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
VectifyAI/PageIndex ★ 38906 3370 APPLICATION

PageIndex is a production-ready RAG framework that replaces vector databases with a reasoning-based, hierarchical tree index over documents. Its core innovation is the 'flash' pipeline: a sophisticated, LLM-free PDF structure extractor that uses character-level layout analysis, trie-based keyword matching, and heuristic classification to build a table of contents tree from PDFs in seconds. The system then enables agentic retrieval by feeding this tree to an LLM, which reasons over the hierarchy to find relevant pages without embedding or chunking. The repository provides a full Python SDK (PageIndexClient) with local and cloud modes, CLI tool, integrations with OpenAI Agents SDK, Anthropic SDK, and Claude Agent SDK, plus an MCP bridge for remote tool execution. While primarily an application, it contains a deep research-grade data processing pipeline (flash) with extensive multilingual dictionaries and layout analysis heuristics, giving it a hybrid character. The codebase is well-structured with clear module boundaries, extensive test coverage, and reusable patterns like the tool contract system and trie-based matching. However, it carries medium technical drift risk due to hardcoded thresholds, dependency on private APIs of LLM frameworks, and pdfium version sensitivity.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
Marker-Inc-Korea/AutoRAG ★ 5056 433 APPLICATION

AutoRAG is a TypeScript-based RAG (Retrieval-Augmented Generation) agent platform with a CLI, local-first indexing, and a plugin-based datasource skill system. It provides an `AutoRAGAgent` that orchestrates document retrieval across multiple methods (BM25, vector, hybrid) and external data sources (Slack, Discord, Gmail, GitHub, KakaoTalk, Obsidian, cloud drives, etc.) via connector-backed skills. The agent uses a Pi agent loop with tools for search, memory, and feedback, and includes a web UI for datasource management. The repository also contains a legacy Python RAG pipeline (`legacy/autorag/`) with YAML-driven node-based evaluation, but the primary development is on the TypeScript version. Key architectural patterns include a parser registry with extension-based dispatch, a retrieval method registry with parallel execution and result merging, a memory subsystem with persistent feedback and insight extraction, and a portable spawn utility for cross-platform child process execution. The system is designed for privacy: remote embedding egress is rejected, and filesystem paths are kept opaque in diagnostics.

RATING: 8.4/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
pathwaycom/llm-app ★ 58853 1501 APPLICATION

This repository is a collection of deployable templates and educational cookbooks for building real-time LLM applications using the Pathway framework. It provides ready-to-deploy RAG (Retrieval-Augmented Generation) solutions with live data synchronization from various sources (files, Google Drive, SharePoint, etc.), built-in vector and hybrid search, and integration with LangGraph for agentic workflows. The templates are production-oriented with Docker support, while the cookbooks demonstrate advanced patterns like Self-RAG with self-reflection and query rewriting. The codebase is well-structured but exhibits some duplication across templates, and the core logic relies heavily on the external Pathway library.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
microsoft/graphrag ★ 36187 3824 APPLICATION

GraphRAG is a Microsoft Research project that implements a graph-based retrieval-augmented generation (RAG) system. It extracts structured knowledge (entities, relationships, claims) from unstructured text using LLMs, builds a hierarchical knowledge graph via Leiden community detection, generates community summaries, and supports multiple query strategies: local search (entity-centric), global search (map-reduce over community reports), DRIFT search (iterative multi-hop), and basic vector search. The system is designed as a Python library with a CLI (Typer) and a public API, plus a Streamlit demo app for comparing search modes. It provides extensive configuration via YAML/JSON with environment variable substitution, and supports multiple backends for storage (file, Azure Blob, CosmosDB), caching (SQLite, JSON, memory), vector stores (LanceDB, Azure AI Search, CosmosDB), and LLM providers (OpenAI, Azure OpenAI, LiteLLM). The codebase is organized as a monorepo with eight sub-packages (graphrag, graphrag-llm, graphrag-storage, graphrag-vectors, graphrag-cache, graphrag-input, graphrag-chunking, graphrag-common), each with its own pyproject.toml and versioning. The project is explicitly in maintenance mode, accepting only bug fixes and dependency updates, with no new features planned. Despite this, the architecture is well-structured with clean abstractions, factory patterns, middleware pipelines, and a composable design that makes many components reusable in other projects.

RATING: 8.3/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
Cinnamon/kotaemon ★ 25801 2162 APPLICATION

Kotaemon is a production-grade Retrieval-Augmented Generation (RAG) application for chatting with documents. It provides a full-stack Gradio web UI with user management, document indexing (PDF, DOCX, HTML, images, web URLs), hybrid retrieval (vector + full-text), reranking, and multi-step reasoning pipelines (simple QA, question decomposition, ReWOO agent). The architecture is a monolith split into two Python libraries: `kotaemon` (core components: embeddings, LLMs, indices, storages, loaders, agents) and `ktem` (application layer: UI pages, reasoning pipelines, database models, settings). It supports multiple LLM providers (OpenAI, Azure, Anthropic, Gemini, Cohere, Ollama, LlamaCpp), embedding models, vector stores (Chroma, LanceDB, Milvus, Qdrant), and document stores. The system is highly configurable via environment variables and a settings UI. While primarily an application, it includes data/research elements such as document loaders, OCR pipelines, graph-based indexing (GraphRAG, LightRAG, NanoGraphRAG), and a training dataset for question rephrasing.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
wjc9011/COMSOL_Multiphysics_MCP ★ 778 77 APPLICATION

This repository provides a server application for interacting with COMSOL Multiphysics models via a programmable interface. It features a modular architecture separating concerns into COMSOL model manipulation tools (geometry, mesh, physics, etc.), a knowledge base built from COMSOL documentation PDFs for retrieval-augmented generation, and utility functions for versioning and async handling. The system enables users to load, modify, and simulate COMSOL models through a server interface (likely MCP - Model Context Protocol), while leveraging a vector database of processed PDF documentation to provide contextual assistance. Key entry points include src/server.py and various domain-specific scripts in comsol_models/ directories for building and simulating specific models (e.g., solenoids, micromixers).

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
LearningCircuit/local-deep-research ★ 9200 851 APPLICATION

Local Deep Research is a self-hosted, privacy-focused AI research assistant that performs deep, agentic research using multiple LLMs and web searches. It provides a full-stack web application (FastAPI + JavaScript), a programmatic API, and a Model Context Protocol (MCP) server. The system ingests user queries, decomposes them, executes parallel searches across web and academic sources (SearXNG, Google, arXiv, PubMed, Semantic Scholar, etc.), fetches and extracts content, evaluates evidence, and synthesizes reports with citations. It features per-user encrypted SQLCipher databases, a settings system with environment variable overrides, a RAG library with FAISS vector store, journal quality scoring, news subscriptions, and extensive security controls (egress policy, SSRF protection, credential scrubbing). The codebase is heavily tested with unit, integration, UI, accessibility, and security tests. It is a hybrid of a web application and a research data pipeline, but the dominant character is a production-grade application.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
IAAR-Shanghai/SurveyX ★ 994 99 APPLICATION

SurveyX is an academic survey automation system that leverages Large Language Models (LLMs) to generate domain-specific academic papers from user-provided references. The system implements a modular pipeline that processes markdown-formatted reference documents through stages of preprocessing, outline generation, content drafting, post-refinement (citation correction, figure/table insertion), and LaTeX/PDF output generation. Designed for offline use in its open-source version, it accepts survey titles, keywords, and local reference paths to produce structured surveys with watermarked PDF outputs. The architecture emphasizes separation of concerns with distinct modules for LLM interaction, content refinement, and document generation, supported by monitoring utilities for tracking token usage and pipeline timing.

RATING: 8.0/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found
knowflow-ai/KnowFlow ★ 551 77 APPLICATION

KnowFlow (forked from RAGFlow) is a full-stack enterprise Retrieval-Augmented Generation (RAG) platform. It ingests documents (PDF, DOCX, Excel, images, etc.) via multiple parsing engines (DeepDOC, MinerU, PaddleOCR, DOTS), chunks them using configurable strategies (naive, smart, title, regex, parent-child, etc.), embeds them via LLM providers, and stores vectors in Elasticsearch/OpenSearch/Infinity. The platform provides a visual agent builder (React Flow canvas) where users compose workflows from nodes (retrieval, generate, categorize, iterate, code execution, etc.) and tools (web search, email, SQL, financial data, etc.). It also offers chat interfaces with SSE streaming, knowledge base management with RBAC, team sharing, and a Python SDK. The architecture is a Flask backend with separate task executors and a sandboxed code execution service, deployed via Docker Compose with MinIO, MySQL, Redis, and optional OCR microservices. The frontend is primarily React (with a legacy Vue codebase), using Ant Design and shadcn/ui components.

RATING: 7.9/10 MAINT: active DRIFT: low
▸ 4 reusable components found
NirDiamant/RAG_Techniques ★ 29755 3646 DATA_RESEARCH

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.

RATING: 7.7/10 REPRO: 3.0/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
datawhalechina/all-in-rag ★ 12102 6036 APPLICATION

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.

RATING: 7.6/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
JamesHWade/gpttools ★ 299 30 APPLICATION

gpttools is an R package that extends RStudio with large language model (LLM) capabilities for R package development. It provides a suite of RStudio addins for tasks such as generating roxygen documentation, suggesting unit tests, converting scripts to functions, and a Copilot-style ghost text writer. The package also includes a retrieval-augmented generation (RAG) system that scrapes documentation, creates embeddings, and indexes them for context-aware chat. It supports multiple AI providers (OpenAI, Anthropic, Perplexity, Cohere, Ollama, Azure OpenAI, Google) via a modular streaming handler pattern, and offers both cloud-based and local (sentence-transformers, Ollama) embedding options. The architecture is a mix of R functions, Shiny apps (settings, retrieval chat, data documentation), and Python integration via reticulate for local models. Key entry points include the addins, the chat() function, chat_with_context() for RAG, and the crawl() function for building indexes. External dependencies include the gptstudio package, various LLM APIs, and a Python environment for local embeddings. While primarily an application, it incorporates data engineering patterns for scraping, chunking, embedding, and indexing documentation.

RATING: 7.6/10 MAINT: active DRIFT: low
▸ 3 reusable components found
$ loading more...
$ submit: