TrustRAG  by gomate-community

RAG framework for reliable input, trusted output

Created 1 year ago
1,134 stars

Top 33.9% on SourcePulse

GitHubView on GitHub
Project Summary

TrustRAG is a configurable and modular Retrieval-Augmented Generation (RAG) framework designed for reliable input and trusted output in question-answering scenarios. It targets developers and researchers seeking to build robust RAG systems with flexible components.

How It Works

TrustRAG employs a "DeepResearch" framework for advanced information processing. This involves parsing user queries into sub-queries, performing recursive retrieval and reasoning, and making intelligent action decisions (answer, reflect, search, read, code). This layered, iterative approach allows for deeper understanding and more accurate responses, especially in complex information-seeking tasks.

Quick Start & Requirements

  • Installation: Install via pip (pip install trustrag) or from source (pip install -e .).
  • Prerequisites: Python 3.9+, LLM API keys (e.g., OpenAI), and potentially specific embedding models (e.g., BGE). Docker deployment is also supported.
  • Resources: Requires configuration of LLM API endpoints and potentially local model paths. Indexing and retrieval may require significant disk space and compute.
  • Docs: TrustRAG Documentation

Highlighted Details

  • Supports Deep Search for generating research reports.
  • Integrates multiple retrieval strategies (BM25, Dense, Hybrid) and reranking methods (BGE, LLM-based pointwise, pairwise, setwise).
  • Handles multimodal RAG with models like GLM-4V-Flash.
  • Includes modular document parsing for various formats (PDF, DOCX, HTML, etc.) and chunking.

Maintenance & Community

The project is developed by the GoMate team from the Key Laboratory of Network Data Science and Technology. Community interaction is encouraged via suggestions and PRs.

Licensing & Compatibility

The project is released under the Apache-2.0 license, permitting commercial use and integration with closed-source applications.

Limitations & Caveats

The README mentions "Waiting to implement" for ListWise-Rerank and TourRank reranking methods, indicating these features are not yet complete. Some advanced configurations may require specific hardware or model availability.

Health Check
Last Commit

2 months ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
0
Star History
28 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.