한규진
AutoRAG - 자동으로 최적의 RAG 파이프라인을 찾아주는 자동화 툴 (feat. RAG 맞춤형 LLM 공개)
AutoRAG
안녕하세요!
마커AI에서 LLM 연구를 하고 있는 kyujinpy라고 합니다!😋😋
최근 LLM이 떠오르고, private-LLM에 대한 관심도가 증가하면서, RAG에 대한 관심도 증가하고 있는 것 같습니다😎
RAG는 Retrieval-Augmented Generation의 약자로, 방대한 문서를 기반으로 LLM이 답변을 해주는 시스템을 말합니다.
이는, 방대한 문서 가운데 원하는 정보를 빨리 찾고, 동시에 hallucination 문제점도 줄여준다는 장점이 있습니다!
최근 저희 마커AI 팀에서, RAG pipeline을 담당하던 팀이 AutoRAG라는 RAG 최적화 모듈을 공개하였습니다🤗🤗
AutoRAG에 나오게 된 배경과 AutoRAG를 이용하면 어떠한 장점들이 있는지 설명드리겠습니다!
AutoRAG github
RAG를 적용하기 힘든 어려움
기존의 RAG의 문제점은 다음과 같은 문제점이 있었습니다🤔🤔
토이 프로젝트 수준의 RAG 파이프라인은 쉽게 만들 수 있지만, 실제 데이터와 사용 목적에 맞는 높은 성능의 RAG 파이프라인을 구성하는 것은 어려움이 있음.
RAG는 데이터와 목적에 따라 어울리는 조합이 모두 다르며 최적의 조합을 찾기 위해서는 많은 실험과 평가를 반복해야 함
위와 같은 문제점으로 인해, 자체적인 LLM을 구축하는 것도 어렵지만, 데이터에 최적화된 RAG 파이프라인을 구성하는 것도 쉽지 않았습니다.
AutoRAG의 장점
저희 AutoRAG는 위와 같은 문제점에 대해서 아래의 해결책을 제시했습니다😎😎
AutoRAG에서 현재 지원하는 12개의 모듈로, 960가지의 조합이 나올 정도로 다양함 (임베딩 모델, 언어모델은 조합에서 제외)
AutoRAG는 ML을 자동으로 최적화 해주는 AutoML처럼 RAG의 파이프라인을 자동으로 최적화
AutoRAG는 yaml 파일을 간단히 수정하는 것 만으로 사용 가능
AutoRAG를 실행하면 복잡한 RAG 파이프라인의 각 단계들을 자동으로 평가하여 최적의 파이프라인을 제시함
각 단계별로 평가 결과를 저장하여, 어느 단계에서 가장 큰 성능 하락이 일어나는지, 어떠한 모듈이 가장 성능 향상을 가져왔는지 바로 알게됨
더욱이, 찾은 최적의 파이프라인을 곧바로 fastAPI 서버로 실행하여 사용 가능
찾은 파이프라인을 yaml 파일로 만들어, 본인의 RAG 파이프라인을 공유하는 것도 간편
저희가 만든 AutoRAG를 활용하여 저희 내부에서 자체적으로 테스트도 진행해보았습니다!
AutoRAG를 이용하였을 때 성능과 baseline의 성능을 비교하였을 때, 아래와 같이 성능이 향상된 것을 확인할 수 있었습니다😸😸
베이스 모델로 Mistral 7B를 활용하였고, 데이터셋은 Eli5 데이터셋을 활용하였습니다.
Eli5 데이터셋을 활용한 벤치마크 결과, 최적화한 파이프라인에서 retrieval의 Recall이 0.87에서 0.97로 상승, BLEU는 약 22% 성능이 향상
RAG 맞춤형 LLM 공개!?

또한 저희 내부에서, 자체적으로 만든 RAG 최적화 LLM도 소개합니다🤗
해당 모델은 RAG와 같이 대량의 문서에서 특정한 질문에 대한 답변을 추출하는데 최적화된 LLM 입니다😁
따라서, 저희 RAG-KO-Mixtral-7Bx2 모델은 아래와 같이 제작되었습니다.
MoE 방식을 Mixtral에 적용하고, 한국어 대량 corpus로 학습하여 자체적인 PT를 제작하였습니다.
DopeorNope/Ko-Mixtral-v1.4-MoE-7Bx2
자체적으로 제작된 Ko-Mixtral-7Bx2 모델에 GPT-4로 생성한 RAG 데이터셋(private; AIHUB 데이터셋 가공)과 LoRA를 활용해 fine-tuning하였습니다.
제작된 MarkrAI RAG Model
간단한 예시가 보고 싶으신 분들은 아래의 블로그로 방문해주세요!
GPT-4 vs RAG-KO-Mixtral-7Bx2
(저희가 공개한 RAG-KO-Mixtral-7Bx2 모델은 비상업적 목적으로만 사용 가능하다는 점도 기억해주세요🧐)
여기까지 AutoRAG를 소개하였습니다!
최근 RAG에 대한 인기가 커지고 있는데, 여러분들도 RAG에 대한 관심이 있으시다면 AutoRAG를 적극적으로 활용해보시기를 바랍니다😘😘
감사합니다!



먼저 Platypus 논문에서 활용했던 데이터셋을 바탕으로 DeepL을 활용하여 전부 한국어로 번역을 진행하였습니다. 그리고 번역된 결과를 바로 활용하여 훈련을 진행하니 예상했던 성능보다 좋지 못했습니다.
추가로 Open Ko-LLM 리더보드를 계기로, Upstage의 김성훈 대표님과 좋은 인연이 닿아서 Fast campus에서 LLM 강좌를 준비하게 되었습니다!🤗🤗 