Fear is a habit. I'm not afraid.
RAG vs Fine Tuning 본문
수업시간에 RAG와 Fine Tuning의 차이점에 대해 조사하는 팀프로젝트를 진행하였다.
그 때 조사했던 것들을 다시 복습하는 차원에서 정리해본다.
RAG
· 개념
RAG(Retrieval-Augmented Generation, 검색 증강 생성)
메타 연구진이 개발한 아키텍처 프레임워크로, 범용 AI 모델이 조직에 관련성 있고 유용한 결과를 제공할 수 있도록 지원한다. RAG는 대규모 언어 모델(LLM)이 내부 지식 베이스에 접근하여 원래 학습 데이터를 보강할 수 있도록 한다. 그 결과, LLM의 언어 유창성과 로컬 데이터를 결합하여 상황에 맞는 맞춤형 응답을 제공하는 AI 시스템이 탄생한다. 이러한 접근 방식은 AI 모델 미세 조정과 달리 기본 모델 자체를 수정하지 않고도 작동한다. LLM에 최신 정보를 추가함으로써, 기업은 AI 에이전트를 배치하여 사용자 질의에 실시간으로 맥락에 맞는 답변을 제공하고, 이를 통해 인적 개입의 필요성을 최소화할 수 있다.
· 사용
LLM 훈련에 포함되지 않았던 최신 데이터나 조직별 데이터를 생성 AI 응답에 제공하는 것이 중요할 때 RAG를 활용한다. 예를 들어, 회사가 제품이나 일상 업무에 대한 방대한 양의 신뢰할 수 있는 정보를 보유하고 있다면, RAG 아키텍처는 LLM을 거치는 프롬프트와 응답을 보완하는 데 필요한 데이터를 제공하여 출력의 유용성, 검증 가능성, 정확성을 높여준다. 이를 통해 헬프 데스크 자동화, 소매점의 제품 재고 확인, 심지어 의료 서비스까지 개선할 수 있다. 의사의 진단서를 환자나 다른 임상의에게 신속하게 제공할 수 있기 때문이다.
· 사용 사례
산업 전반에 걸쳐 RAG가 제공하는 공통적인 장점으로는 보다 완벽하고 향상된 데이터 검색, 향상된 고객 지원, 그리고 개인화된 콘텐츠 생성 기능이 있다.
1. 비즈니스 인텔리전스: 기업은 RAG를 사용하여 GenAI 모델이 관련 시장 데이터를 추출하여 인사이트와 보고서를 자동으로 생성할 수 있도록 지원할 수 있다. 이 데이터에는 시장 조사, 경쟁사 분석, 판매량, 고객 피드백 등이 포함될 수 있다.
2. 콘텐츠 추천: RAG는 벡터 데이터베이스와 함께 사용하는 경우가 많으며, 콘텐츠 추천 시스템을 개선할 수 있다 . RAG를 통해 AI 모델은 사용자 리뷰, 평점, 콘텐츠 설명을 검색하고 분석하여 사용자의 요구에 맞춰 개인화된 추천을 생성할 수 있다.
3. 저널리즘 및 기타 미디어에서의 사실 검증: RAG는 조직이 기사, 보고서 또는 소셜 미디어에서 제기된 주장을 검증하기 위해 문서를 신속하게 검색하고 상호 참조할 수 있도록 지원한다.
4. 의료 진단: 의료 분야에서 RAG는 의사와 기타 임상의의 진단 및 치료 계획 수립을 지원하는 데 활용될 수 있다. RAG는 AI 모델이 환자의 증상이나 상태와 관련된 의료 사례 연구, 연구 논문 또는 임상 시험 결과를 검색하도록 지원함으로써 이를 실현한다.
5. 기술 지원: RAG는 기술 지원에서 문제 해결 시간을 단축하고 사용자 만족도를 높이는 데 도움이 될 수 있다. 시스템은 관련 문제 해결 가이드 및 문서를 검색하거나 포럼 스레드를 스캔하여 LLM에 제공하여 사용자 문제 해결을 지원할 수 있다. 또한, RAG는 고객의 최근 상호작용 기록이 포함된 데이터베이스를 참조하여 더욱 맞춤화되고 개인적인 서비스를 제공할 수 있다.
Fine Tuning
· 개념
생성 AI 모델을 Fine Tuning한다는 것은 Anthropic의 Claude 2, Cohere의 Command, Meta의 Llama 2와 같은 범용 모델을 가져와 더 작은 도메인별 데이터셋에 대한 추가 학습을 수행하고, 이 학습 결과를 기반으로 모델의 매개변수를 조정하는 것을 의미한다. 이러한 미세 조정은 코딩이나 의료와 같은 특정 도메인의 미묘한 차이와 용어에 맞춰 조정되었기 때문에 모델이 특정 작업에서 더 나은 성능을 발휘하는 데 도움이 된다.
· 사용
LLM이 특정 분야에 능숙해야 할 때는 미세 조정을 선택하는 것이 좋다. 추가 교육을 통해 LLM은 프롬프트를 더 잘 이해하고 특정 분야의 미묘한 차이와 용어를 반영하는 결과물을 제공할 수 있다. 교육 과정을 위해 엄선된 방대한 데이터 세트나 문서 저장소에 접근해야 하지만, 미세 조정은 생성된 콘텐츠의 스타일, 톤, 방식을 더욱 효과적으로 제어할 수 있기 때문에 그만한 가치가 있다. 이는 마케팅 자료나 고객 상호작용에서 효과를 볼 수 있다. RAG와 마찬가지로 미세 조정은 의학, 코딩, 기타 고도로 전문화된 분야에서도 유용하게 사용된다.
· 사용 사례
1. 고객 지원 자동화: 회사의 제품, 서비스 및 운영에 대한 방대한 데이터와 문서를 활용하여 LLM을 세부적으로 조정하면 LLM이 더욱 유용한 자동화된 고객 지원 시스템이 될 수 있다. 세부적으로 조정된 LLM은 고객 상호작용에서 사용되는 어휘와 미묘한 차이를 더 잘 이해하고 적절하게 대응할 수 있게 된다.
2. 교육 콘텐츠: LLM은 역사나 문법과 같은 특정 분야의 교육 자료를 바탕으로 사용될 수 있다. LLM은 새로운 학습 콘텐츠 제작, 교과서 요약, 퀴즈 문제 생성, 심지어 다양한 과목에 대한 튜터링 세션 제공에도 도움을 줄 수 있다.
3. 의료 정보 처리: LLM은 의학 문헌, 익명화된 환자 기록, 기타 의학 텍스트 및 이미지 등을 활용하여 사용될 수 있으며, 이를 통해 치료 및 진단을 제안하는 데 더욱 유용하게 활용될 수 있다.
RAG와 Fine Tuning의 차이점
Fine Tuning과 RAG는 모두 범용 LLM을 더욱 유용하게 만들지만, 그 방식은 서로 다르다. 간단히 비유하자면, LLM을 Fine Tuning하면 의학이나 교육과 같은 특정 분야에 대한 더 깊은 이해를 얻을 수 있는 반면, LLM을 RAG 아키텍처와 결합하면 LLM의 응답에 필요한 최신 로컬 데이터에 접근할 수 있다.
Fine Tuning
RAG와 Fine Tuning은 모두 LLM이 원래의 일반화된 학습 데이터 세트에서 추출한 일반적인 응답을 넘어설 수 있도록 도와준다. Fine Tuning은 특정 도메인이나 조직에 특화된 데이터 세트를 사용하여 LLM에 추가 학습 라운드를 적용하는 것을 포함한다.
· 요구사항
IT 및 비즈니스 팀은 이러한 새로운 학습 과정을 위해 대규모 데이터 세트를 수집, 정리 및 레이블링하는 사전 작업을 수행해야 한다. 학습 체계 자체는 컴퓨팅 집약적이기 때문에 LLM을 합리적인 시간 내에 학습시킬 수 있는 충분한 GPU로 뒷받침되는 고급 AI 신경망 아키텍처가 필요하다.
· 결과
특정 도메인이나 비즈니스 사례의 정보와 용어에 능통한 LLM이 탄생한다.
· 잠재적 단점
RAG 시스템과 달리 LLM은 Fine Tuning 훈련 체계에 사용되는 데이터 세트에 전적으로 의존하며, 최신 외부 지식에 대한 접근이 부족하다. Fine Tuning된 LLM은 원래 훈련의 세부적인 내용 중 일부를 잃거나 잊을수도 있다. 예를 들어, 의학과 같은 특정 전문 분야에 몰두하게 되면 일반적인 대화에서의 능숙함을 잃을 수 있다.
RAG
RAG는 LLM의 응답을 변경하지만, 기본 모델을 변경하지는 않는다. 대신, RAG 시스템은 로컬 데이터베이스 또는 큐레이팅된 문서 모음을 사용하여 LLM의 응답에 정보를 제공하며, 여기에는 최신 정보가 포함되는 경우가 많다.
· 장점
RAG 아키텍처는 데이터를 엄격한 액세스 제어가 있는 안전한 환경에 저장할 수 있으므로 데이터 보안 및 개인 정보 보호 측면에서 Fine Tuning보다 우수하다. 이를 통해 개인 정보가 AI 응답에 반영되지 않도록 보장하는 데 도움이 된다.
· 단점
Fine Tuning과 비교했을 때 언어 모델이 특정 도메인의 정확성에 대해 훈련되지 않는다는 점이다. 이 모델은 LLM 훈련의 일반적인 지식을 바탕으로 작동한다.
기술과 비용의 차이
· 기술
기술 측면에서 RAG는 구현이 더 간단하지만, RAG와 Fine Tuning에는 코딩 및 데이터 관리에 대한 중복되는 전문 지식이 필요하다. 그러나 Fine Tuning을 담당하는 팀은 자연어 처리(NLP), 딥러닝 및 모델 구성에 대한 더 많은 전문 지식을 필요로 한다.
· 시간과 비용
Fine Tuning은 사전 작업이 더 많이 필요한 반면, RAG는 런타임에 더 많은 리소스를 필요로 한다. Fine Tuning은 LLM을 배포하기 전에 컴퓨팅 집약적인 학습을 여러 차례 수행해야 하므로 RAG 아키텍처에 비해 비용이 더 많이 드는 프로젝트이다. 그러나 Fine Tuning된 LLM이 서비스에 적용되면 런타임 아키텍처는 상당히 간단하다. 이 시점에서 RAG 시스템은 LLM에 복잡성을 더하여 팀이 최신 데이터베이스와 각 프롬프트에 대한 추가 컴퓨팅 리소스를 유지 관리해야 한다.
요구사항 | RAG | Fine-tuning |
응답에 현지의 최신 정보가 포함되어야 한다. | O | X |
응답에 높은 수준의 설명이 포함되어야 한다. | O | X |
응답에 조직의 심층적인 도메인 지식이 반영되어야 한다. | O | O |
조직이 AI 훈련을 위한 강력한 신경망 및 GPU 리소스에 액세스할 수 있다. | X | O |
응답에 조직의 톤과 마케팅 언어가 반영되어 있어야 한다. | X | O |
조직은 AI가 응답에서 참조하고 인용할 수 있도록 잘 정리된 대규모의 최신 문서 모음을 보유하고 있다. | O | X |
AI 시스템은 제한된 런타임 리소스에 액세스할 수 있다. | X | O |
조직은 AI를 훈련하고 미세 조정하기 위해 선별된 대규모 데이터 세트 및 문서 저장소를 보유하고 있다. | O | X |
참고문헌
(+)
지피티 형에 따르면.. RAG는 피자를 만들기로 비유를 했다.
웃기긴 한데 이해가 한번에 되는 비유길래 공유해본다.
RAG 방식은 피자를 만들 때 매번 레시피를 찾아보면서 재료와 만드는 방법을 참고해서 피자를 만드는 것이라고 하고,
FIne Tuning 방식은 피자를 수백번 만들어보면서 레시피를 몸에 익히는 것, 그래서 요리책 없이도 피자 바로 만들 수 있는 것이라고 한다.
결국 RAG는 레시피 보면서 매번 새로운 피자를 바로바로 만들 수 있으나, 레시피 참고하는 데 시간이 소요되며 레시피가 잘못 될 수도 있는 단점이 있다고 한다.
반면 Fine Tuning은 빠르고 자연스럽게 피자를 만들 수 있으나, 새로운 피자 레시피로 요리를 하려면 훈련이 필요하다는 게 단점이라고 한다.
솔직히 이것만 읽어도 RAG와 Fine Tuning 개념 및 장단점 한번에 이해해버림.. 역시 지피티니.. 최고다 형..
근데 개념을 다시 읽어보니 LLM과의 연관성을 피자가게에서 이야기해주지 않아서 다시 물어봤다.
그런데 아니글쎄... 이런 답변이..
LLM: 다양한 피자 레시피와 요리 경험을 수십억 번 이상 학습한 피자계의 마스터셰프..
RAG: 셰프가 레시피를 찾아보면서 피자 만드는 방식
Fine-tuning: 셰프가 특정 피자 레시피를 수천 번 연습해서 완전히 숙달한 상태
라고 한다.
사실 이 표현을 읽고 다시 본문을 읽으면 모든 게 이해가 된다..
지피티형최고..
'AI' 카테고리의 다른 글
박스 플롯(Box Plot)이란? (0) | 2025.04.29 |
---|---|
분류 머신러닝 알고리즘 종류 (0) | 2025.04.17 |
분류: 예측 성능 평가 (0) | 2025.04.16 |
퍼셉트론 (0) | 2025.04.15 |