주요 컨텐츠로 이동

엔드투엔드 RAG 워크플로: 검색 증강 생성(Retrieval Augmented Generation)의 작동 방식

수집 및 임베딩부터 검색, 증강, 생성에 이르기까지 RAG 워크플로가 작동하는 방식을 알아보세요. 하이브리드 검색, 평가 및 배포에 대해 다룹니다.

작성자: Databricks 직원

  • 검색 증강 생성(RAG)은 수집, 임베딩, 검색, 증강, 생성의 5단계 파이프라인을 통해 대규모 언어 모델(LLM)을 외부 지식 베이스와 연결하여, 모델을 재학습시키지 않고도 정확하고 도메인에 특화된 답변을 제공할 수 있게 합니다.
  • 프로덕션 RAG 워크플로를 구축하려면 적절한 임베딩 모델 선택, 벡터 데이터베이스 인덱싱 및 청킹(chunking) 전략 구성, 그리고 검색 품질을 극대화하기 위해 의미론적 벡터 검색과 키워드 폴백을 결합한 하이브리드 검색 구현이 필요합니다.
  • RAG 평가는 검색 정밀도와 생성 충실도를 독립적으로 측정해야 합니다. 뛰어난 LLM 성능이라도 취약한 정보 검색 구성 요소를 보완할 수 없으며, 오래된 지식으로 인해 답변 정확도가 떨어지는 것을 방지하려면 지속적인 데이터 업데이트가 필수적이기 때문입니다.

검색 증강 생성(RAG)은 추론 시점에 대규모 언어 모델을 외부 지식 소스에 연결하여, 모델이 정적 학습 데이터를 넘어 정확하고 문맥을 인식하는 답변을 생성할 수 있도록 지원하는 AI 아키텍처 패턴입니다. RAG 시스템은 사전 학습 중에 인코딩된 지식에 의존하는 대신, 각 사용자 쿼리에 대한 응답으로 외부 데이터베이스에서 관련 문서를 검색하고 생성 전에 해당 콘텐츠를 LLM 프롬프트에 주입합니다. 그 결과, 기본 지식이 변경될 때마다 매번 전체 모델을 재학습할 필요 없이, 검증된 소스에 기반하여 정확하고 특정 도메인에 특화된 답변을 생성하는 생성형 AI 시스템이 구축됩니다.

LLM은 지식 단절로 인해 오래된 답변을 제공하는 경우가 많으며, 독점적인 내부 문서나 실시간 외부 데이터 소스에 액세스할 수 없습니다. RAG는 이러한 한계를 직접적으로 해결합니다. 60% 이상의 조직이 AI 기반 검색 도구를 적극적으로 개발하고 있으며, 이는 모델 메모리에만 의존하던 방식에서 내부 문서, 제품 문서, 최신 데이터가 포함된 실시간 지식 베이스에 AI를 동적으로 연결하는 방식으로의 근본적인 전환을 반영합니다.

이 가이드는 아키텍처 구성 요소와 데이터 수집부터 하이브리드 검색, 프롬프트 디자인, 평가, 배포에 이르기까지 전체 RAG 워크플로를 살펴보며, 프로덕션 RAG 파이프라인을 구축하는 팀을 위한 실용적인 지침을 제공합니다.

RAG 아키텍처의 핵심 구성 요소

RAG 시스템은 외부 지식을 저장하는 지식 베이스, 각 쿼리에 대해 관련 문서를 찾는 정보 검색 구성 요소(검색기), 검색된 문맥을 LLM 프롬프트로 결합하는 통합 레이어, 최종 답변을 생성하는 생성기(LLM)의 네 가지 주요 구성 요소로 이루어집니다. 각 구성 요소는 독립적으로 최적화할 수 있으며, 전체 파이프라인의 품질은 가장 약한 고리에 의해 제한됩니다. 즉, 고품질 LLM이라도 일관되게 관련 없는 문서를 제시하는 검색기를 보완할 수는 없습니다.

