본문으로 건너뛰기

Self-RAG: LLM을 위한 적응형 검색 및 자기 비판

· 약 5분
Mike Thrift
Mike Thrift
Marketing Manager

표준 RAG(검색 증강 생성)는 검색이 도움이 되는지 여부와 상관없이 매번 검색을 수행합니다. Asai 등이 발표한 Self-RAG(ICLR 2024 Oral)는 다른 질문을 던집니다. 모델이 스스로 언제 정보를 찾아볼지 결정하고 그 결과를 평가한다면 어떨까요? 이 차이는 매우 중요하며, 그 메커니즘은 면밀히 연구할 가치가 있을 만큼 깔끔합니다.

논문 요약

2026-05-09-self-rag-learning-to-retrieve-generate-critique-self-reflection

기존 RAG의 핵심적인 불만 사항은 무차별성입니다. 모든 입력에 대해 고정된 수의 문장을 검색하고, 이를 앞에 추가한 뒤 생성합니다. 이는 검색이 도움이 될 때는 잘 작동하지만, 문장이 관련 없거나 모델이 이미 가중치 내에 답을 가지고 있을 때는 오히려 방해가 됩니다. 이 논문은 Akari Asai, Zeqiu Wu, Yizhong Wang, Avirup Sil, Hannaneh Hajishirzi(워싱턴 대학교 및 IBM 연구소)가 저술한 **Self-Reflective Retrieval-Augmented Generation (Self-RAG)**을 소개합니다.

핵심 메커니즘은 훈련 시 모델의 어휘집에 구워 넣은 네 가지 특수 *성찰 토큰(reflection tokens)*입니다. Retrieve는 검색기를 호출할지 여부를 결정합니다. IsRel(relevance)은 검색된 문장이 쿼리에 대한 유용한 정보를 실제로 포함하고 있는지 평가합니다. IsSup(support)은 생성된 주장이 문장에 의해 완전히, 부분적으로 또는 전혀 지지되지 않는지 확인합니다. IsUse(utility)는 전체 응답 품질을 1에서 5까지 점수로 매깁니다. 모델은 일반 출력과 함께 이러한 토큰을 인라인으로 내보내도록 학습하며, 한 번의 순전파(forward pass)에서 자신의 검색과 생성을 비판합니다.

훈련은 2단계로 진행됩니다. 먼저 비판 모델(LLaMA 2, 7B 파인튜닝)을 토큰 유형당 약 4,000~20,000개의 라벨링된 예시로 훈련하여 GPT-4 예측과 90% 이상의 일치율을 달성합니다. 그런 다음 해당 비판 모델이 150,000개의 지시어-출력 코퍼스에 오프라인으로 주석을 달고, 생성 모델은 성찰 토큰을 일반 어휘로 취급하여 이 주석이 달린 데이터로 훈련됩니다. 강화 학습은 필요하지 않습니다.

주요 아이디어

  • 네 가지 성찰 토큰(Retrieve, IsRel, IsSup, IsUse)은 단순히 이진법적인 검색 여부 결정을 넘어, 증거를 신뢰할 가치가 있는지에 대해 모델에게 구조화된 내부 대화를 부여합니다.
  • Self-RAG 13B는 PopQA에서 55.8%, TriviaQA에서 69.3%, PubHealth에서 74.5%, ARC-Challenge에서 73.1%, 전기 FactScore에서 80.2를 기록하여 ChatGPT 및 검색 증강 Llama2-chat을 모두 능가했습니다.
  • PopQA에 대한 절제 연구에 따르면 테스트 시 검색을 제거하면 성능이 20.8%포인트 하락하는 반면, 비판 모델만 제거하면 2.9%포인트 하락합니다. 즉, 검색기가 핵심적인 역할을 하며 비판은 그 위에 정밀함을 더합니다.
  • 추론 시 비판 토큰의 가중치를 조정하여 재학습 없이도 인용의 정확성과 유창함 사이의 균형을 맞출 수 있습니다. 이를 통해 다양한 다운스트림 애플리케이션에 맞게 모델의 동작을 구성할 수 있습니다.
  • ICLR 2024 프로그램 위원회는 Self-RAG에 Oral 등급(상위 1%)을 부여했으며, 이는 기술적 기여에 대한 동료들의 진정한 인정을 반영합니다.

유효한 점과 그렇지 않은 점

절제 연구 결과는 설득력이 있습니다. 항상 검색하는 것과 검색하지 않는 것 사이의 격차(20.8%p)는 큽니다. 모델은 유용한 검색과 노이즈를 구별하는 법을 분명히 배웠습니다. IsRel 및 IsSup 토큰은 적응형 검색 단독보다 측정 가능한 가치를 더합니다. 이는 단순히 재구성이 아닌 의미 있는 결과입니다.

