gabrielchua/RAGxplorerPlease refer to the latest official releases for information GitHub Homepage
오픈 소스 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. 확장성
- 모듈식 설계: 확장 및 사용자 정의 용이
- 다중 모델 지원: 다양한 임베딩 모델 지원
- 플러그인 메커니즘: 다른 도구 및 라이브러리와 통합 가능
기술 아키텍처
핵심 구성 요소
- 문서 처리기: 문서 로딩 및 전처리 담당
- 벡터화 엔진: 텍스트 벡터화 및 임베딩 처리
- 시각화 엔진: 대화형 시각화 인터페이스 생성
- 쿼리 처리기: 사용자 쿼리 및 유사성 계산 처리
데이터 흐름
- 문서 입력 → 텍스트 분할 → 벡터화 → 저장
- 쿼리 입력 → 벡터화 → 유사성 계산 → 결과 시각화
요약
RAGxplorer는 강력하고 사용하기 쉬운 RAG 시각화 도구로, 개발자들이 RAG 시스템을 깊이 이해하고 최적화할 수 있는 효과적인 수단을 제공합니다. 직관적인 시각화 인터페이스를 통해 사용자는 검색 증강 생성 기반 AI 애플리케이션을 더 잘 디버깅하고 개선할 수 있습니다.