Paper Review

[논문 리뷰] Astute RAG: Overcoming Imperfect Retrieval Augmentation and Knowledge Conflicts for Large Language Models

oneonlee 2024. 11. 19. 15:16
반응형

arXiv: https://arxiv.org/abs/2410.07176

OpenReview: https://openreview.net/forum?id=xy6B5Fh2v7

Code: x

Keywords: Retrieval Augmented Generation, Knowledge Conflicts


1. Motivation

  • 검색 결과에 의존하는 RAG는 관련성이 없거나 오해의 소지가 있는 불완전한 검색 결과로 인해, 부정확한 LLM 응답을 초래할 수 있음
  • 검색된 결과가 LLM이 알고 있던 지식과 다를 때는 Knowledge Conflict가 발생할 수 있지만, 대부분의 기존 연구들은 이를 고려하지 않음

 

2. Preliminary Experiment: Imperfect retrieval is common

 

$$Retrieval\ Precision=\frac{\#\ retrieved\ passages\ containing\ correct\ answer}{\#\ total\ retrieved\ passages}$$

 

3. Problems & Previous Works

Problems

  • 불완전한 검색 결과 및 Knowledge Conflicts는 광범위하게 발생하고, 이것들은 RAG의 오류를 초래함
    • 기존 연구들에 따르면, LLM은 Knowledge Conflict 상황에서 내·외부 지식을 종합적으로 이해하기보다는 잘못된 정보에 기반하여 답변하는 경향이 있음 [1-3]

Previous Works

  •  
    • 검색 결과에 초점을 둔 이전 연구들과[1,4] 달리, 본 논문은 검색된 passage가 제공된 검색 후 단계에서 LLM 내부 지식을 활용하여 RAG의 견고성을 강화하는 데 중점을 두고 있음
    • 또한, Black-Box 환경에서 training 없이 knowledge conflicts를 직접 해결하여 양쪽의 유용한  정보를 결합하고, 보다 신뢰할 수 있는 답변을 얻을 수 있는 방법을 제안함
  • 그렇다면, 신뢰할 수 있는 RAG를 위해, LLM의 내·외부 지식 충돌을 해결하는 방법이 있는가?

 

4. Methods

Overview

Step 1/3: Passages Generation of Internal Knowledge

  • LLM의 내부 지식을 명시적으로 도출
    • question $q$를 기반으로 여러 개의 passages를 생성하도록 LLM prompting
    • LLM 내부 지식과 외부 지식 간의 상호 확인을 위한 목적

Step 2/3: Iterative Source-aware Knowledge Consolidation

  • 내·외부 지식 정보들을 한번에 비교하여 context를 명시적으로 통합하도록 LLM prompting
    • 일관된 정보 → cluster & summarize
    • 정보 간 충돌 → separate
    • 불필요한 정보 → exclude
  • LLM이 지식을 통합할 때, 각 지식의 출처를 함께 제공
    • Memory or Internal
  • 위 과정을 $t$번 반복하여 더 유용한 contexts로 개선함

Step 3/3: Step Answer Finalization

  • 각각의 그룹으로부터 답변을 하나씩 생성한 후, 신뢰성을 고려하여 하나의 최종 답변을 선택하도록 LLM prompting
    • 신뢰성 평가에는 지식 출처, 출처간 정보 일치 여부, 정보 세밀성 등을 고려

 

5. Experimental Settings

Dataset

NQ, TriviaQA, BioASQ, PopQA → 짧은 형식의 QA 데이터셋

Passage Collection

  1. 각 질문에 대해 Google Search API를 통해 상위 30개의 결과를 검색
  2. 접근 가능한 상위 10개의 웹사이트를 선택
  3. 검색 결과의 snippet에 해당하는 단락을 각 웹사이트에서 추출하여 passage로 사용

Metric

Accuracy; 모델의 응답이 실제 정답을 포함하고 있으면 정확한 것으로 간주

LLM Parameters

  • LLM: gemini-1.5-pro-002, claude-3-5-sonnet@20240620
  • temperature: 0
  • max_token: 1024
  • # shot: zero-shot

Baselines

  • USC (universal self-consistency) [5]
    • 모든 LLM 응답을 여러 번 샘플링하여 평균을 냄 (기본적인 API 호출을 통한 단순 개선 방법)
  • GenRead [6]
    • LLM 내부 지식으로 생성한 문서로 답변함 (외부 지식을 사용하지 않음)
  • RobustRAG [7]
    • 각각의 독립적인 문서에서 답변을 생성하고, 키워드로 최종 답변을 집계함
  • InstructRAG [8]
    • 답변 생성 시, Rationale을 생성하는 RAG 방법
  • Self-Route [9]
    • 답변 시, RAG/LLM을 adaptive하게 선택하여 전환함 (내부 및 외부 지식 간의 전환)

 

6. Main Results

 

  • No RAG vs. RAG : NQ나 TriviaQA 같은 데이터셋에서는 RAG를 쓰지 않는게 성능이 더 좋을 때도 있음
    • 이는 검색 결과와 LLM 간의 지식 충돌 때문으로 보임
    • 반면, domain-specific QA 및 long-tail QA인 BioASQ와 PopQA에선 RAG가 LLM의 성능을 향상시킴
  • 베이스라인들 중에선 일관되게 성능이 높은 모델이 없음
    • 이는 baseline 모델이 특정 setting에 fitting되어 있고, 보편적으로 적용되기에는 어렵다는 것을 시사함
  • 반면, Astute RAG는 모든 데이터셋에서 일관되게 baseline을 능가함
  • knowledge consolidation의 반복 횟수인 t를 늘리면 성능 개선 폭이 줄어드는데, 이것은 반복할수록 통합할 정보들이 줄어들기 때문

 

  • Gemini에서 t를 늘리면 BioASQ와 PopQA의 성능이 증가함
    • 두 데이터셋은 외부 지식에 더 많이 의존하는데, knowledge consolidation 과정을 반복하면 외부 정보 내의 노이즈를 완화하는 데 도움이 되기 때문
  • t가 3에 도달하면 NQ와 TriviaQA의 성능은 더 이상 향상되지 않음
    • 이 두 데이터셋에서는 외부 지식의 역할이 덜 중요하기 때문

 

7. Analyses

Performance by Retrieval Precision

검색 품질이 매우 낮은 경우(Retrieval Precision이 거의 0에 가까울 때) 다른 베이스라인 모델들은 No RAG에 비해 성능이 저하된 반면, Astute RAG만이 이 기준을 넘는 성능을 보임

Performance by Knowledge Conflicts

 

8. Conclusions 

  • 별도의 훈련 없이 Knowledge Confliction을 완화하기 위한 Astute RAG 제안
    • LLM의 내부 지식을 활용하여 생성된 응답을 반복적으로 개선
    • 내·외부 지식을 출처 기반으로 통합하여 답변을 최종화
  • Limitations
    • LLM의 Instruction-following 능력이나 Reasoning 능력에 의존함
    • Knowledge Consolidation 시, LLM의 내재적 편견과 환각이 발생할 수 있음
    • Main Results에서 API Call을 비교하는 것은 의미가 없어 보임
    • API Call에 사용한 token 수를 비교해야 함

References

[1] (LREC-COLING 2024) Tug-of-War between Knowledge: Exploring and Resolving Knowledge Conflicts in Retrieval-Augmented Language Models

[2] (ACL 2024) Blinded by Generated Contexts: How Language Models Merge Generated and Retrieved Contexts for Open-Domain QA?

[3] (ICLR 2024) Adaptive Chameleon or Stubborn Sloth: Revealing the Behavior of Large Language Models in Knowledge Conflicts

[4] (ACL 2024) When Not to Trust Language Models: Investigating Effectiveness of Parametric and Non-Parametric Memories

[5] (ICML Workshop 2024) Universal Self-Consistency for Large Language Models
[6] (ICLR 2023) Generate rather than Retrieve: Large Language Models are Strong Context Generators
[7] (arXiv 2024) Certifiably Robust RAG against Retrieval Corruption
[8] (arXiv 2024) InstructRAG: Instructing Retrieval-Augmented Generation via Self-Synthesized Rationales
[9] (EMNLP Industry 2024) Retrieval Augmented Generation or Long-Context LLMs? A Comprehensive Study and Hybrid Approach

반응형