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 플롯으로 탐색 가능.

일반적인 워크플로우

  1. 쿼리 목록 생성 (CSV) 또는 코퍼스에서 합성 쿼리를 생성.
  2. YAML 설정 파일 작성. 쿼리 경로 지정, 연결자(예: Vectara) 선택, 실행할 평가자 선택.
  3. 실행 open-rag-eval eval --config <your-config>.yaml.
  4. 각 쿼리의 점수와 시각화 확인하여 약한 부분(낮은 관련성, 높은 환각 등) 파악.

누가 사용해야 하나요 – 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 시스템이 관련 청크를 검색하고 사실적으로 정확한 답변을 생성하는 능력을 측정하기 위한 내장 메트릭, 연결자, 합성 쿼리 생성, 여러 시각화 방법을 갖춘 도구입니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트