전체 그래프
RAG

Context Window Enhancement

ai-mlrag

상위: Advanced RAG Techniques

검색된 핵심 청크의 정보가 부족한 문제를 해결하기 위해, 해당 청크의 원본 문서상 앞뒤에 위치한 이웃 청크들을 함께 제공하여 문맥을 보강하는 간단한 후처리 기법

Context Window Enhancement

  • 작동방식
    1. 작은 단위로 검색: 우선 문서를 작은 크기로 잘라 청킹하고, 사용자 질문과 가장 관련성 높은 청크들을 검색
    2. 주변 문맥 확장: 검색된 청크들을 LLM에 바로 보내지 않고, 이 청크들이 원본 문서의 어느 위치에 있었는지 메타데이터에 저장된 인덱스(index)를 통해 확인
    3. Window 재구성: 관련성 높은 청크를 중심으로, 그 주변(앞/뒤)의 청크들까지 포함하여 하나의 연속된 '창(Window)'을 통째로 재구성
    4. 최종 컨텍스트 전달: 이렇게 재구성된, 문맥적으로 더 풍부해진 '창'을 LLM에게 전달하여 답변을 생성
  • 장점
    • Relevant Segment Extraction (RSE)에 비해 구현이 매우 간단하고 직관적
    • 단편적인 정보 대신 연결된 문맥을 제공하여 LLM의 이해도를 높이고 답변 품질을 향상
    • num_neighbors 파라미터를 조절하여 보강할 문맥의 크기를 쉽게 조절
  • 구현
    • Chunking 단계에서 각 청크의 순서(index)를 메타데이터에 저장
    • 검색 후, 검색된 청크의 index를 기준으로 앞뒤 N개의 이웃 청크를 추가로 가져옴
    • 청크들을 순서에 맞게 합쳐 최종 컨텍스트를 만듬

vs Relevant Segment Extraction (RSE)

  • Context Window Enhancement (여기): 검색된 청크의 고정된 앞뒤 N개 이웃을 기계적으로 붙임 — 단순·직관적
  • RSE: 관련성 점수 + 페널티로 '최대 부분 배열 합' 알고리즘을 돌려 최적 구간을 동적으로 재구성 — 사이에 낀 저순위 청크까지 포함. 더 정교하지만 구현 복잡