한 줄 정의

RAG 메모리에 유저 질문과 AI 답변을 낱개 문장으로 분리 저장하지 않고 User: ... \n Assistant: ... 형태의 단일 상호작용 블록으로 묶어 색인하는 기법.

핵심 요지

  • 맥락 유실 방지: 질문과 답변을 쪼갤 경우 답변(예: “앨리스입니다”)이 속한 원래 질문(“내 이름이 뭐지?”)의 맥락과 연결 고리를 잃어버리는 문제 방지.
  • 검색 정밀도 향상: 새로운 유저 쿼리와 의미가 매칭되는 과거 질문을 조회할 때, 그에 딸려 있는 구체적인 답변(사실 정보)까지 단일 청크로 완벽히 끌어올 수 있음.

상세

  • 포맷팅 형태:
    User: [유저 입력]
    Assistant: [어시스턴트 답변]
  • 메타데이터(타임스탬프, 턴 유형 등)를 함께 부여하여 시간 기반 필터링 및 관리 확장 지원.

예시

  • 사용자 텍스트와 어시스턴트 답변을 한 턴의 텍스트 블록으로 포맷팅하여 Vector Store 및 BM25 Index 양쪽에 수집.

충돌

  • 청크 크기 증가: 상호작용 쌍을 통합하므로 단일 문장 저장 대비 청크 토큰 길이는 길어짐.

관련 노트