대규모로 생성된 대규모 언어 모델(LLM)은 AI 애플리케이션을 변화시켰지만, 지식이 정적이고 학습 데이터에서만 얻을 수 있기 때문에 여전히 여러 가지 단점을 가지고 있습니다. 이 시점이 바로 검색 증강 생성(RAG)이 필요한 시점입니다.
RAG는 실시간 데이터 검색을 산재시켜 생성형 AI 모델에 기능을 추가하여 검색 프로세스가 보다 정확하고 시기적절한 아웃풋을 생성하도록 보장합니다. 그러나 RAG 모델은 주로 다양한 애플리케이션에 적합한 다양한 형태로 제공됩니다1.
이 문서에서는 다양한 RAG 기법과 함께 작동 방식, 각 RAG 유형의 장점과 한계, 다양한 사용 사례에서의 유용성에 대해 살펴봅니다.
RAG 모델의 전반적인 효율성과 지속가능성을 개선하기 위해 검색 시스템은 성과, 비용 및 효율성 문제를 해결하기 위해 기본 RAG에서 고급 RAG 및 모듈식 RAG로 발전했습니다. 각 RAG 기술을 자세히 살펴보겠습니다.
기본 RAG는 검색 증강 생성의 기본 구현으로, 최적화나 피드백 없이 정보를 검색하고 응답을 생성합니다. 이 간단한 설정에서 시스템은 쿼리를 기반으로 관련 데이터를 검색한 다음 언어 모델(예: GPT)에 간단히 입력하여 최종 답변을 생성합니다2.
기본 RAG는 검색 및 콘텐츠 생성을 위해 다소 간단한 3단계 프로세스를 사용합니다. 다음 단계에서는 검색 프로세스의 작동 방식을 설명합니다.
그림 1은 기본 RAG가 작동하는 3단계 프로세스(인코딩, 검색 및 응답 생성)를 보여줍니다.
Naive RAG는 고급 정확도와 유연성보다 단순성, 속도, 배포 용이성이 가장 중요한 시나리오에 가장 적합합니다. 아키텍처가 단순하기 때문에 번거로운 모델 조정의 부담 없이 개념 증명 애플리케이션을 구축하고 아이디어를 빠르게 테스트하는 데 이상적입니다. 예를 들어, 다음과 같은 경우에 효과적으로 사용할 수 있습니다.
a. 고객 지원 챗봇: LLM 응답을 사용하여 자주 묻는 반복적인 질문 답변 시나리오를 처리합니다.
b. 요약 및 정보 검색: 자연어 처리 기술을 사용하여 기본 수준의 요약을 제공합니다.
c. 기업용 AI 시스템: 일반적인 질의에 답하기 위해 저장소에서 관련 데이터를 빠르게 검색합니다.
기본 RAG는 간단하고 빠르지만 고급 RAG는 더 큰 유연성, 확장성 및 성능을 제공하여 복잡한 실제 애플리케이션에 적합합니다.
고급 RAG란 무엇이며 어떤 주요 제품을 제공하는지 알아보겠습니다.
고급 RAG는 재순위 지정, 미세 조정된 LLM 및 피드백 루프와 같은 일련의 아이디어와 같은 정교한 알고리즘을 사용하여 더 나은 검색 및 생성 기능을 결합합니다. 이러한 개선으로 정확성, 적응성 및 성능이 향상되어 이러한 모델은 더 복잡한 프로덕션 등급 애플리케이션에 더 적합한 선택이 됩니다5.
고급 RAG는 다음과 같이 순차적인 단계 기반 프로세스로 작동합니다.
1. 질의 처리: 사용자 질의를 수신하면 질의의 의미적 의미를 포착하는 임베딩 모델을 사용하여 이를 고차원 벡터로 변환합니다.
2. 문서 검색: 인코딩된 쿼리는 조밀한 벡터 검색과 희소 검색, 즉 의미론적 유사성 및 키워드 기반 검색을 모두 사용하여 하이브리드 검색을 제공하는 거대한 지식 데이터베이스를 탐색합니다. 따라서 검색된 문서에 의미론적 키워드가 일치하는 결과가 표시됩니다.
3. 검색된 문서의 순위 재지정: 검색기는 컨텍스트와 문서를 검색하는 쿼리와 관련하여 최종 점수를 제공합니다.
4. 생성을 위한 컨텍스트 융합: 각 문서가 다르게 인코딩되기 때문에 디코더는 인코딩된 모든 컨텍스트를 융합하여 생성된 응답이 인코딩된 쿼리와 일관성을 갖도록 합니다.
5. 응답 생성: 일반적으로 IBM® Granite 모델이나 Llama와 같은 LLM인 고급 RAG 생성기는 검색된 문서를 기반으로 답변을 제공합니다.
6. 피드백 루프: 고급 RAG는 능동 학습, 강화 학습, 검색기-생성기 공동 학습과 같은 다양한 기술을 사용하여 성능을 지속적으로 향상시킵니다. 이 단계에서는 관련성을 추론하는 검색된 문서의 클릭과 같은 암시적 신호가 발생하여 생성 중에 추가 애플리케이션을 위한 수정 또는 등급을 포함하는 명시적 피드백을 유발합니다. 따라서 수년에 걸쳐 이러한 전략은 검색 및 응답 생성 프로세스를 개선하여 보다 정확하고 관련성 높은 답변을 생성할 수 있도록 합니다6.
그림 2는 고급 RAG의 작동 방식에 대한 단계별 프로세스를 보여줍니다.
고급 RAG는 실시간 정보 검색과 동적이고 정확한 컨텍스트 기반 응답 기능으로 인해 산업 전반의 다양한 애플리케이션에 매우 유용합니다. 해당 애플리케이션은 고객 서비스 지원부터 관련 정보 제공을 통한 의사 결정 개선, 개인화된 학습 경험 향상에 이르기까지 다양한 용도로 활용됩니다. 고급 RAG를 통한 향상된 검색 및 생성은 실시간 애플리케이션에 실용적이지만 확장성과 유용성은 프로덕션 수준의 사용 사례에 비해 수준 이하입니다.
모듈형 RAG는 RAG의 가장 진보된 변형으로, 정보 검색 및 생성 모델이 개방적이고 구성 가능한 선형 파이프라인과 같은 아키텍처에서 작동합니다. 이 접근 방식을 사용하면 다양한 사용 사례가 사용자 정의 가능성과 확장성을 통해 더 나은 성능을 발휘할 수 있습니다.
RAG의 행위를 모듈로 분해함으로써 각 구성 요소를 독립적으로 더 잘 조정, 디버깅 및 최적화할 수 있습니다. 이제 모듈형 RAG가 실제로 어떻게 작동하는지 살펴보겠습니다.
1. 사용자 쿼리 처리: 첫 번째 단계는 사용자가 다음과 같은 쿼리를 제출하는 것입니다. "요즘 시장에서 가장 인기 있는 책은 무엇인가요?" 그런 다음 쿼리 처리 모듈은 쿼리 표현 변경, 모호성 제거 및 의미 체계 구문 분석 수행을 포함할 수 있는 입력을 변환하여 검색을 위해 제출하기 전에 더 많은 정보에 입각한 컨텍스트를 제공합니다.
2. 검색 모듈: 검색 모듈은 벡터 데이터베이스나 지식 기반에 대한 쿼리를 처리하여 관련 문서를 얻습니다. 이는 임베딩 기반 유사성 패러다임을 사용하여 검색을 수행합니다.
3. 필터링 및 순위 지정 모듈: 검색된 문서는 메타데이터, 최신성 또는 관련성을 사용하여 필터링됩니다. 그리고 재순위 모델은 가장 유용한 정보에 점수를 매기고 우선순위를 지정합니다.
4. 컨텍스트 증강 모듈: 이 모듈은 검색된 정보에 지식 그래프를 제공하고, 데이터베이스 및 API에서 오는 구조화된 데이터를 포함하고, 검색 압축을 적용하여 최상의 콘텐츠 검색을 달성합니다.
5. 응답 생성: LLM은 검색된 컨텍스트와 함께 사용자 쿼리를 처리하여 일관되고 정확한 응답을 생성하며, 할루시네이션을 최소화하고 관련성을 보장합니다.
6. 후처리 모듈: 이 모듈은 사실 확인을 통해 정확성을 보장하고, 구조화된 형식으로 가독성을 향상시키며, 인용 생성을 통해 신뢰성을 높입니다.
7. 아웃풋 및 피드백 루프: 응답의 최종 아웃풋은 사용자에게 제공되는 반면, 사용자와의 상호작용을 통해 피드백 루프가 생성되어 시간이 지남에 따라 검색 및 모델 성능을 개선하는 데 도움이 됩니다.
그림 3은 모듈형 RAG의 작동 방식에 대한 단계별 프로세스를 보여줍니다.
고급 RAG는 도메인별 검색 및 순위 지정 기술과 같이 애플리케이션에 엄청난 사용자 지정이 필요한 사용 사례에 적합합니다. 확장성과 유지보수성은 대규모 시스템을 포함하는 애플리케이션에서 중요하며 다양한 검색 모델과 전략에 대한 지속적인 실험이 이루어지고 있습니다8.
기본 RAG는 간단하고 빠르지만, 종종 LangChain과 같은 프레임워크로 구축되는 모듈형 RAG는 향상된 유연성, 확장성 및 성능을 제공하므로 복잡한 실제 애플리케이션에 더 적합합니다. 고급 RAG는 오류를 최소화하는 데 도움이 되는 실시간 컨텍스트별 정보를 검색하여 정확도를 향상시킵니다. 능동적 학습 및 강화 학습(RLHF)을 통해 사용자 피드백을 통합하여 동적으로 적응합니다. 또한 전문 데이터베이스를 통합하여 도메인별 지식을 강화합니다. 또한 가장 관련성이 높은 데이터만 가져와 LLM의 컨텍스트 창을 최적화하여 효율성을 향상시킵니다. 그럼에도 불구하고 고급 RAG 시스템은 검색 및 생성 프로세스로 인해 더 높은 컴퓨팅 요구 사항 및 대기 시간과 같은 문제에 직면합니다. 광범위한 지식 기반을 관리하고 복잡한 구현 및 유지 관리를 포함하려면 상당한 리소스가 필요하며, 특히 검색기, 순위 모델 및 응답 생성기를 미세 조정할 때 더욱 그렇습니다. 이 공간은 LangChain을 사용하여 개발된 모듈형 RAG 아키텍처가 뛰어난 곳입니다. 모듈형 설계를 통해 유연한 사용자 정의가 가능하여 검색기, 랭커, 생성기와 같은 개별 구성 요소를 독립적으로 미세 조정하거나 교체할 수 있습니다. 이 방법은 전체 시스템을 중단하지 않고 디버깅 및 업데이트를 더 쉽게 만들어 유지 관리성을 향상시킵니다. 확장성은 다양한 리소스에 모듈을 분산하여 달성되며, 비용은 검색 프로세스를 최적화하고 LLM 사용을 최소화하여 관리됩니다 9, 10.
더 나은 성과와 확장성을 보장하기 위해 고급 프롬프트 엔지니어링 기법과 미세 조정 방법을 활용하여 고정밀 콘텐츠 생성을 위한 RAG 모델을 개선하는 검색 시스템의 적극적인 개발이 진행되고 있습니다.
향후 셀프 RAG 접근 방식, 멀티모달 AI 모델 및 개선된 지표의 발전으로 검색 프로세스가 계속 개선되어 자연어 상호 작용에서 추가 컨텍스트를 더 잘 처리할 수 있게 될 것입니다.
1. Gao, Y., Zhang, Z., Peng, M., Wang, J., & Huang, J. (2023). 대규모 언어 모델을 위한 검색 증강 생성: 설문조사. arXiv 사전 인쇄본 arXiv:2312.10997.
2. Wu, S., Wang, D., Lin, Z., Yang, Y., Li, H., & Li, Z. (2024). 자연어 처리를 위한 검색 증강 생성: 설문조사. arXiv 사전 인쇄본 arXiv:2407.13193.
3. Huang, Y., & Huang, J. (2024). 대규모 언어 모델을 위한 검색 증강 텍스트 생성에 대한 설문조사. arXiv 사전 인쇄본 arXiv:2404.10981.
4. Li, S., Stenzel, L., Eickhoff, C., & Bahrainian, S. A. (2025). 검색 증강 생성 강화: 모범 사례 연구. 제31회 전산 언어학 국제 컨퍼런스 논문집, 6705-6717.
5. Sakar, T., & Emekci, H. (2024). RAG 효율성 극대화: RAG 방법의 비교 분석. 자연어 처리, 1–15.
6. Su, W., Tang, Y., Ai, Q., Wu, Z., & Liu, Y. (2024). DRAGIN: 대규모 언어 모델의 정보 요구 사항을 기반으로 하는 동적 검색 증강 생성. arXiv 사전 인쇄본 arXiv:2403.10081.
7. Gao, Y., Xiong, Y., Wang, M., & Wang, H. (2024). 모듈식 RAG: RAG 시스템을 LEGO와 유사한 재구성 가능한 프레임워크로 변환하기. arXiv 사전 인쇄본 arXiv:2407.21059.
8. Shi, Y., Zi, X., Shi, Z., Zhang, H., Wu, Q., & Xu, M. (2024). 검색 및 검색 관리 향상: RAG 시스템의 품질과 효율성 향상을 위한 4가지 모듈 시너지 효과. arXiv 사전 인쇄본 arXiv:2407.10670.
9. Zhu, Y., Yang, X., Zhang, C., & Dou, Z. (2024). 검색 증강 생성의 미래 동향 및 연구 방향 컴퓨터 지능과 신경과학, 2024, 1-15.
10. Atos. 2024년. 생성형 AI 검색 증강 생성을 구현하기 위한 실용적 청사진. Atos. 2025년 2월 12일 액세스.
AI 빌더를 위한 차세대 엔터프라이즈 스튜디오인 IBM watsonx.ai로 생성형 AI, 파운데이션 모델 및 머신 러닝 기능을 학습, 검증, 조정 및 배포하세요. 적은 데이터로 짧은 시간 내에 AI 애플리케이션을 구축하세요.
업계 최고의 AI 전문성과 솔루션 포트폴리오를 보유한 IBM과 함께 AI를 비즈니스에 활용하세요.
AI 추가를 통해 중요한 워크플로와 운영을 혁신함으로써 경험, 실시간 의사 결정 및 비즈니스 가치를 극대화합니다.