검색기와 벡터 데이터베이스

검색기는 사용자 쿼리를 받아 비교 가능한 표현으로 변환하고, 지식 베이스에서 가장 관련성이 높은 문서를 반환합니다. 검색기의 품질은 RAG 출력 품질을 결정하는 단일 가장 큰 요인입니다. 벡터 데이터베이스는 임베딩이라고 불리는 문서 청크의 수치적 표현을 저장하여 대규모로 빠른 유사도 검색을 가능하게 합니다. 정확한 값으로 매칭하는 관계형 데이터베이스와 달리, 벡터 데이터베이스는 코사인 유사도와 같은 거리 메트릭을 사용하여 의미상 쿼리와 가장 유사한 문서를 찾습니다.

생성기 및 오케스트레이션 레이어

생성기는 검색된 문맥과 사용자의 원래 질문이 결합된 증강 프롬프트를 받아 최종 답변을 생성하는 대규모 언어 모델입니다. 오케스트레이션 레이어는 모든 구성 요소를 일관된 RAG 파이프라인으로 연결하여 프롬프트 구성, 대화 기록 및 오류 처리를 관리합니다. LangChain 및 LlamaIndex와 같은 프레임워크는 공통 오케스트레이션 기본 요소를 제공하는 반면, Databricks와 같은 플랫폼은 전체 스택에 대한 관리형 인프라를 제공합니다.

데이터 소스 및 외부 지식

RAG 시스템에 유효한 데이터 소스의 범위는 관계형 테이블의 정형 데이터, PDF 및 마크다운 파일의 비정형 텍스트, 엔지니어링 런북 및 HR 정책과 같은 내부 문서, 제품 문서, 외부 지식 베이스 등 매우 다양합니다. 도메인 특화 데이터(사용자가 질문할 내용과 직접적으로 관련된 콘텐츠)를 가장 먼저 수집하고 가장 신중하게 관리해야 합니다. 독점 연구 및 내부 문서를 포함한 내부 데이터는 공개된 LLM이 학습하지 않은 지식을 나타내므로, RAG 구현에서 가장 확실한 경쟁 우위를 창출합니다.

데이터 소스를 선택할 때 실질적인 문제는 관련성 밀도입니다. 즉, 인덱싱된 문서 중 실제 쿼리에 대한 응답으로 실제로 검색되는 비율은 얼마나 될까요? 관련성이 높은 소스는 임베딩 및 인덱싱에 소요되는 컴퓨팅 및 재정적 비용을 정당화하지만, 관련성이 낮은 소스는 검색기가 필터링해야 하는 노이즈를 증가시켜 검색 품질을 저하시킵니다.

수집 파이프라인이 각 소스를 일관된 텍스트 형식으로 정규화하는 한, 단일 RAG 시스템에서 여러 데이터 소스를 결합할 수 있습니다(예: 제품 문서 코퍼스와 실시간 고객 데이터베이스 결합). 팀은 인덱싱된 모든 소스의 데이터 계보(lineage)를 기록하여 검색된 모든 문서의 출처를 신뢰할 수 있는 기원으로 추적할 수 있도록 해야 하며, 이를 통해 규제 대상 산업에서 감사 및 준수 워크플로를 지원할 수 있습니다.

임베딩 모델 및 벡터 저장소

임베딩 모델 선택하기

임베딩 모델은 텍스트를 의미론적 의미를 인코딩하는 고차원 벡터인 수치적 표현으로 변환하는 특화된 언어 모델입니다. 사용자가 쿼리를 제출하면 동일한 임베딩 모델이 해당 사용자 입력을 비교 가능한 벡터로 변환하여 쿼리와 저장된 모든 문서 임베딩 간의 수학적 비교를 가능하게 합니다. 수집 중에 사용된 임베딩 모델은 쿼리 시점에 사용된 모델과 동일해야 합니다.

