2025-03-18 16:41:12 +09:00
2025-03-14 17:28:01 +09:00
2025-03-18 16:41:12 +09:00
2025-03-14 17:33:18 +09:00
2025-03-18 16:41:12 +09:00
2025-03-18 16:41:12 +09:00
2025-03-18 16:41:12 +09:00
2025-03-18 17:28:07 +09:00
2025-03-18 16:41:12 +09:00
2025-03-14 17:28:01 +09:00
2025-03-18 16:41:12 +09:00
2025-03-18 16:41:12 +09:00

📊 AutoRAG Evaluation

AutoRAG Evaluation은 RAG(Relevance-Augmented Generation) 파이프라인을 평가하기 위한 도구입니다.
이 문서는 데이터 생성부터 RAG 평가 및 대시보드 활용까지의 전체 과정에 대한 안내를 제공합니다.


🚀 1. 환경 설정

1 .env 파일 설정

.env.sample 파일을 참고하여 .env 파일을 생성하고 필요한 환경 변수를 설정합니다.

2 Docker 이미지 빌드

docker build -t autorag-base .

3 Docker Compose 백그라운드 실행

docker compose up -d

4 실행 모드 (Docker)

AutoRAG Evaluation은 실행 모드에 따라 다르게 동작합니다.
Docker 실행 시 아래 명령어를 사용하여 모드를 선택하세요.

docker run autorag-base <mode>
실행 모드 설명
data-gen 데이터 생성 (making.sh 실행)
evaluate RAG 평가 (main.py 실행)
bash 컨테이너 내부 접근 (/bin/bash)

예시:

docker run autorag-base data-gen
docker run autorag-base evaluate
docker run autorag-base bash

📂 2. 데이터 생성

RAG 평가를 위해 QA 데이터 세트코퍼스 데이터 세트가 필요합니다.

1 프로젝트 폴더 생성

cd projects
mkdir -p example_project/{raw_data,config}
  • raw_data/: 원본 데이터 저장 (.pdf, .txt 등)
  • config/: 설정 파일 저장 (parse.yaml, chunk.yaml 등)

2 파싱 설정 (parse.yaml)

modules:
  - module_type: langchain_parse
    parse_method: pdfminer

3 청킹 설정 (chunk.yaml)

modules:
  - module_type: llama_index_chunk
    chunk_method: Token
    chunk_size: 1024
    chunk_overlap: 24
    add_file_name: en

4 QA 데이터 생성

bash making.sh

참고: GPT-4o-mini 모델을 사용하여 자동으로 QA 데이터를 생성합니다. (기본 20건)


🔍 3. RAG Pipeline 평가

1 Ollama 모델 다운로드

WSL(Windows Subsystem for Linux)에서 실행해야 합니다.

docker exec -it autorag-ollama bash
ollama pull phi4
ollama list

2 평가 실행

python main.py

3 평가 결과 확인

평가 결과는 프로젝트 폴더 내 benchmark_* 경로에 저장됩니다.

전체 평가 결과

cd projects/example_project/benchmark_*/summary.csv

세부 평가 결과

평가 항목 파일 경로
검색기 노드 라인 평가 ./retrieve_node_line/summary.csv
검색 노드 평가 ./retrieve_node_line/retrieval/summary.csv
리랭커 노드 평가 ./retrieve_node_line/passage_reranker/summary.csv
생성기 노드 라인 평가 ./post_retrieve_node_line/summary.csv
생성 노드 평가 ./post_retrieve_node_line/generator/summary.csv

📌 ./projects/example_01 폴더에는 데이터 생성부터 평가까지 진행된 예제 파일이 포함되어 있습니다.


Description
No description provided
Readme 577 MiB
Languages
Python 99.3%
Shell 0.5%
Dockerfile 0.2%