TIL

👀Today I Learn

1. RAG란?

  • Retrieval-Augmented Generation (RAG)은 대형 언어 모델(LLM)이 외부 지식을 검색(retrieval)하여 더 정확하고 정보가 풍부한 응답을 생성(generation)할 수 있도록 하는 기법
  • 이 접근법은 기본 LLM의 한계를 극복하기 위해 검색(search)과 생성(generation)을 결합하는 방식으로, 특히 사전 훈련(pre-training)된 모델의 정적인 지식 한계를 극복하는 데 유용
  • ✅핵심 아이디어:
    • 기존 LLM은 고정된 파라미터(parameter) 내에서만 답변을 생성
    • 하지만 RAG는 실시간으로 외부 데이터베이스, 검색 엔진, 문서 저장소에서 관련 정보를 검색하여, 보다 풍부한 정보에 기반한 응답을 생성할 수 있음
    • 이를 통해 최신 정보 반영, 근거 기반 답변 생성, 지식 확장이 가능해짐


2. RAG가 등장한 배경

기존 LLM의 한계

  • 사전 학습된 지식만 사용 → 모델이 훈련된 이후 발생한 최신 정보를 반영하지 못함
  • 사실적 오류(hallucination) 문제 → 모델이 없는 정보를 생성할 가능성이 높음
  • 긴 컨텍스트 유지 한계 → LLM은 일반적으로 긴 문서를 읽고 분석하는 데 한계가 있음

RAG의 필요성

  • 최신 지식을 활용하고, 모델의 정적인 한계를 극복하기 위해 RAG가 도입됨
  • LLM이 실시간으로 검색 가능한 시스템과 연결되면, 보다 정확하고 신뢰할 수 있는 응답을 생성할 수 있음


3. RAG의 구조

RAG의 핵심 구성 요소

  • RAG는 크게 두 가지 주요 단계로 구성됨

(1) Retrieval (검색 단계)

  • 쿼리(query): 사용자의 입력(질문)을 기반으로 관련 정보를 검색
  • 외부 지식 소스: 검색 대상은 웹 문서, 논문 데이터베이스, 위키피디아, 회사 내부 데이터 등 다양할 수 있음
  • 검색 엔진(Retriever) 활용
    • BM25 (고전적인 정보 검색 알고리즘)
    • DPR (Dense Passage Retrieval)
    • ColBERT (효율적인 딥러닝 기반 검색 모델)

(2) Generation (생성 단계)

  • 검색된 문서를 기반으로 LLM이 답변을 생성
  • 단순한 원문 복사(copy)가 아닌, 문맥을 반영하여 새로운 응답을 생성하는 방식

예시

  • 사용자: “2024년 대선 결과는?”
  • RAG 검색 단계: 뉴스 아카이브에서 최신 대선 결과를 검색
  • RAG 생성 단계: 검색된 문서를 요약하여 응답 생성
  • 출력: “2024년 대선에서 후보 X가 승리했다는 보도가 있습니다.”


4. RAG의 최신 연구 및 발전

RAG의 최신 연구 방향

  • Self-Adaptive Retrieval
    • 단순히 검색된 문서를 이용하는 것이 아니라, 문맥에 따라 검색 전략을 동적으로 조정
    • 예: 간단한 질문에는 빠른 검색, 복잡한 질문에는 심층 검색 적용
  • Multi-hop Retrieval:
    • 하나의 검색 결과를 바탕으로 추가적인 검색을 수행하는 방식
    • 예: “양자 컴퓨팅의 현재 연구 동향은?” → 최신 논문 검색 → 논문 인용 논문 추가 검색
  • Augmented Memory in RAG:
    • 검색된 정보가 캐시(cache)처럼 저장되어 재사용될 수 있는 구조
    • LLM이 동일한 질문에 대해 일관된 응답을 생성하도록 도움

RAG의 주요 적용 사례

  • 오픈 도메인 질문 응답 (Open-domain QA)
    • 예: 구글 검색 기반 AI 비서, ChatGPT with Bing
    • 최신 뉴스나 트렌드 정보를 검색하여 반영할 수 있음
  • 기업 내부 문서 검색 및 요약
    • 예: 회사의 내부 보고서를 검색하고 요약하는 AI 시스템
  • 과학 연구 및 논문 분석
    • 최신 연구 논문을 검색하여 연구 동향 분석을 자동화
  • 의료 및 법률 컨설팅
    • 의학 논문, 법률 조항 검색 후 전문가 수준의 답변 생성 가능


5. RAG의 한계 및 해결 방안

RAG의 주요 한계

  • 검색된 문서의 품질 문제
    • 잘못된 정보(inaccurate information)가 포함될 가능성이 있음
    • 최신 뉴스, 소셜 미디어, 신뢰할 수 없는 데이터 출처 문제
  • 빠른 검색과 정확성의 균형 문제
    • 빠른 검색(Fast Retrieval)과 깊이 있는 검색(Deep Retrieval) 간의 균형을 맞추는 것이 어려움
  • 추론 오류 (Inference Error)
    • 검색된 정보를 적절히 활용하지 못하면, 오히려 비효율적인 답변을 생성할 가능성이 있음.

해결 방안

  • Self-Consistency RAG
    • 여러 번 검색 및 응답 생성 후 가장 일관성 있는 답변을 선택
  • Fact-Verification RAG
    • 검색된 정보의 신뢰도를 평가하고, 팩트체크(fact-checking) 알고리즘을 적용
  • Adaptive Retrieval Strategies
    • 질문 유형에 따라 적절한 검색 방법을 동적으로 선택


6. 결론 및 시사점

  • RAG는 검색과 생성의 조합을 통해, LLM의 한계를 극복할 수 있는 강력한 방법론
  • 최신 연구는 “Self-Adaptive Retrieval” 및 “Multi-hop Retrieval”을 활용하여 RAG의 효율성을 개선하고 있음
  • 검색된 정보의 신뢰성 문제를 해결하기 위해 “Fact-Verification RAG”와 같은 기법이 연구되고 있음
  • RAG는 AI 기반 검색, 질문 응답 시스템, 법률·의료 도메인 등 다양한 분야에서 활용될 가능성이 큼


📜참고한 논문

  • “Retrieval-Augmented Generation for Large Language Models: A Survey” (2023)
  • “Retrieval-Augmented Generation for AI-Generated Content: A Survey” (2024)

💡Today I Thought

오늘의 체크리스트

  • 알고리즘 코드카타 306-310
  • SQL 코드카타 103
  • AI 모델 활용 1주차 강의 듣기
  • LLM 도전과제
  • DRF 복습
  • TIL 작성

회고

  어제 하려고 했지만 못했던 LLM 도전과제를 했다. DRF 개념이 헷갈려서 이리저리 찾아보고 공부하느라고 시간을 조금 더 써버렸다. 아무래도 조금 더 공부가 필요할 것 같다. Django 할 때까지는 괜찮았는데, DRF는 왜 이렇게 어려운건지🥹 한참 부족하다 진짜루.. 관련 서적을 사서 조금 더 추가적으로 공부할까 싶다. 물론 공식문서를 보는 것도 좋지만, 개념 자체가 헷갈려서..🫠 누가 좀 도와주세여.. he..l..p..

댓글남기기