RAG - 5. Retrieval

문건희·2025년 2월 25일

RAG

목록 보기
5/12

5. Retrieval에서 추가로 고려해야 할 요인들

Retrieval 단계는 벡터DB에서 유사한 문서를 검색하는 과정으로, 검색 정확도와 효율성을 결정하는 핵심 요소입니다.
이 단계에서 최적화해야 할 요인들을 살펴보겠습니다.


✅ 추가 요인 및 설명

1) Top-K 값 조정 (검색할 문서 개수)

설명:

  • 검색할 문서 개수인 Top-K 값이 성능에 영향을 미침.
  • 값이 너무 작으면 필요한 정보를 놓칠 수 있고, 너무 크면 불필요한 정보가 많아질 수 있음.

예시:

  • Top-K = 3 → 검색 속도 빠름, 하지만 문맥 부족 가능
  • Top-K = 10 → 정확도 증가, 하지만 LLM이 처리해야 할 문맥 길이 증가
  • 일반적으로 Top-K 값은 3~5 사이가 적절함.

2) Multi-stage Retrieval (다단계 검색)

설명:

  • 단순한 벡터 검색만 수행하는 것이 아니라, 여러 단계를 거쳐 검색 성능을 향상시킬 수 있음.
  • 첫 번째 검색에서 관련 문서를 찾고, 이후 랭킹을 다시 정렬하여 더 정확한 결과를 제공.

예시:
1. 1차 검색: Top-10 문서 검색 (벡터 유사도 기반)
2. 2차 검색: BM25 또는 Reranking 모델을 활용하여 최적의 Top-3 문서 선정
3. 최종 검색 결과 반환


설명:

  • 키워드 기반 검색과 벡터 검색을 조합하면 성능이 향상됨.
  • BM25(키워드 기반 검색) + 벡터 검색 조합으로 더 정확한 검색 결과를 도출할 수 있음.

예시:
1. 사용자가 "Retrieval 최적화" 검색
2. BM25 검색 → "Retrieval 성능 향상 방법"` 문서 추천
3. 벡터 검색 → "효율적인 RAG Retrieval 기법"` 문서 추천
4. 두 검색 결과를 조합하여 최적의 문서 제공


4) Query Expansion (쿼리 확장)

설명:

  • 사용자의 검색어(Query)를 자동으로 확장하여 검색 성능을 높일 수 있음.
  • Synonym Expansion (동의어 확장), Concept Expansion (개념 확장) 기법 활용 가능.

예시:

  • 사용자가 "AI 검색 최적화" 검색 시
  • "AI 정보 검색 개선", "LLM 검색 최적화" 등 연관된 표현을 포함하여 검색

5) Reranking (재정렬)

설명:

  • 검색된 문서들의 순위를 다시 정렬하여 더 정확한 문서를 상위에 배치하는 기법.
  • Cross-Encoder 또는 Learning to Rank 모델을 활용 가능.

예시:
1. 벡터 검색으로 Top-10 문서 검색
2. BERT Cross-Encoder를 활용하여 가장 관련성 높은 문서 3개를 최상위로 정렬


6) Context Filtering (컨텍스트 필터링)

설명:

  • 검색된 문서 중 불필요한 정보가 포함된 경우 필터링을 수행해야 함.
  • 메타데이터(날짜, 출처, 카테고리)를 활용한 필터링 가능.

예시:

  • "최신 논문"을 검색할 때, "2023년 이후 출판된 논문"으로 필터 적용
  • "기술 문서"를 검색할 때, "카테고리: AI"로 필터 적용

7) Query Embedding vs Document Embedding

설명:

  • Query Embedding(사용자 질문)과 Document Embedding(문서 벡터) 간의 매칭이 중요함.
  • 서로 다른 임베딩 모델을 사용할 경우, 검색 정확도가 달라질 수 있음.

예시:

  • 검색 쿼리와 문서 임베딩을 같은 모델(all-MiniLM-L6-v2)로 변환해야 최적 검색 가능
  • 서로 다른 모델 사용 시 벡터 공간이 달라져 검색 정확도 저하 가능

8) Negative Sampling (부정 샘플 학습)

설명:

  • 검색 성능을 높이기 위해 부정 샘플(Negative Sample)을 활용한 모델 학습 가능.
  • 검색된 문서 중 관련성이 낮은 데이터를 학습하여 검색 성능 개선.

예시:

  • "임베딩 최적화"를 검색했을 때 "이미지 처리 기술"이 검색되었다면
  • "이미지 처리 기술"을 Negative Sample로 학습하여 이후 검색에서 제외하도록 모델 개선

📌 정리

추가 요인설명예시
Top-K 값 조정검색할 문서 개수 최적화Top-K=3~5 적절
Multi-stage Retrieval다단계 검색으로 정확도 향상1차 검색 후 Reranking
Hybrid SearchBM25 + 벡터 검색 조합의미 검색 + 키워드 검색
Query Expansion검색어를 자동 확장"AI 검색""AI 정보 검색 개선"
Reranking검색된 문서 순위를 다시 정렬BERT Cross-Encoder 활용
Context Filtering불필요한 문서 필터링"최신 논문" 필터
Query vs Document Embedding검색 질문과 문서 임베딩 일치같은 모델 사용 필수
Negative Sampling부정 샘플을 학습하여 검색 개선관련 없는 결과 제거

0개의 댓글