IT

AutoRAG 사용시 주의사항 (1)

esmile1 2024. 8. 30. 20:32

 

1. AutoRAG 설치 시 주의해야 할 주요 사항:

 

(1) 한국어 버전 설치: AutoRAG를 한국어로 사용하기 위해서는 반드시 한국어 버전으로 설치해야 합니다. 설치 명령어에 [ko]를 포함시켜야 합니다.

 

pip install AutoRAG[ko]

 

(2) JDK 설치: konlpy 라이브러리 사용을 위해 JDK(Java Development Kit)를 반드시 설치해야 합니다. 예를 들어, MacBook Pro M2에서는 JDK 17 설치로 문제없이 작동했다고 합니다.

 

(3) 환경 변수 설정: .env 파일에 필요한 API 키 정보를 입력해야 합니다. 특히 업스테이지 임베딩 모델 사용을 위해 업스테이지 API 키 정보를 반드시 입력해야 합니다.

 

(4) 임베딩 모델 추가: AutoRAG 실행 전에 업스테이지 임베딩 모델을 추가하는 것이 필수적입니다.

 

이러한 사항들을 주의 깊게 확인하고 설정함으로써 AutoRAG를 올바르게 설치하고 사용할 수 있습니다. 특히 한국어 처리를 위한 설정에 주의를 기울여야 합니다.

 

2. AutoRAG 설치 시 필요한 주요 라이브러리들:

 

(1) AutoRAG: 핵심 라이브러리로, 한국어 버전 설치를 위해 다음 명령어를 사용합니다.

 

pip install AutoRAG[ko]

 

(2) JDK (Java Development Kit): konlpy 라이브러리 사용을 위해 필수적입니다. JDK 17 버전이 권장됩니다.

 

konlpy: 한국어 자연어 처리를 위한 라이브러리입니다.

 

(3) 업스테이지 임베딩 모델: AutoRAG 실행을 위해 필요한 임베딩 모델입니다.

 

(4) Python 관련 라이브러리: AutoRAG는 Python 기반이므로, 기본적인 Python 라이브러리들이 필요합니다.

 

(5) 데이터베이스 관련 라이브러리: 프로젝트에 따라 필요할 수 있습니다.

 

웹 프레임워크: Flask나 TurboGears와 같은 웹 프레임워크가 필요할 수 있습니다, 특히 웹 애플리케이션 개발 시.

 

테스트 프레임워크: Unittest, Robot, PyUnit 등의 테스트 프레임워크가 필요할 수 있습니다.

 

이러한 라이브러리들은 AutoRAG의 기본 기능을 사용하고, 한국어 처리를 위해 필요합니다. 프로젝트의 특성에 따라 추가적인 라이브러리가 필요할 수 있으므로, 프로젝트 요구사항을 잘 파악하고 그에 맞는 라이브러리를 설치해야 합니다.

 

3. AutoRAG를 설치한 후 최적의 RAG 파이프라인을 찾는 방법:

 

(1) 평가 데이터셋 준비:

 

고품질의 QA 데이터셋과 코퍼스 데이터셋을 준비합니다.

데이터는 parquet 형식으로 저장해야 합니다.

 

(2) 설정 파일 작성:

 

YAML 형식의 설정 파일을 작성합니다.

AutoRAG GitHub 저장소의 sample_config 폴더에서 예제를 참고할 수 있습니다.

 

(3) AutoRAG 실행:

 

다음 명령어로 AutoRAG를 실행합니다:

 

autorag evaluate \\\\ --config your/path/to/config.yaml \\\\ --qa_data_path your/path/to/qa.parquet \\\\ --corpus_data_path your/path/to/corpus.parquet \\\\ --project_dir your/path/to/project_dir

 

(4) 결과 분석:

 

AutoRAG는 설정에 따라 다양한 RAG 파이프라인을 자동으로 평가합니다.

 

각 단계별 평가 결과를 저장하여 성능 변화를 실시간으로 확인할 수 있습니다.

 

(5) 최적 파이프라인 선택:

 

평가 결과를 바탕으로 최적의 RAG 파이프라인을 선택합니다.

 

(6) 파이프라인 배포:

 

선택된 최적의 파이프라인을 단일 YAML 파일로 배포할 수 있습니다.

 

FastAPI 서버나 웹 인터페이스를 통해 배포 가능합니다.

AutoRAG는 다양한 모듈 조합(최대 960가지)을 자동으로 평가하여 최적의 파이프라인을 찾아줍니다. 이를 통해 수동으로 모든 조합을 테스트해야 하는 번거로움을 크게 줄일 수 있습니다.