Sign in to save your progressYou can keep reading without an account, but completed lessons won't be saved.
Sign in

Retrieval Augmented Generation(RAG)은 대규모 문서를 더 작은 조각으로 나누고 각 질문에 가장 관련성 있는 청크만 Claude에 제공함으로써 대규모 문서를 다루는 데 도움을 주는 기법입니다. 800페이지에 달하는 재무 보고서 전체로 모델을 압도하는 대신, RAG를 사용하면 특정 질문에 답하는 데 중요한 섹션만 추출할 수 있습니다.

대규모 문서의 문제점

방대한 문서를 가지고 있고 그에 대해 Claude에게 구체적인 질문을 하고 싶을 때, 근본적인 과제에 직면하게 됩니다: 한계에 도달하거나 성능을 저하시키지 않으면서 올바른 정보를 Claude에게 전달하려면 어떻게 해야 할까요?

긴 재무 문서에 대해 "이 회사는 어떤 위험 요소를 가지고 있습니까?"라고 질문하는 경우를 생각해 보세요. 문서에는 답이 포함되어 있지만, Claude가 여러분을 도와주기 위해서는 관련 콘텐츠에 접근할 수 있어야 합니다.

옵션 1: 프롬프트에 모든 내용 포함하기

가장 간단한 접근 방식은 문서에서 모든 텍스트를 추출하여 단일 프롬프트에 채워 넣는 것입니다:

이 방법에는 심각한 한계가 있습니다:

  • 엄격한 토큰 제한으로 인해 매우 긴 문서는 단순히 들어가지 않을 수 있습니다
  • Claude는 매우 긴 프롬프트에서 효과가 떨어집니다
  • 더 큰 프롬프트는 비용이 더 많이 들고 처리 시간이 더 오래 걸립니다
  • 살펴봐야 할 정보가 너무 많으면 성능이 저하됩니다

옵션 2: 문서를 청크로 나누기

RAG는 문서를 관리 가능한 조각으로 사전 처리한 다음, 각 질문에 관련된 청크만 검색하는 더 스마트한 접근 방식을 취합니다.

작동 방식은 다음과 같습니다:

  1. 문서를 더 작은 청크로 분할합니다(전략 개요, 위험 요소, 재무상태표 등)
  2. 사용자가 질문을 하면 그들이 찾고 있는 것을 분석합니다
  3. 질문과 가장 관련성 있는 청크를 찾습니다
  4. Claude에게 보내는 프롬프트에 관련된 청크만 포함합니다

회사의 위험에 대한 질문의 경우, 시스템은 "위험 요소" 청크를 식별하고 검색하여 전체 문서 대신 Claude에게 집중적이고 관련성 있는 컨텍스트를 제공합니다.

RAG의 장점

  • Claude가 가장 관련성 있는 콘텐츠에만 집중할 수 있습니다
  • 매우 큰 문서와 여러 문서로 확장할 수 있습니다
  • 단일 파일뿐만 아니라 문서 모음 전체에서 작동합니다
  • 더 작은 프롬프트는 더 빠른 처리와 더 낮은 비용을 의미합니다

RAG의 과제

RAG는 관리해야 할 복잡성을 도입합니다:

  • 문서를 청크로 나누는 사전 처리 단계가 필요합니다
  • 관련 청크를 찾기 위한 검색 메커니즘이 필요합니다
  • 검색된 청크에 필요한 모든 컨텍스트가 포함되어 있지 않을 수 있습니다
  • 텍스트를 청크로 나누는 방법은 다양합니다 - 어떤 접근 방식이 가장 효과적일까요?

문서를 동일한 분량으로, 헤더와 섹션별로, 의미론적 의미별로, 또는 다른 전략으로 청크화할 수 있습니다. 각 접근 방식에는 특정 사용 사례에 맞게 평가해야 할 트레이드오프가 있습니다.

RAG를 사용해야 하는 경우

RAG는 사용자가 콘텐츠의 일부만 필요한 구체적인 질문을 하는 대규모 문서나 문서 모음을 다룰 때 빛을 발합니다. 단일 프롬프트에 들어가는 범위를 넘어 확장해야 하거나, 더 빠른 응답을 원하거나, 많은 쿼리에 걸쳐 비용을 관리해야 할 때 사전 처리의 복잡성은 그만한 가치가 있습니다.

핵심은 청크화, 검색, 검색 구현의 기술적 오버헤드가 특정 애플리케이션에 적합한지 분석하는 것입니다. 때로는 "모든 것을 프롬프트에 넣는" 단순한 접근 방식이 잘 작동하지만, 다른 경우에는 시스템을 실용적이고 성능이 좋게 만들기 위해 RAG가 필수적이 됩니다.