모델 선택에는 표현 품질, 벡터 차원 수, 추론 지연 시간, 재정적 비용 간의 절충(tradeoff)이 수반됩니다. bge-large-en과 같은 범용 모델은 다양한 도메인에서 우수한 성능을 발휘하는 1,024차원 벡터를 생성합니다. 기술 텍스트에 미세 조정(fine-tuned)된 도메인 특화 임베딩 모델은 좁은 범위의 검색 작업에서 일반 모델보다 더 나은 성능을 발휘하는 경우가 많습니다. 임베딩 모델은 원시 텍스트를 벡터 유사도 검색을 가능하게 하는 수치적 표현으로 변환합니다.

임베딩 모델은 검색해야 하는 문서와 다르게 표현된 쿼리를 처리하는 능력(다국어 또는 패러프레이징 견고성이라고 함)을 기준으로 평가할 수도 있습니다. 사용자는 대화체로 질문하는 반면 문서는 공식적으로 작성되는 엔터프라이즈 환경에서는 이러한 의미론적 연결이 매우 중요합니다. 프로덕션 인덱싱 작업을 수행하기 전에 실제 사용자 쿼리의 대표 샘플을 대상으로 임베딩 모델을 테스트하면 나중에 전체 코퍼스를 다시 임베딩하는 데 드는 막대한 비용을 방지할 수 있습니다.

청킹 전략 및 인덱싱

임베딩 모델의 컨텍스트 창이 제한되어 있고 청크가 작을수록 더 정확한 검색이 가능하기 때문에, 임베딩 전에 대용량 문서를 더 작은 청크로 분할해야 합니다. 청크 크기는 출력 품질에 직접적인 영향을 미칩니다. 청크가 너무 작으면 주변 문맥을 잃게 되고, 너무 크면 사용자 질문과 가장 관련성이 높은 특정 단락의 의미가 희석됩니다. 일반적인 전략으로는 토큰 수에 따른 고정 크기 분할과 핵심 문맥이 경계에 걸쳐 손실될 위험을 줄이기 위해 중복 테두리를 두는 문장 경계 분할 등이 있습니다.

임베딩이 완료되면 벡터는 벡터 저장소에 저장되고 인덱싱됩니다. HNSW와 같은 알고리즘을 사용하는 벡터 인덱스는 대규모로 근사 최근접 이웃 검색을 가능하게 하도록 임베딩을 구성하여, 모든 임베딩을 선형 탐색하는 대신 밀리초 미만의 조회 시간으로 검색을 단축합니다.

정보 검색 및 하이브리드 검색

대부분의 RAG 시스템의 중추 역할을 하는 의미론적 검색(semantic search)은 패러프레이징과 동의어를 자연스럽게 처리하여 사용자의 쿼리와 의미가 가장 가까운 문서를 찾습니다. Databricks AI Search는 Delta 테이블의 자동 동기화를 통해 의미론적 벡터 검색을 구현하므로, 수동으로 다시 인덱싱할 필요 없이 지식 베이스에 새로운 데이터가 반영됩니다.

순수 의미론적 검색은 특정 오류 코드, 버전 번호 또는 고유 명사와 같은 정확한 일치(exact-match) 쿼리에 취약하다는 단점이 있습니다. 하이브리드 검색은 의미론적 벡터 검색과 정확한 단어 및 희귀 단어 매칭에 뛰어난 확률적 용어 빈도 모델인 BM25 키워드 검색을 결합하여 이 문제를 해결합니다. 두 검색 경로를 병렬로 실행하고 상호 순위 결합(reciprocal rank fusion)을 사용하여 결과를 병합하면 더 넓은 쿼리 분포에서 검색 효율성이 향상됩니다.

