vectara/open-rag-eval
RAG evaluation without the need for "golden answers"
Open RAG Eval – 빠른 개요
무엇인가요 – 검색 증강 생성(RAG) 파이프라인을 평가하기 위한 오픈소스 Python 툴킷입니다. TREC-RAG 벤치마크, UMBRELA, AutoNuggetizer, 사실성 일관성 점수 등을 포함한 사전 구축된 메트릭을 제공하며, Vectara, LlamaIndex, LangChain과 같은 인기 있는 RAG 프레임워크와의 연결 기능도 제공합니다.
왜 중요한가요 – RAG의 품질을 측정하는 것은 어렵습니다. 왜냐하면 검색된 청크의 관련성과 생성된 답변의 사실성 모두를 평가해야 하기 때문입니다. open-rag-eval을 사용하면 "골든" 청크나 답변을 수작업으로 만들 필요 없이 이를 수행할 수 있습니다. 많은 메트릭은 즉시 사용 가능하며, 사용자 정의 메트릭도 쉽게 통합할 수 있습니다.
핵심 구성 요소
- 메트릭 – UMBRELA 및 AutoNuggetizer(골든 데이터 필요 없음), TREC-RAG 메트릭, 선택적 골든 답변 메트릭, 오픈소스 HHEM 모델 또는 Vectara의 상용 API를 통한 환각 탐지.
- 연결자 – Vectara, LlamaIndex, LangChain용 즉시 사용 가능한 어댑터. 사전에 생성된 답변 파일도 입력 가능.
- CLI 및 라이브러리 –
pip install open-rag-eval로 설치 가능.open-rag-eval명령어로 평가 실행, 합성 쿼리 생성, 결과 시각화 가능. - 시각화 – 내보낸 JSON/CSV는 https://openevaluation.ai의 웹 뷰어, 로컬 Streamlit 앱, 또는 간단한 CLI 플롯으로 탐색 가능.
일반적인 워크플로우
- 쿼리 목록 생성 (CSV) 또는 코퍼스에서 합성 쿼리를 생성.
- YAML 설정 파일 작성. 쿼리 경로 지정, 연결자(예: Vectara) 선택, 실행할 평가자 선택.
- 실행
open-rag-eval eval --config <your-config>.yaml. - 각 쿼리의 점수와 시각화 확인하여 약한 부분(낮은 관련성, 높은 환각 등) 파악.
누가 사용해야 하나요 – RAG 기반 챗 또는 검색 시스템을 개발하는 데이터 과학자, ML 엔지니어, 또는 제품 팀으로서 재현 가능하고 확장 가능한 방식으로 파이프라인을 벤치마크하고 디버깅이 필요한 사람.
README에서 핵심 정보
- 라이선스: Apache 2.0
- Python 버전: ≥ 3.9
- LLM 평가자: 기본값은 OpenAI (
gpt-4o-mini)이지만 교체 가능. - 사실성 일관성 백엔드: 오픈소스 HHEM 모델 (
vectara/hallucination_evaluation_model) 또는 Vectara API. - 설치 방법:
pip install open-rag-eval(CLI 제공) 또는 소스에서pip install -e .. - 구성 파일: 예제 구성 파일은
config_examples/디렉터리에 있음 (예:eval_config_vectara.yaml). - 시각화 옵션: 웹 뷰어 (JSON), CLI 플롯,
open_rag_eval/viz/내 Streamlit 앱.
TL;DR
open-rag-eval = 즉시 사용 가능한 Python 라이브러리 + CLI. RAG 시스템이 관련 청크를 검색하고 사실적으로 정확한 답변을 생성하는 능력을 측정하기 위한 내장 메트릭, 연결자, 합성 쿼리 생성, 여러 시각화 방법을 갖춘 도구입니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트