RAG 성능 최적화 기법
RAG 시스템 최적화 개요RAG 시스템의 성능은 다음 세 가지 측면에서 최적화할 수 있습니다: 검색 품질 - 관련성 높은 문서 찾기 응답 품질 - 정확하고 유용한 답변 생성 성능/비용 - 빠른 응답과 비용 효율성 1. 청킹 전략 최적화1.1 고정 크기 청킹from langchain.text_splitter import RecursiveCharacterTextSplitter# 기본 설정text_splitter = RecursiveCharacterTextSplitter( chunk_size=1000, chunk_overlap=200, length_function=len,)# 문서 유형별 최적화## 기술 문서 - 작은 청크tech_splitter = RecursiveCharacterTextSplitter( chunk_size=500, chunk_overlap=100)## 소설/긴 글 - 큰 청크narrative_splitter = RecursiveCharacterTextSplitter( chunk_size=2000, chunk_overlap=400) 1.2 의미 기반 청킹from langchain_experimental.text_splitter import SemanticChunkerfrom langchain_openai.embeddings import OpenAIEmbeddings# 의미론적 유사도로 분할semantic_chunker = SemanticChunker( OpenAIEmbeddings(), breakpoint_threshold_type="percentile", # or "standard_deviation" breakpoint_threshold_amount=95 # 상위 5%에서 분할)chunks = semantic_chunker.split_documents(documents) 1.3 문서 구조 기반 청킹