리랭킹(reranking) 단계를 통해 교차 인코더(cross-encoder) 모델을 적용하여 쿼리에 대해 검색된 각 문서의 점수를 매기고 가장 관련성이 높은 문서가 맨 위에 표시되도록 결과를 재정렬함으로써 결과를 더욱 개선할 수 있습니다. 리랭킹과 같은 검색 방법은 정밀도를 크게 향상시키며, 특히 LLM 컨텍스트 창으로 인해 생성기에 전달할 수 있는 문서 수가 제한되어 있을 때 유용합니다.

유사도 임계값은 최종 품질 게이트 역할을 합니다. 관련성 점수가 최소 기준 미만인 문서는 품질이 낮은 문맥으로 생성기에 전달되는 대신 완전히 필터링되어야 합니다. 관련 없는 문맥을 전달하는 것은 문맥을 전혀 전달하지 않는 것보다 더 나쁩니다. 이는 컨텍스트 창을 소모하고 LLM이 생성된 답변에서 올바른 정보와 잘못된 정보를 혼합할 위험을 높이기 때문입니다. 보수적인 임계값을 설정하고 시간 경과에 따른 필터링 속도를 모니터링하는 것은 아키텍처 변경 없이 검색 품질을 유지하는 간단한 방법입니다.

RAG 작동 방식: 수집부터 생성까지

RAG 워크플로는 사용자의 질문을 근거 있고 정확한 답변으로 변환하는 5가지 순차적 단계를 따릅니다.

1단계: 외부 데이터 수집 및 정규화

RAG 파이프라인은 데이터 수집부터 시작됩니다. 원시 문서는 텍스트를 정리하고 정규화하는 ETL 파이프라인으로 로드되어 상투적인 문구를 제거하고 공백을 표준화하며 테이블 및 코드에서 정형 콘텐츠를 추출합니다. 데이터 레이크하우스 아키텍처는 통합 거버넌스 하에 정형 및 비정형 콘텐츠의 수집을 중앙 집중화하므로 RAG 지식 베이스의 자연스러운 기반이 됩니다.

2단계: 청킹, 임베딩 및 인덱싱

정제된 문서는 청크로 분할되고, 각 청크는 임베딩 모델을 거쳐 벡터를 생성합니다. 생성된 임베딩은 원본 텍스트 및 메타데이터(문서 제목, 날짜, 소스 URL)와 함께 벡터 스토어에 저장됩니다. 메타데이터를 사용하면 필터링된 검색이 가능해집니다. 예를 들어 특정 날짜 범위 내에 게시되었거나 특정 사용자 역할만 액세스할 수 있는 문서로 결과를 제한할 수 있습니다. RAG가 데이터의 최신성을 유지하려면 지속적인 업데이트가 필요합니다. 프로덕션 시스템에는 업데이트된 소스 문서를 감지하고 예약된 일정이나 이벤트 기반으로 재임베딩을 트리거하는 자동화된 파이프라인이 필요합니다.

3단계: 관련 문서 검색

사용자가 쿼리를 제출하면 RAG 시스템은 동일한 임베딩 모델을 적용하여 사용자 입력을 벡터 표현으로 변환하고 벡터 스토어에 쿼리하여 가장 관련성이 높은 top-k 청크를 반환하는 유사도 검색을 수행합니다. 검색할 청크의 수인 k 값은 검색 범위와 컨텍스트 창(context window) 소비 사이에서 절충점을 찾아야 하며, 대상 LLM에 맞게 조정되어야 합니다.

4단계: LLM 프롬프트 보강

검색된 문서들은 보강된 프롬프트로 결합됩니다. 일반적인 구조는 시스템 지침("제공된 컨텍스트에만 기반하여 사용자의 질문에 답하세요. 컨텍스트에서 답을 찾을 수 없다면 그렇다고 말하세요.")을 먼저 배치하고, 그 뒤에 검색된 텍스트 청크, 그리고 사용자의 원래 질문을 배치합니다. 가장 관련성이 높은 문서를 먼저 배치하면 모델의 집중도를 높이는 경향이 있습니다. 특히 시작과 끝 부분의 컨텍스트가 중간 부분보다 더 많은 주목을 받는 "lost in the middle" 현상이 발생하기 쉬운 모델에서 더욱 그렇습니다.

