Search

회사 전용 AI를 만들고 싶다면, 파인튜닝보다 RAG

회사 전용 AI를 만들고 싶다면 RAG 학습
커스텀 AI 제작에는 RAG 학습이 좋다
자료 최신화가 자주 이루어져야 한다면 RAG 학습을 선택해야 한다
Streamlit을 이용하면 GUI 바탕으로 RAG 학습을 쉽게 할 수 있다.

커스텀 AI를 만들고 싶다

AI 모델을 쓰다보면 커스텀 모델을 만들고 싶다는 생각을 하게 된다. 다양한 AI 상용화 도구(GPT, Grock, claude 등)도 좋지만, 내게 필요한 자료를 찾아서 대답하는 비서가 더 유용할때가 있다. AI가 대중화될수록 점점 특정 회사나 산업에 맞춤형 AI를 쓰려는 움직임이 늘어날 것이다. 공장을 예로 들자면 공장 설비에 대한 수리 매뉴얼이 모두 등록되어 있어서, 수리에 필요한 장비와 문제를 입력하면 해결방법을 알려주는 식이다. 커스텀 모델은 특정 자료를 바탕으로 전문화된 답변을 할 수 있다는 점에서 훨씬 유용할 수 있다.
커스텀 AI 모델을 만드는 방법은 총 세가지가 있다. 하나는 AI 모델 자체를 새로 만드는 것이다. 해당 방식은 가장 개인화된 AI 모델을 만들 수 있지만 너무나도 많은 리소스가 들기 때문에 제외한다. 두번째는 파인튜닝을 하는 것이다. AI 모델을 재학습시켜 특정 분야나 지식에 전문가로 새롭게 탄생시키는 것이다. 세번째는 RAG 학습을 하는 것이다. 재학습이 아닌 참고할 범위를 한정 시키는 방법이다. 보통은 파인튜닝 혹은 RAG 학습 중 선택하게 될것이다.

파인튜닝 그리고 RAG

파인튜닝과 RAG 학습 자체를 처음 들어보는 사람이 많을 것이다. 파인튜닝(Fine-tunning)은 튜닝이라는 말처럼 학습된 모델을 대상으로 특정 작업에 맞게 추가로 훈련시켜 내부 가중치를 조절하는 것이다. 요리사를 예로 들자면, 여러 요리를 잘하는 요리사에게 카레에 관련된 모든 자료를 학습시켜 카레 전문가로 거듭나게 만드는 것이다. 학습된 모델을 그대로 쓰긴 하지만 새 데이터로 다시 훈련시키는 과정을 거쳐야 하기 때문에 적지 않은 리소스가 소모된다.
RAG(Retrieval-Augmented Generation) 학습은 참고자료를 제공하여 답변을 더 똑똑하게 만드는 기술이다. 요리사가 여러 요리를 잘하긴 하지만 카레에 관련된 자료를 다수 제공하여 해당 자료 내에서 답변하도록 함으로써 보다 전문화된 답변이 가능하게 된다. 모델 자체를 건드리기 보다는 외부의 정보를 참조할 수 있도록 가공하고 던져주게 된다.

RAG 방식의 장점

'커스텀 모델을 만들고 싶다'라는 목적에 가장 부합하는 방법은 앞서 말했던 자체 AI 모델 구축이다. 시간과 자원이 많다면 자체 모델을 만드는게 최고일 것이다. 학습 내용도, 생각하는 방식도, 가중치도 모두 조절할 수 있다. 진정한 의미의 커스텀 모델은 자체 AI 모델일 것이다. 하지만 우리는 시간과 자원이 거대 AI 회사처럼 많지 않고, 때문에 파인튜닝이나 RAG 학습 중 선택해야 한다. 각각의 장단점이 있지만 최우선적으로 고려해야할 사항은 정보의 최신성이다.
AI 모델을 커스텀하려고 하는 이유는 특정 데이터를 학습 시키고 싶기 때문일 것이다. 학습시키고자 하는 데이터가 최신화가 자주 이루어져야 한다면 RAG 방법을 선택해야 한다. 파인튜닝이나 AI 모델 제작의 경우 자료를 최신화하려면 다시 학습시키는 과정을 거쳐야 한다. RAG 학습은 AI 모델 자체를 건드리진 않기 때문에 재학습을 시킬 필요는 없다. 다만 AI가 잘 참조할 수 있도록 자료를 정리해주기만 하면된다. 또 자신이 사용할 수 있는 자원과 시간이 한정적이라면 역시 RAG 학습을 선택해야한다. 아마 개인 선에서 이루어진다면 RAG 학습 정도가 최선일 것이다.

RAG 학습 어떻게 해?

RAG 학습은 필요한 데이터의 정제, 조각 나누기, 저장소 만들기, AI 모델과 연결하기 순으로 이루어진다. 파이썬을 통해 매우 간단하게 진행할 수 있다. 물론 해당 작업을 위한 기본적인 세팅과 설치 작업이 끝났다는 가정하에 말이다. 그래도 유튜브나 관련 문서를 찾아보며 진행하면 어렵지 않게 가능할 것이다.
데이터 정제 : 스크래핑한 데이터, PDF 문서 등을 학습하기 쉽도록 텍스트 형태로 추출
조각 나누기 : 문서를 조각(chunk)로 나누기
저장소 만들기 : 텍스트 조작을 벡터로 변환해 저장소에 저장
AI 모델과 연결 : 특정 AI 모델이 저장소 벡터 데이터 임베딩해서 답변에 사용

RAG 학습 쉽게 하는 방법은 Streamlit

좀 더 쉽게 RAG 학습을 하고자 한다면 Streamlit을 활용할 수 있다. Streamlit은 RAG 학습을 GUI 바탕으로 진행할 수 있도록 도와준다. Python에 설치해서 이용하면 되고 역시 매우 간단한게 제공되는 코드들로 GUI 구성을 할 수 있다. 해당 GUI 구성을 위해서는 다음 링크를 참조하면 된다. https://docs.streamlit.io/
 | Main Page | Category |  Tags |