전체 그래프
RAG

Adaptive Retrieval

ai-mlrag

상위: Advanced RAG Techniques

사용자의 질문을 받으면 먼저 LLM을 이용해 질문의 유형(사실, 분석, 의견 등)을 분류하고, 해당 유형에 가장 최적화된 맞춤형 검색 전략을 동적으로 선택하여 적용하는 지능형 RAG 기법

  • 작동방식
    1. 질문 분류: LLM이 사용자의 질문을 'Factual', 'Analytical', 'Opinion' 등 미리 정의된 카테고리 중 하나로 분류
    2. 전략 선택: 분류된 카테고리에 해당하는 전용 검색 로직(Strategy)을 선택
    3. 맞춤형 검색 실행:
      • 사실 질문: 쿼리 명확화 → 검색 → LLM 재정렬
      • 분석 질문: 하위 질문 생성 → 병렬 검색 → LLM 다양성 선택
      • 의견 질문: 다양한 관점 생성 → 관점별 검색 → LLM 다양성 선택
    4. 답변 생성: 선택된 전략을 통해 최종적으로 검색된 문서들을 컨텍스트로 삼아 LLM이 답변을 생성
  • 장점
    • 정확성 향상: 질문의 의도에 맞는 최적의 검색 방식을 사용하므로 결과의 질이 높아짐
    • 유연성: 단답형 질문부터 복잡한 분석, 다양한 의견 비교까지 광범위한 유형의 질문을 효과적으로 처리
    • 높은 효율성: 각 질문 유형에 맞는 '전문가'가 작업을 처리하므로, 불필요한 검색이나 정보 처리를 줄일 수 있음
  • 구현
    • 질문 분류기: LLM을 사용하여 쿼리를 특정 카테고리로 분류하는 모듈을 구현
    • 전략 패턴 적용: 각 검색 전략을 별도의 클래스로 모듈화하여 구현. 각 클래스는 자신만의 독특한 검색 로직(쿼리 변환, 하위 질문 생성, 재정렬 등)을 LLM을 활용하여 수행.
    • 오케스트레이터: 메인 컨트롤러가 분류기의 결과를 받아 적절한 전략 클래스를 호출하는 방식으로 전체 프로세스를 통합하고 관리.