ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [논문리뷰] Context-augmented Retrieval: A Novel Framework for FastInformation Retrieval based Response Generation using LargeLanguage Model(2024)
    카테고리 없음 2024. 7. 2. 23:35

    1. Abstract

    - RAG는 LLM에 전달되는 프롬프트에 포함된 문맥 정보를 제공하여 답변을 생성하게 함

    - 문맥 정보 코퍼스가 커질수록 답변/추론 품질이 저하됨

    - 본 연구는 벡터 저장소에서 빠른 정보 검색을 가능하게 하고 검색된 정보의 연관성을 보장하기 위한 새로운 방법을 제시

    - 고전적 텍스트 분류와 LLM을 결합하여 이 문제를 해결하는 문맥 증강 검색(Context Augmented Retrieval, CAR)을 제안

    - CAR은 코퍼스로 유입되는 정보를 실시간으로 분류하여 벡터 데이터베이스를 분할함

    - CAR은 정보 검색 및 답변 생성 시간을 크게 단축하는 동시에 양질의 답변 생성이 가능

     

    2. Introduction

    - LLM의 환각, 지식 노후화, 도메인 전문성 부족 문데 해결을 위해 RAG가 많이 사용됨

    - RAG는 검색 메커니즘을 사용하여 입력 쿼리를 기반으로 대규모 데이터베이스에서 관련 문서나 구절을 가져옴

    - 이후 생성 모델은 이러한 문서를 가져와 문맥에 적합한 응답을 생성

    - 그러나 RAG는 대규모 데이터 세트에서 어려움을 겪고 정보를 검색하는 데 필요한 시간이 늘어 날 수 있음

    - 이러한 한계를 극복하기 위해 Agentic RAG 또는 Keyword-augmented generation(KAR) and Cos-mix 등이 연구됨 

      1) Agentic RAG

        - 검색된 각 청크의 요약을 생성하고 LLM으로 검색된 청크 요약과 사용자 쿼리의 관련성을 검증

        - 재귀적이고 시간이 많이 소요됨

      2) Keyword-augmented generation(KAR)

        - 키워드를 사용하여 정보 검색을 강화, 도메인별 지식으로 시스템을 업데이트하는 작업을 간소화

      3) Cos-mix

        - 효율적인 검색을 위해 하이브리드 코사인 유사도 및 다양한 거리 기반 접근 방식을 적용

    - 본 연구에서는 상기 방법 대신 전통적 텍스트 분류기법을 적용

    - 기존 RAG 워크플로우에 쿼리 분류기를 도입

    - 사용자 쿼리를 분류하여 관련 도메인을 식별하고, 분류된 도메인에서 정보 검색 및 답변을 생성

    - 모든 카테고리에 대해 하나의 지식 도메인을 사용하는 대신, 각 카테고리에 대해 개별 지식 도메인을 사용하고 도메인을 식별하는 쿼리 분류기를 사용하여 검색 시간 단축 및 응답 품질을 향상 시킴

     

    3. CAR(Context Augmentec Retrieval)

    3.1 Wofkflow

    - CAR은 아래의 절차대로 분류기를 사용하여 가장 관련성이 높은 정보를 검색하고 이를 LLM으로 전달

    ①User Query: 쿼리를 분류기 모델에 전달

    ②Query-Index Classfication Model: 분류 모델을 사용하여 쿼리를 적절한 도메인/카테고리로 분류

    ③Index Loader: 사용자의 쿼리에 해당하는 관련 정보를 검색하기 위해 도메인별 레이블이 지정된 인덱스 로드

    ④Hybrid Retriever: BM25 Retriever와 Vector Retriver를 함께 적용하여 쿼리와 관련된 컨텍스트를 검색

    ⑤Query Engine: 검색된 컨텍스트는 쿼리와 함께 일관된 답변을 생성하기 위해 LLM에 제공

     

    3.2 Index Genertion and Classification 

    - Documents segregation: 문서를 분류해야하는 도메인을 기준으로 문서를 분류한 다음 레이블 지정

    - Directory loader: 각 도메인의 문서는 확장자(예: PDF, CSV 등)에 관계없이 각 디렉토리에서 별도로 로드

    - Ingestion pipeline: 파이프라인은 필요한 문서를 로드하고 다음의 작업을 수행

      *Entity Extraction: 이름, 날짜 등 고유 키워드를 추출. LlamaIndex의 EntityExtractor로 실행
      *Node Parser: 문서/단락을 청크로 나눔

    - Index Generation: 청크 임베딩(OpenAI embedding-ada-002 사용)

    - VectorStore : 임베딩 데이터 벡터DB에 저장

     

    3.3 Classification Architecture 

    - 사용자가 입력한 쿼리는 분류기를 사용하여 카테고리/도메인별로 생성된 인덱스로 분류

    ①Query Classification: 사용 가능한 도메인으로 쿼리를 분류

    - Logistic Regression, Multinominal Naive Bayes, Gaussian Naive Bayes, Linear SVC, DistilBERT 등 사용

    ②Context Retrieval: 쿼리가 분류되면 분류된 쿼리에 대해 레이블이 지정된 인덱스를 사용하여 프롬프트에 포함된 컨텍스트를 LLM에 전달하여 답변을 생성

     

    4. Evaluation

    4.1 데이터셋
    - 물리학, 화학, 나노 과학 영역의 각 60개 문항으로 구성된 라벨링된 문제 영역 데이터 세트에서 분류기 성능 평가

     

    4.2 결과
    - 기존의 머신러닝기반 모델들이 DistilBERT보다 쿼리 분류 성능이 뛰어남 

    - 레이블이 지정된 도메인 인덱스와 쿼리 분류기를 적용하면 검색 시간이 ∼50% 이상 단축됨

    - CAR은 기존 RAG 대비 답변 품질도 우수함

     

    5. Conclusion

    - LLM에서 답변을 생성하기 위한 컨텍스트를 검색하는 CAR을 제안

    - 쿼리 분류 기반 컨텍스트 검색과 LLM 추론을 통합하여 응답의 관련성을 개선하고 응답 시간을 단축

    - 쿼리 분류기는 Fine-tuned BERT 보다 전통적인 머신 러닝 모델을 사용하는 것이 더 적합

    - 컨텍스트 증강 검색은 답변 품질에 영향을 주지 않으면서 효과적으로 검색 시간(∼ 50%)과 응답 시간(∼ 7%)을 단축시킴

     

     

    # 참고한 자료

    https://arxiv.org/abs/2406.16383

Designed by Tistory.