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: 웹 인터페이스 프레임워크
  • 벡터 임베딩: 다양한 임베딩 모델 지원
  • 시각화 라이브러리: 데이터 시각화 및 상호 작용에 사용

지원되는 임베딩 모델

  • 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 노트북 튜토리얼을 제공합니다:

온라인 데모

응용 시나리오

1. RAG 시스템 디버깅

  • 검색 품질 평가: 문서 검색의 정확성과 관련성 평가
  • 파라미터 튜닝: 시각화 결과를 통해 RAG 시스템 파라미터 조정
  • 성능 분석: 다양한 구성에서의 시스템 성능 분석

2. 교육 및 연구

  • RAG 개념 교육: 학습자가 RAG 작동 원리를 이해하도록 돕기
  • 학술 연구: RAG 관련 연구에 시각화 도구 제공
  • 프로토타입 개발: RAG 시스템 설계의 빠른 검증

3. 기업 애플리케이션

  • 문서 검색 최적화: 기업 내부 문서 검색 시스템 최적화
  • 지식 관리: 기업 지식 베이스의 조직 구조 시각화
  • 고객 서비스: RAG 기반 고객 서비스 시스템 최적화

프로젝트 장점

1. 오픈소스 및 커뮤니티

  • MIT 라이선스: 완전한 오픈소스, 자유로운 사용 및 수정 가능
  • 커뮤니티 지원: 활발한 개발자 커뮤니티 및 기여자
  • 지속적인 업데이트: 정기적인 업데이트 및 기능 개선

2. 사용 편의성

  • 간단한 API: 직관적인 Python API 설계
  • 웹 인터페이스: Streamlit 기반의 사용자 친화적인 인터페이스
  • 상세 문서: 완전한 사용 튜토리얼 및 예시

3. 확장성

  • 모듈식 설계: 확장 및 사용자 정의 용이
  • 다중 모델 지원: 다양한 임베딩 모델 지원
  • 플러그인 메커니즘: 다른 도구 및 라이브러리와 통합 가능

기술 아키텍처

핵심 구성 요소

  1. 문서 처리기: 문서 로딩 및 전처리 담당
  2. 벡터화 엔진: 텍스트 벡터화 및 임베딩 처리
  3. 시각화 엔진: 대화형 시각화 인터페이스 생성
  4. 쿼리 처리기: 사용자 쿼리 및 유사성 계산 처리

데이터 흐름

  1. 문서 입력텍스트 분할벡터화저장
  2. 쿼리 입력벡터화유사성 계산결과 시각화

요약

RAGxplorer는 강력하고 사용하기 쉬운 RAG 시각화 도구로, 개발자들이 RAG 시스템을 깊이 이해하고 최적화할 수 있는 효과적인 수단을 제공합니다. 직관적인 시각화 인터페이스를 통해 사용자는 검색 증강 생성 기반 AI 애플리케이션을 더 잘 디버깅하고 개선할 수 있습니다.

Star History Chart