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