RAG는 생각보다 단순하다

3 weeks ago 24

많은 RAG 시스템이 처음부터 임베딩·벡터 DB·재순위화 파이프라인을 도입하지만, 상당수 검색 문제는 BM25와 질의 재작성만으로 해결할 수 있음 데이터 신선도, 문서 변경률, 질의 유형, 검색량, 팀 역량에 따라 6가지 검색 구조를 단계적으로 선택하고, 필요성을 입증하는 데이터가 있을 때만 복잡도를 높여야 함 BM25 검색은 10ms 미만으로 빠르고 청킹·모델 비용이 없으며, 대화형 질의나 어휘 불일치는 건당 약 $0.001의 LLM 질의 재작성으로 보완 가능함 의미 검색이 필요하면 BM25로 50~100개 후보를 찾고 임베딩으로 상위 10개를 재순위화하며, 변경률과 접근 패턴에 따라 요청 시 임베딩·핫/콜드 계층·전체 사전 임베딩을 선택함 시스템의 60%는 BM25와 질의 재작성에서 멈추고 25%는 하이브리드 검색, 10%는 전체 사전 임베딩, 5%만 맞춤형 구조가 필요하므로 60%짜리 문제에 5%짜리 해법을 구축하지 않아야 함 검색 구조를 결정하는 다섯 가지 기준 데이터 신선도에 따라 적합한 색인 방식이 달라짐 뉴스·소셜 미디어처럼 실시간 갱신이 필요하면 재색인이 쉬운 방식이 유리함 일·주 단위 갱신에는 하이브리드 방식이 적합함 월·분기 단위로 바뀌는 안정적인 말뭉치는 사전 임베딩에 적합함 말뭉치 변경률과 접근 분포를 함께 확인해야 함 하루 10% 넘게 변경되면 전체 사전 임베딩을 피해야 함 안정적인 문서는 사전 임베딩해도 됨 문서의 90%가 접근되지 않는 롱테일 분포라면 요청 시 임베딩이 유리함 질의 패턴에 맞춰 출발점을 정함 키워드 중심 질의는 BM25 검색부터 시작함 의미적·대화형 질의는 임베딩의 도움을 받을 수 있음 두 유형이 섞이면 하이브리드 검색을 사용함 규모와 성능 요구도 복잡도에 영향을 줌 하루 1,000건 미만이면 단순한 방식으로 충분함 1,000~10,000건이면 선택적 최적화가 필요함 10,000건을 넘으면 전체 최적화를 정당화할 수 있음 팀 역량에 따라 운영 가능한 구조가 달라짐 ML 경험이 없으면 BM25 검색과 질의 재작성에 머무름 일부 ML 경험이 있으면 하이브리드 검색을 관리할 수 있음 ML 팀이 있으면 고급 구조를 운영할 수 있음 가장 단순한 방식부터 시작하고, 필요성을 입증하는 실측 데이터가 있을 때만 다음 단계로 이동해야 함 1. BM25 기반 전문 검색 첫 번째 MVP는 BM25, Elasticsearch, PostgreSQL 전문 검색처럼 임베딩 없이 문서 전체를 검색...

Read Entire Article