DataScienceUIBK/Rankify

🔥 Rankify: A Comprehensive Python Toolkit for Retrieval, Re-Ranking, and Retrieval-Augmented Generation 🔥. Our toolkit integrates 40 pre-retrieved benchmark datasets and supports 7+ retrieval techniques, 24+ state-of-the-art Reranking models, and multiple RAG methods.

What it solves

Rankify 提供了一個統一且模組化的 Python 工具包,用於構建與基準測試檢索、重排序以及檢索增強生成 (RAG) 流水線。它簡化了實驗不同檢索器、重排序器與生成器組合的過程,減少了整合多個最先進模型與數據集的摩擦。

How it works

Rankify 使用模組化架構,允許用戶輕鬆地更換組件。它提供了一個高層級的 "Pipeline API" 用於快速部署 (例如 pipeline("rag")),並為進階用戶提供更細粒度的流程。該工具包整合了各種檢索技術 (包括 BM25, BGE, 和 ColBERT),24+ 重排序模型,以及多個 RAG 生成器。它還包含一個 RankifyAgent 用於 AI 驅動的模型選擇,以及一個內建伺服器來將這些流水線部署為 REST APIs。

Who it’s for

資訊檢索與 RAG 領域的研究人員與從業者,需要一種標準化的方式來基準測試不同模型、並實驗檢索流水線,或將搜尋與生成系統部署到生產環境中。

Highlights

  • One-Line Pipeline API: 快速地以極少的代碼創建搜尋、重排序或 RAG 流水線。
  • Extensive Model Support: 整合了 7 種檢索技術與 24+ 最先進的重排序模型。
  • AI-Powered Selection: 包含一個對話式代理,可根據特定用例來推薦最佳模型。
  • Benchmark Datasets: 透過 Hugging Face 提供對 40+ 預檢索基準數據集的存取權。
  • Production Ready: 包含用於 REST API 部署的內建伺服器,並與 LangChain 和 LlamaIndex 整合。
  • Interactive UI: 提供基於 Gradio 的網頁遊樂場,用於測試與比較模型。