5단계: 최종 답변 생성

생성기는 보강된 프롬프트를 수신하여 최종 답변을 생성합니다. 후처리를 통해 출처 인용을 추가하거나, 주제에서 벗어난 출력을 필터링하거나, 결과를 일관된 형식으로 구조화할 수 있습니다. LLM은 사전 학습을 통한 정적 학습 데이터에만 의존하는 대신 검색된 컨텍스트에 액세스할 수 있기 때문에 정확한 답변을 생성합니다.

대화 기록 관리는 멀티턴 RAG 애플리케이션의 생성 레이어에서 중요한 고려 사항입니다. 사용자가 이전 답변을 참조하는 후속 질문을 할 수 있도록 RAG 시스템이 세션의 이전 대화를 기억해야 하는 경우, 대화 기록이 보강된 프롬프트에 포함되어야 합니다. 이는 유효 프롬프트 길이를 늘리고 새로 검색된 문서에 사용할 수 있는 컨텍스트 창을 줄입니다. 개발 팀은 대화 기록, 검색된 컨텍스트, 현재 사용자 쿼리 간에 토큰을 할당하는 명시적인 컨텍스트 예산 관리를 구현해야 합니다.

보고서

기업을 위한 에이전틱 AI 플레이북

생성형 AI, LLM 프롬프트 디자인 및 오케스트레이션

재사용 가능한 LLM 프롬프트 템플릿은 정적 지침(시스템 역할, 행동 제약 조건, 출력 형식)과 런타임에 삽입되는 동적 콘텐츠(검색된 컨텍스트 및 사용자 쿼리)를 분리합니다. "제공된 컨텍스트에서만" 답변하라는 지침은 RAG 시스템에서 특히 중요합니다. 이 지침이 없으면 생성형 AI 모델은 검색된 콘텐츠를 암기된 학습 데이터로 보완하여, 검증된 정보와 잠재적으로 잘못된 모델 지식이 혼합된 답변을 생성하게 됩니다.

인용 삽입(각 생성된 답변에 소스 문서 메타데이터를 추가하는 작업)을 통해 검토자는 답변이 실제 검색된 데이터에 기반하고 있는지 확인할 수 있습니다. 엔터프라이즈 배포에서 인용 지원과 주제 범위, 답변 길이 및 에스컬레이션 동작을 제한하는 시스템 지침은 정확한 답변을 얻기 위한 프로덕션 필수 요구사항입니다.

파인 튜닝, 도메인 지식 및 대안

파인 튜닝은 정제된 데이터 세트에서 모델 가중치를 수정하여 사전 학습된 모델을 특정 도메인에 맞게 조정합니다. RAG와 달리 파인 튜닝은 추론 시점에 컨텍스트를 주입하는 대신 어휘, 어조, 암묵적인 도메인 지식 등 기본 모델의 동작 자체를 변경합니다. 파인 튜닝은 기본 모델이 도메인 특정 용어를 지속적으로 오해하거나 프롬프트 엔지니어링만으로는 원하는 답변 스타일을 얻을 수 없을 때 적합합니다.

최신 정보에 액세스하는 것이 목표일 때 파인 튜닝은 RAG의 효과적인 대체재가 될 수 없습니다. 새로운 데이터로 LLM을 파인 튜닝하는 것은 상당한 컴퓨팅 및 재정적 비용이 발생하며, 지속적으로 변화하는 지식 베이스의 속도를 따라잡을 수 없습니다. 대부분의 프로덕션 시스템은 두 가지를 모두 결합합니다. 파인 튜닝된 모델이 도메인 어조와 용어를 처리하고, RAG 워크플로우가 지식 액세스를 제공합니다. 지식 액세스를 위해 파인 튜닝에만 의존하는 것은 흔히 저지르는 비용이 많이 드는 실수입니다.

