1. 지식의 외부 확장을 통한 LLM 고도화, RAG의 개요
가. RAG의 개념
LLM이 텍스트를 생성할 때, 고정된 학습 파라미터에만 의존하지 않고 **외부의 신뢰할 수 있는 지식 베이스에서 관련 정보를 검색(Retrieval)**하여 그 내용을 바탕으로 답변을 생성(Generation)하는 기술입니다.
나. 기존 LLM의 한계와 RAG의 도입 필요성
환각 현상(Hallucination): 학습되지 않은 사실에 대해 그럴듯한 거짓말을 하는 문제 해결.
정보의 시차(Knowledge Cut-off): 학습 이후 발생한 최신 사건이나 실시간 정보 반영 불가 극복.
데이터 보안(Data Privacy): 기업 내부 기밀 데이터를 모델 학습에 직접 노출하지 않고 안전하게 참조.
비용 효율성: 매번 대규모 파인튜닝(Fine-tuning)을 수행하는 대비 낮은 인프라 비용.
2. RAG의 아키텍처 및 주요 동작 프로세스
RAG는 크게 데이터 전처리, 검색, 생성의 3단계 파이프라인으로 구성됩니다.
| 단계 | 주요 활동 내용 | 핵심 기술 요소 |
| 1. 데이터 전처리 (Indexing) | 문서를 의미 단위(Chunk)로 분할하고 수치화(Embedding)하여 저장 | 텍스트 청킹, 임베딩 모델, 벡터 데이터베이스(Vector DB) |
| 2. 정보 검색 (Retrieval) | 사용자 질문과 유사도가 높은 상위 K개의 문서 조각을 검색 | 시맨틱 검색(Semantic Search), 코사인 유사도 |
| 3. 프롬프트 증강 (Augmentation) | 검색된 문서와 질문을 결합하여 모델이 참고할 문맥(Context) 구성 | 프롬프트 엔지니어링 |
| 4. 답변 생성 (Generation) | 제공된 문맥을 바탕으로 근거 중심의 최종 답변 도출 | LLM (GPT-4, Claude 3, Llama 3 등) |
3. RAG 성능 향상을 위한 심화 기술 요소
단순한 RAG를 넘어 실무급 성능을 확보하기 위한 최적화 기법들입니다.
하이브리드 검색 (Hybrid Search): 키워드 기반의 '키워드 검색(BM25)'과 의미 중심의 '벡터 검색'을 결합하여 정확도 향상.
리랭킹 (Re-ranking): 1차 검색된 결과물들을 다시 한 번 정밀한 모델로 순위를 재조정하여 최적의 문맥 선별.
HyDE (Hypothetical Document Embeddings): 질문에 대한 가상의 답변을 먼저 생성한 뒤, 그 답변과 유사한 문서를 검색하여 검색 품질 개선.
GraphRAG: 텍스트 간의 관계를 지식 그래프(Knowledge Graph)로 구축하여 복잡한 다단계 추론(Multi-hop Reasoning) 지원.
4. RAG와 파인튜닝(Fine-tuning) 비교
| 비교 항목 | RAG (검색 증강 생성) | 파인튜닝 (미세 조정) |
| 지식 업데이트 | 매우 쉬움 (DB 업데이트만 필요) | 어려움 (재학습 비용 발생) |
| 답변 근거 제시 | 가능 (참조 문서 링크 제공) | 불가능 (모델 내부에 내재화됨) |
| 특수 도메인 적응 | 지식 참조 위주 | 도메인 말투/형식 습득 위주 |
| 데이터 보안 | 우수 (권한 제어 가능) | 보통 (모델에 지식 체득 시 노출 위험) |
5. 기술사적 제언: 성공적인 RAG 구축을 위한 전략
RAG는 단순한 기술 도입이 아닌 데이터 거버넌스의 관점에서 접근해야 합니다.
데이터 품질 관리: 원천 데이터(PDF, 위키 등)의 정제(Cleaning) 상태가 검색 품질을 결정하므로 고도화된 전처리 파이프라인 구축이 선행되어야 합니다.
평가 체계 구축 (RAGAS): 답변의 충실성(Faithfulness), 관련성(Relevance) 등을 정량적으로 측정할 수 있는 평가 프레임워크를 도입하여 지속적으로 개선해야 합니다.
검색 성능과 비용의 균형: 벡터 DB의 인덱싱 비용과 LLM 호출 시 발생하는 토큰 비용을 최적화하기 위한 캐싱(Caching) 전략 수립이 필요합니다.
댓글 없음:
댓글 쓰기