덜 확신하는 부분은 일반화에 대한 주장입니다. 5가지 평가 과제(PopQA, TriviaQA, PubHealth, ARC-Challenge, ASQA)는 모두 단답형 또는 객관식 QA로, 단일 검색 문장이 결정적인 신호를 제공할 수 있는 설정입니다. 금융 업무가 위치한 다중 문서 컨텍스트에서의 긴 생성은 덜 정밀하게 검토되었습니다. 전기 FactScore(80.2)가 가장 근접한 대리 지표이지만, 전기는 수년간의 방대한 지출 장부에 비해 상대적으로 구조화가 잘 되어 있습니다.

재현성 문제도 있습니다. 비판 모델의 훈련 라벨은 GPT-4에서 생성됩니다. 이는 라벨 품질이 폐쇄형 시스템에 의존하게 만들고 보고되지 않은 API 비용을 발생시킵니다. 이후 CRAG(arXiv:2401.15884)는 Self-RAG의 7B 비판 모델보다 훨씬 가벼운 0.77B 검색 평가기가 검색 품질을 수정하고 PopQA에서 표준 RAG보다 19.0%p 높은 성능을 얻을 수 있음을 보여주었습니다. 이는 선택적 검색에 대한 핵심 통찰이 유효하더라도 무거운 파인튜닝 비판 모델이 반드시 필요한 것은 아닐 수 있음을 시사합니다.

마지막으로 비교 대상인 베이스라인이 중요합니다. ChatGPT(아마도 2023년 말의 GPT-3.5-turbo)와 Llama2-chat을 이기는 것은 오픈 소스 13B 모델로서 합리적인 기준이지만, 프론티어 모델들은 그 이후 실질적으로 발전했습니다. Self-RAG의 적응형 검색이 동일한 벤치마크에서 단순한 항상 검색 설정을 가진 적절한 프롬프트의 GPT-4o를 이길 수 있을지는 다루어지지 않았습니다.

금융 AI에 이것이 중요한 이유

Beancount 장부를 다루는 금융 에이전트는 Self-RAG가 해결하려는 검색 판별 문제에 정확히 직면합니다. 사용자가 "이번 달 내 순이익은 얼마인가요?"라고 물을 때, 에이전트는 로드된 컨텍스트에서 계산할 수 있으므로 검색은 오히려 노이즈만 추가할 수 있습니다. 반면 동일한 사용자가 "3분기 계약업체 인보이스를 기록했나요?"라고 물으면 에이전트는 수년간의 항목을 스캔해야 할 수도 있습니다. 항상 검색하는 것은 컨텍스트를 낭비하고 관련 없는 오래된 거래를 주입할 위험이 있으며, 전혀 검색하지 않으면 조회를 놓치게 됩니다.

IsRel 및 IsSup 토큰은 장부 검증 로직에 깔끔하게 매핑됩니다. IsRel: 검색된 거래 항목이 실제로 쿼리와 관련이 있는가? IsSup: 검색된 컨텍스트가 실제로 생성된 잔액 수치를 뒷받침하는가, 아니면 수치가 환각인가? 유틸리티 점수(1~5)는 사후 기록(write-back) 신뢰도에 정보를 제공할 수 있습니다. 모델이 스스로의 추론에 4 또는 5점을 줄 때만 제안된 분개(journal entry)를 확정하고, 나머지는 사람이 검토하도록 플래그를 지정하는 식입니다.

재현성 우려는 여기서도 중요합니다. 상용 회계 에이전트의 경우 훈련 라벨 생성을 GPT-4에 의존하는 것은 운영상의 제약입니다. CRAG와 같은 가벼운 평가기가 유사한 선택적 검색을 달성할 수 있다면 그것이 더 배포하기 적합한 경로입니다. 특정 토큰 훈련 레시피가 대체되더라도 검색 전 결정, 검색 후 비판이라는 Self-RAG의 설계 원칙은 여전히 가치 있습니다.

다음 읽을거리

  • CRAG: Corrective Retrieval Augmented Generation (arXiv:2401.15884) — Self-RAG의 적응형 검색 아이디어를 기반으로 가벼운 평가기와 로컬 검색 실패 시 웹 검색 폴백을 구축했습니다. 중복되는 벤치마크에서 Self-RAG와 직접 비교해 볼 가치가 있습니다.
  • RQ-RAG: Learning to Refine Queries for Retrieval Augmented Generation (arXiv:2404.00610) — Self-RAG가 가장 덜 매끄럽게 처리하는 시나리오인 복잡한 멀티홉(multi-hop) QA를 위한 쿼리 분해에 중점을 둡니다.
  • FRAMES: Retrieval and Augmentation for Multi-Hop Evaluation (arXiv:2409.12941) — 여러 검색된 사실을 연결해야 하는 다중 문서 RAG를 위한 Google DeepMind의 벤치마크로, Self-RAG 스타일의 모델에 대한 자연스러운 고난도 테스트입니다.