프롬프트 엔지니어링(모델 동작을 가이드하기 위해 시스템 지침과 퓨샷 예시를 설계하는 작업)은 모든 LLM 커스터마이징의 기본 출발점입니다. 추가적인 인프라가 필요하지 않으며 즉각적인 결과를 제공합니다. RAG 시스템의 경우, 프롬프트 엔지니어링은 검색된 컨텍스트가 모델에 표시되는 방식과 검색된 문서가 사용자의 질문에 완전히 답변하지 못할 때 모델이 불확실성을 표시하는 방식을 제어합니다. 보강된 프롬프트를 구성하는 것 자체가 프롬프트 디자인의 일종이므로, 정의상 모든 RAG 시스템은 프롬프트 엔지니어링을 통합하고 있습니다.

RAG 평가 및 검색 테스트

검색 품질 측정

RAG 평가는 정보 검색 구성 요소와 생성 구성 요소를 독립적으로 평가해야 합니다. 검색 평가는 precision@k를 사용합니다. 즉, 주어진 쿼리에 대해 검색된 k개의 문서 중 실제로 관련이 있는 문서의 비율은 얼마나 되는지 측정합니다. 알려진 정답 문서 및 답변과 쌍을 이루는 쿼리로 구성된 그라운드 트루스 평가 데이터 세트가 필수적인 전제 조건입니다. 이 데이터 세트를 구축하는 것은 노동 집약적이지만 필수적입니다. 이것이 없다면 개발 팀은 실제 RAG 평가 개선 사항과 무작위 변동을 구별할 수 없습니다.

생성 충실도 측정

생성 평가는 모델의 답변이 검색된 컨텍스트에 충실한지 여부를 측정합니다. 즉, 생성된 답변에 검색된 소스가 아닌 모델 학습 데이터에서 가져온 잘못되거나 조작된 정보가 포함되어 있는지 여부를 평가합니다. 다른 LLM이 각 답변의 충실도를 점수로 평가하는 LLM-as-judge 평가는 대규모 테스트 세트 전반에 걸쳐 확장 가능한 커버리지를 제공합니다. MLflow를 사용한 LLM 평가는 검색 및 생성 메트릭을 통합된 실험 추적 프레임워크에 통합합니다. RAG는 생성형 AI 모델의 환각 현상을 줄여주지만, 생성된 답변에서 모든 AI 환각을 완전히 제거할 수는 없습니다.

모니터링, 거버넌스 및 보안

RAG 시스템은 데이터 소스의 거버넌스 요구사항을 그대로 상속합니다. 사용자는 액세스 권한이 있는 문서만 검색해야 합니다. Unity Catalog는 전체 데이터 계보 추적과 함께 공통 액세스 제어 모델에 따라 관리되는 벡터 인덱스, Delta 테이블, 모델 엔드포인트 등 RAG 지식 베이스 전반에 걸쳐 세분화된 거버넌스를 제공합니다. 출처 태깅(생성된 각 답변을 이를 생성한 특정 문서 청크와 연결하는 작업)을 통해 검토자는 인용된 소스를 확인하고 AI가 생성한 콘텐츠를 감사할 수 있습니다. 규제 대상 산업에서 출처 추적은 규정 준수 요구사항인 경우가 많습니다.

모니터링은 지식 베이스의 최신성 결여(소스 문서가 마지막으로 업데이트된 시점과 RAG 인덱스가 마지막으로 새로 고쳐진 시점 간의 격차)도 추적해야 합니다. 오래된 문서를 지속적으로 반환하는 지식 베이스는 학습 데이터 컷오프가 오래된 LLM과 운영상 동일합니다. 둘 다 한때는 정확했지만 더 이상 현재 정보를 반영하지 못하는 답변을 생성합니다. 정의된 SLA 내에 소스 문서가 재인덱싱되지 않을 때 트리거되는 자동 최신성 알림은 시간이 지남에 따라 답변 정확도가 소리 없이 저하되는 것을 방지합니다.

