Login

Ein Open-Source-RAG-Visualisierungstool, das Benutzern hilft, Retrieval-Augmented Generation-Systeme intuitiv zu verstehen und zu debuggen.

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

RAGxplorer - Open-Source RAG-Visualisierungstool 🔮

Projektübersicht

RAGxplorer ist ein Open-Source-Tool, das speziell für die Visualisierung von Retrieval Augmented Generation (RAG)-Systemen entwickelt wurde. Das Projekt wurde von Gabriel Chua entwickelt und zielt darauf ab, Entwicklern und Forschern zu helfen, den Dokumentenabruf und den semantischen Ähnlichkeitsabgleich in RAG-Anwendungen besser zu verstehen und zu debuggen.

Hauptfunktionen

1. Dokumentenverarbeitung und -laden

  • PDF-Dokumentenunterstützung: Direkte Verarbeitung von PDF-Dateien möglich
  • Dokumentenaufteilung: Automatische Aufteilung von Dokumenten in für die Vektorisierung geeignete Textblöcke
  • Unterstützung verschiedener Dokumentformate: Erweiterte Unterstützung für diverse Dokumentformate

2. Visualisierung von Vektoreinbettungen

  • Visualisierung des Einbettungsraums: Visualisierung der Darstellung von Dokumentblöcken im Vektorraum
  • Erkundung semantischer Ähnlichkeiten: Intuitive Darstellung semantischer Beziehungen zwischen Dokumentblöcken
  • Unterstützung mehrerer Einbettungsmodelle: Kompatibilität mit verschiedenen vortrainierten Einbettungsmodellen

3. Abfragevisualisierung

  • Visualisierung des Abfrageabgleichs: Anzeige des Abgleichprozesses zwischen Abfrage und Dokumentblöcken
  • Anzeige von Ähnlichkeitswerten: Intuitive Darstellung der Relevanzbewertung von Abrufergebnissen
  • Interaktive Abfragen: Unterstützung von Echtzeitabfragen und Ergebnisvisualisierung

Technische Merkmale

Kern-Technologie-Stack

  • Python: Hauptentwicklungssprache
  • Streamlit: Web-Oberflächen-Framework
  • Vektoreinbettungen: Unterstützung verschiedener Einbettungsmodelle
  • Visualisierungsbibliotheken: Für Datenvisualisierung und Interaktion

Unterstützte Einbettungsmodelle

  • thenlper/gte-large: Standardmäßig empfohlenes Modell
  • Andere Hugging Face Modelle: Unterstützung für benutzerdefinierte Einbettungsmodelle

Installation und Nutzung

Installationsmethode

pip install ragxplorer

Grundlegendes Anwendungsbeispiel

from ragxplorer import RAGxplorer

# Client initialisieren
client = RAGxplorer(embedding_model="thenlper/gte-large")

# PDF-Dokument laden
client.load_pdf("presentation.pdf", verbose=True)

# Abfrageergebnisse visualisieren
client.visualize_query("What are the top revenue drivers for Microsoft?")

Schnellstart

Das Projekt bietet ein vollständiges Jupyter Notebook Tutorial:

Online-Demo

Anwendungsbereiche

1. RAG-System-Debugging

  • Bewertung der Abrufqualität: Bewertung der Genauigkeit und Relevanz des Dokumentenabrufs
  • Parameteroptimierung: Anpassung von RAG-Systemparametern durch Visualisierung der Ergebnisse
  • Leistungsanalyse: Analyse der Systemleistung unter verschiedenen Konfigurationen

2. Bildung und Forschung

  • RAG-Konzept-Lehre: Unterstützung von Lernenden beim Verständnis der RAG-Funktionsweise
  • Akademische Forschung: Bereitstellung eines Visualisierungstools für RAG-bezogene Forschung
  • Prototypenentwicklung: Schnelle Validierung von RAG-Systemdesigns

3. Unternehmensanwendungen

  • Optimierung der Dokumentensuche: Optimierung interner Unternehmensdokumentensuchsysteme
  • Wissensmanagement: Visualisierung der Organisationsstruktur von Unternehmenswissensdatenbanken
  • Kundenservice: Optimierung von RAG-basierten Kundenservicesystemen

Projektvorteile

1. Open Source und Community

  • MIT-Lizenz: Vollständig Open Source, frei nutzbar und modifizierbar
  • Community-Unterstützung: Aktive Entwickler-Community und Mitwirkende
  • Kontinuierliche Updates: Regelmäßige Updates und Funktionsverbesserungen

2. Benutzerfreundlichkeit

  • Einfache API: Intuitives Python API-Design
  • Web-Oberfläche: Benutzerfreundliche Oberfläche basierend auf Streamlit
  • Detaillierte Dokumentation: Umfassende Nutzungsanleitungen und Beispiele

3. Skalierbarkeit

  • Modulares Design: Einfache Erweiterung und Anpassung
  • Multi-Modell-Unterstützung: Kompatibilität mit verschiedenen Einbettungsmodellen
  • Plugin-Mechanismus: Integration anderer Tools und Bibliotheken möglich

Technische Architektur

Kernkomponenten

  1. Dokumentenprozessor: Verantwortlich für das Laden und die Vorverarbeitung von Dokumenten
  2. Vektorisierungs-Engine: Verarbeitet Textvektorisierung und Einbettungen
  3. Visualisierungs-Engine: Erzeugt interaktive Visualisierungsoberflächen
  4. Abfrageprozessor: Verarbeitet Benutzerabfragen und Ähnlichkeitsberechnungen

Datenfluss

  1. DokumenteneingabeTextaufteilungVektorisierungSpeicherung
  2. AbfrageeingabeVektorisierungÄhnlichkeitsberechnungErgebnisvisualisierung

Zusammenfassung

RAGxplorer ist ein leistungsstarkes und benutzerfreundliches RAG-Visualisierungstool, das Entwicklern effektive Mittel zum tiefgreifenden Verständnis und zur Optimierung von RAG-Systemen bietet. Durch die intuitive Visualisierungsoberfläche können Benutzer KI-Anwendungen, die auf Retrieval Augmented Generation basieren, besser debuggen und verbessern.

Star History Chart