Login

開源的 RAG 可視化工具,幫助使用者直觀地理解和除錯檢索增強生成系統

MITJupyter Notebook 1.1kgabrielchuaRAGxplorer Last Updated: 2025-01-03

RAGxplorer - 開源RAG視覺化工具 🔮

專案概述

RAGxplorer 是一個開源工具,專門用於視覺化檢索增強生成(RAG)系統。該專案由 Gabriel Chua 開發,旨在幫助開發者和研究人員更好地理解和調試 RAG 應用中的文件檢索和語義相似性匹配過程。

主要功能

1. 文件處理與載入

  • PDF 文件支援:可以直接載入 PDF 文件進行處理
  • 文件分塊:自動將文件分割成適合向量化的文本塊
  • 多種文件格式支援:擴展支援各種文件格式

2. 向量嵌入視覺化

  • 嵌入空間視覺化:將文件塊在向量空間中的表示進行視覺化
  • 語義相似性探索:直觀展示文件塊之間的語義關係
  • 多種嵌入模型支援:支援不同的預訓練嵌入模型

3. 查詢視覺化

  • 查詢匹配視覺化:顯示查詢與文件塊的匹配過程
  • 相似性得分展示:直觀展示檢索結果的相關性評分
  • 互動式查詢:支援即時查詢和結果視覺化

技術特點

核心技術棧

  • Python:主要開發語言
  • Streamlit:Web 介面框架
  • 向量嵌入:支援多種嵌入模型
  • 視覺化庫:用於數據視覺化和互動

支援的嵌入模型

  • thenlper/gte-large:預設推薦模型
  • 其他 Hugging Face 模型:支援自訂嵌入模型

安裝與使用

安裝方法

pip install ragxplorer

基本使用範例

from ragxplorer import RAGxplorer

# 初始化客戶端
client = RAGxplorer(embedding_model="thenlper/gte-large")

# 載入 PDF 文件
client.load_pdf("presentation.pdf", verbose=True)

# 視覺化查詢結果
client.visualize_query("What are the top revenue drivers for Microsoft?")

快速開始

專案提供了完整的 Jupyter notebook 教學:

線上演示

應用場景

1. RAG 系統調試

  • 檢索品質評估:評估文件檢索的準確性和相關性
  • 參數調優:透過視覺化結果調整 RAG 系統參數
  • 性能分析:分析不同配置下的系統性能

2. 教育與研究

  • RAG 概念教學:幫助學習者理解 RAG 工作原理
  • 學術研究:為 RAG 相關研究提供視覺化工具
  • 原型開發:快速驗證 RAG 系統設計

3. 企業應用

  • 文件搜尋優化:優化企業內部文件搜尋系統
  • 知識管理:視覺化企業知識庫的組織結構
  • 客戶服務:優化基於 RAG 的客戶服務系統

專案優勢

1. 開源與社群

  • MIT 許可證:完全開源,可自由使用和修改
  • 社群支援:活躍的開發者社群和貢獻者
  • 持續更新:定期更新和功能改進

2. 易用性

  • 簡單 API:直觀的 Python API 設計
  • Web 介面:基於 Streamlit 的使用者友好介面
  • 詳細文件:完整的使用教學和範例

3. 可擴展性

  • 模組化設計:易於擴展和客製化
  • 多模型支援:支援各種嵌入模型
  • 插件機制:可整合其他工具和庫

技術架構

核心組件

  1. 文件處理器:負責文件載入和預處理
  2. 向量化引擎:處理文本向量化和嵌入
  3. 視覺化引擎:生成互動式視覺化介面
  4. 查詢處理器:處理使用者查詢和相似性計算

數據流程

  1. 文件輸入文本分塊向量化儲存
  2. 查詢輸入向量化相似性計算結果視覺化

總結

RAGxplorer 是一個功能強大且易於使用的 RAG 視覺化工具,為開發者提供了深入理解和優化 RAG 系統的有效手段。透過直觀的視覺化介面,使用者可以更好地調試和改進基於檢索增強生成的 AI 應用。

Star History Chart