벡터 스토어는 유휴 상태에서 암호화되어야 하고, 임베딩 및 LLM 추론 엔드포인트는 안전한 네트워크 경계 내에 배포되어야 하며, 감사 로그는 비정상적인 액세스를 감지하기 위해 모든 쿼리 및 검색 이벤트를 기록해야 합니다.

검색 레이어에서의 역할 기반 액세스 제어는 서로 다른 사용자나 팀이 승인된 데이터 도메인에서만 문서를 검색해야 하는 멀티테넌트 RAG 배포에서 특히 중요합니다. 검색 레이어 액세스 제어가 없으면 사용자 쿼리로 인해 관련 없는 비즈니스 부서의 기밀 문서가 노출될 수 있습니다. 이는 생성된 답변에서는 보이지 않지만 기본 검색 로그에는 기록되는 데이터 거버넌스 실패 사례입니다. 처음부터 RAG 아키텍처에 액세스 제어를 설계하는 것이 데이터가 인덱싱된 후에 이를 추가하는 것보다 훨씬 쉽습니다.

운영 확장 및 배포 모범 사례

대규모 지식 베이스의 초기 수집에는 대규모 배치 임베딩이 필요합니다. 초기 로드 후 증분 수집은 새 문서나 업데이트된 문서만 재임베딩합니다. 시스템은 초기 로드를 위해 임베딩 컴퓨팅을 오토스케일링하고 지속적인 증분 업데이트를 위해 스케일 다운해야 합니다. 배치 임베딩은 실시간 임베딩보다 문서당 비용이 훨씬 저렴합니다. 프로덕션 시스템은 수집 워크로드에 배치 처리를 사용하고 실시간 임베딩은 사용자 쿼리 처리를 위해 예약해야 합니다.

일반적으로 LLM 추론이 RAG 운영 비용의 대부분을 차지합니다. 검색된 문서를 LLM에 더 많이 전달할수록 쿼리당 추론 비용이 비례하여 증가하므로, 개발 팀은 비용을 제한하기 위해 최대 검색 문서 수와 프롬프트 길이에 대한 명시적인 정책을 설정해야 합니다. 각 구성 요소(임베딩 추론, 벡터 스토어, 오케스트레이션 서비스, LLM 엔드포인트)는 장애 조치를 위한 재시도 로직 및 서킷 브레이커 패턴을 갖추고 재현 가능한 배포가 가능하도록 컨테이너화되어야 합니다.

Databricks MLflow는 전체 RAG 스택과 통합된 실험 추적, 모델 레지스트리 및 평가 도구를 제공하여 개발 팀이 임베딩 모델의 버전을 관리하고, 검색 실험을 추적하며, 프로덕션 RAG 파이프라인 수명 주기를 관리할 수 있도록 지원합니다.

자주 묻는 질문

RAG 워크플로우는 LLM 파인 튜닝과 어떻게 다른가요?

RAG 워크플로는 추론 시점에 관련 문서를 검색하여 LLM 프롬프트에 주입하는 반면, 파인 튜닝은 배포 전에 새로운 데이터로 학습하여 모델 가중치를 수정합니다. RAG는 모델을 재학습시키지 않고도 최신 정보에 동적으로 액세스할 수 있도록 지원하므로, 자주 변경되는 지식에 대해 더 비용 효율적입니다. 파인 튜닝은 응답 스타일, 도메인 어휘 또는 특정 작업 전문화에 맞게 조정하는 데 더 적합합니다. 대부분의 프로덕션 시스템은 도메인 어조를 위한 파인 튜닝된 모델과 지식 액세스를 위한 RAG 워크플로를 결합하여 두 가지를 모두 사용합니다.

