(24년 12월 추가)
글 내용과 관련해 강의를 런칭하였습니다. 더 많은 정보가 필요하신 분들은 참고해주세요!!
▪ 쿠폰코드: PRDTEA241202_auto
▪ 할인액: 4만원 (~25/1/5 까지 사용가능)
▪ 강의링크: https://bit.ly/3BayH1F
AutoRAG를 통해서 성공적으로 RAG를 최적화하였는가? 훌륭하다. 이제 그 결과를 확인할 차례다.
하지만, 평가가 끝난 직후에 보이는 것은 그저 여러 개의 폴더와 파일들이 생긴 모습이다. 여기서 많은 분들이 아래와 같이 생각할 것이다.
뭐가 나오긴 나왔는데, 뭐가 어떤 것을 뜻하는 것이지?
이것을 쉽게 보기 위하여, AutoRAG에는 대시보드 기능이 있다! 이번 포스트에서는 AutoRAG에서 대시보드 실행법과 그 해석 방법을 상세히 알아보자.
먼저, trial 폴더를 알아야 한다. 간단하다. AutoRAG 실행 후에 생기는 폴더 중 숫자로 표시된 폴더를 찾자. 최초 실행이라면 0번이고, 실행을 많이 할수록 1씩 늘어난다.
가장 최근 실행을 찾기 위해서는, 가장 높은 숫자를 선택하면 된다.
그 폴더가 바로 trial 폴더이다 (trial directory)
이제 trial directory를 알았으니 아래 명령어를 실행하면 대시보드가 나올 것이다!
autorag dashboard --trial_dir /your/path/to/trial_dir
your/path/to/trial_dir
에 위에서 찾았던 trial 폴더의 경로를 넣어주면 된다.
처음 대시보드를 실행하면 다음과 같은 화면이 보일 것이다. 이 첫 탭은, 전체 AutoRAG 결과를 보기 좋게 요약해주는 것이다.
위에서부터 지정해준 trial directory가 보인다.
그리고 그 아래부터 각 모듈의 결과값이 나온다. 이 요약 탭에서는 최적으로 선택된 모듈만이 보이게 된다. 그래서, retrieval 단계(노드)에서는 BM25방법이 선택된 것이다.
그 아래로, Module Params 탭에서는 최적으로 선택된 파라미터를 볼 수 있다.
위 예시같은 경우는, top_k
가 3, 그리고 bm25_tokenizer
는 ko_kiwi
가 설정된 것을 볼 수 있다. 해당 파라미터가 최적으로 선택된 것이다!
마지막으로, Metric Values 탭에서 각 지표의 점수가 어떻게 나왔는지 볼 수 있다.
해당 모듈은 f1이 0.5, ndcg와 map가 1.0의 점수로 최적의 모듈과 파라미터로 선택된 것이다.
retrieval, prompt maker, generator들은 각각 '노드'라고 불리운다. 간단하게, RAG에서의 각 단계라고 생각하면 좋다. 각 노드에서 최적의 모듈과 파라미터를 고르게 되는 것이다.
AutoRAG 대시보드에는 각 노드의 탭을 볼 수 있다.
retrieval 탭에 들어가 보자.
일단 Summary distribution plot을 볼 수 있다. 이 두 개의 그래프는, 실험한 모든 모듈과 파라미터에 대한 지표 분포를 볼 수 있다.
이 지표 분포를 활용하면, 각각의 설정값에 따라서 어느정도의 차이가 나는지 알 수 있다. 왼쪽 그래프로 각각의 실제 분포가 어떻게 되는지 확인하고, 오른쪽의 Boxplot을 통해 평균치나 표준편차 등을 쉽게 볼 수 있다.
그 아래의 Summary DataFrame을 참고하면 각 평가 결과를 더욱 자세히 볼 수 있다.
일단 각 module_name과 module_params는 각각 사용한 모듈 이름과 파라미터 설정값을 볼 수 있다.
또한, retrieval_f1, retrieval_ndcg, retrieval_map처럼 실제로 각 모듈과 설정값에서 평가 지표 결과가 어떻게 나왔는지 일일이 확인할 수 있다.
마지막으로, 가장 최적의 값으로 선택된 모듈에서는 is_best가 True 값으로 표시가 된다.
맨 오른쪽에, 눈 모양 아이콘을 볼 수 있을 것이다. 이 아이콘을 누르면 아래에 추가적인 표가 생긴다.
이 Module Result DataFrame은 각각의 모듈 결과가 어떻게 나왔는지 더 심층적인 분석을 할 수 있게 한다. 해당 노드는 retrieval 노드이므로, 어떤 문서들을 실제로 가져왔는지 그 내용과 아이디, 그리고 retrieval 스코어까지도 확인할 수 있다.
비슷한 원리로, generator 노드에서 눈 아이콘을 클릭하면 각 모듈에서 'LLM이 어떻게 답변하였는지'와 같은 것들을 직접 볼 수 있다.
이렇게 대시보드에서 질문 하나 하나까지 바로 확인하면서 RAG 결과가 어떤 식으로 나왔고 어떠한 지표 결과로 나왔는지 확인할 수 있다.
대시보드에는 한 가지 편리한 기능이 더 있는데, 바로 설정 YAML 파일을 바로 볼 수 있는 기능이다.
맨 오른쪽의 Used YAML file에 가면 이와 같이, 해당 실험에 사용한 YAML 파일을 곧바로 확인 가능하다.
AutoRAG 최적화를 구동하는 것보다도 중요한 것이, 실험 결과를 해석하고 활용하는 것이다. 대시보드를 통해 직접 csv나 parquet 파일을 열어보지 않고도 손쉽게 실험 결과 확인이 가능한 만큼, 얻은 인사이트를 활용하여 더 최적의 RAG 파이프라인을 구성할 수 있도록 노력해보자.