RAG 시스템에서 가장 흔히 발생하는 실패 모드는 무엇인가요?

낮은 검색 품질은 RAG에서 가장 흔히 발생하는 실패 모드입니다. 정보 검색 구성 요소가 관련 없는 문서를 반환하면, LLM은 확신에 찬 것처럼 보이지만 정확한 정보에 기반하지 않은 응답을 생성합니다. 이는 명백한 환각(hallucination) 현상보다 감지하기 더 어려운 실패 유형입니다. 검색 실패는 부적절한 청킹(chunking), 임베딩 모델의 의미론적 공간(semantic space)과 쿼리 분포 간의 불일치, 불충분한 하이브리드 검색 범위, 또는 사용자가 질문하는 정보 자체가 지식 베이스에 누락되어 발생합니다. 이러한 유형의 실패를 진단하려면 생성의 충실도(faithfulness)와 별개로 검색 정밀도(retrieval precision)를 평가하는 것이 필수적입니다.

RAG는 어떻게 AI 환각 현상을 줄이나요?

RAG는 모델이 기억에 의존하여 답변하도록 요구하는 대신 각 쿼리에 대해 구체적이고 검증된 컨텍스트를 LLM에 제공함으로써 생성형 AI 모델의 환각 현상을 줄입니다. 프롬프트가 검색된 컨텍스트에서만 답변하도록 모델에 명시적으로 지시하면, 모델이 정보를 왜곡하거나 꾸며낼 여지가 줄어듭니다. 이러한 감소 효과는 검색 품질에 비례합니다. 검색된 문서가 더 관련성 있고 완전할수록 모델이 추론해야 하는 부분이 줄어듭니다. RAG가 모든 AI 환각을 완전히 제거할 수는 없지만, 검색이 없는 생성 방식에 비해 발생 빈도를 크게 줄여줍니다.

RAG에는 어떤 외부 데이터 소스가 가장 적합한가요?

제품 문서, 기술 지식 베이스, 회사 정책 문서, 선별된 내부 리포지토리와 같이 밀도가 높고 도메인에 특화된 소스가 가장 좋은 검색 결과를 제공합니다. 일관된 서식과 명확한 단락 구분을 가진 소스는 구조가 느슨한 콘텐츠보다 더 안정적으로 청킹되고 임베딩됩니다. 규제 신고서, 업계 표준, 학술 문헌 등 제3자 제공업체의 외부 지식 소스는 자체 콘텐츠를 넘어 커버리지를 확장해 줍니다. RAG 시스템은 외부 데이터 소스의 품질에 의존합니다. 소스 문서가 부정확하거나 서식이 일관되지 않으면 검색 아키텍처의 품질과 관계없이 부정확한 응답이 생성됩니다.

RAG 아키텍처의 핵심 구성 요소는 무엇인가요?

RAG 아키텍처는 네 가지 주요 구성 요소로 이루어집니다. 지식 베이스(색인화된 외부 데이터 저장소), 리트리버(관련 문서를 찾아내는 정보 검색 구성 요소), 통합 레이어(컨텍스트를 LLM 프롬프트로 조립하는 오케스트레이션 로직), 그리고 제너레이터(최종 응답을 생성하는 대규모 언어 모델)입니다. 벡터 데이터베이스는 지식 베이스의 중요한 인프라 요소로, 문서 청크의 수치적 표현을 저장하고 빠른 의미론적 유사도 검색을 가능하게 합니다. Databricks 용어 사전 페이지에서 검색 증강 생성 아키텍처 패턴에 대해 자세히 알아보세요.

(이 글은 AI의 도움을 받아 번역되었습니다. 원문이 궁금하시다면 여기를 클릭해 주세요)

최신 게시물을 이메일로 받아보세요

블로그를 구독하고 최신 게시물을 이메일로 받아보세요.