#llama3 #trl #lora finetuning #huggingface #runpod #economic news #labeling with gpt4o #"NCSOFT/VARCO-8B-Instruct" #llama chat template #runiarang/finance_news_summarizer

 

지난번(ai100-1) 경제 뉴스를 라마팩토리로 llama3 파인튜닝해봤는데, 

이번에는 허깅페이스의 trl을 이용해서 똑같이 llama3 파인튜닝해보겠다. 

 

기본적인 흐름은 똑같다.

허깅페이스에 올려둔 경제 뉴스 전처리된(gpt4o가 True,False 라벨링한) 데이터 (runiarang/finance_news_summarizer) 를 불러와서 학습에 사용한다.

 

<요약>

@ 개발 환경(파인튜닝 및 추론) : 런팟 A100x1

@ 데이터 수집 :

- 지난번에(ai100-1) gpt4o가 True,False 라벨링한 데이터를 허깅페이스"runiarang/finance_news_summarizer" 에 올려두었었는데, 이를 불러와서 학습에 사용한다. (전체 1,000개 중 5:5로 train:test 데이터 비율을 설정한다.)

@ 데이터 전처리 : train/test 분할 -> OpenAI format으로 변환

@ 모델/토크나이저 로드 : "NCSOFT/VARCO-8B-Instruct"

@ 라마 챗 템플릿(토크나이저 기반) 적용 : 데이터에 라마 챗 템플릿 적용

@ 파인튜닝 준비 ; LoRA와 SFTConfig 설정 -> 학습 중 전처리 함수 collate_fn -> 데이터 정수 인코딩 

@ 모델 파인튜닝 : 런팟 (A100x1 RAM 70GB)  이용해서 16분간 lora 파인튜닝 학습

@ 테스트 데이터 준비하기

@ 파인튜닝 모델 추론 : 런팟 (A100x1 RAM 70GB)  이용해서 6분간 추론

@ 기본 모델 추론 : 런팟 (A100x1 RAM 70GB)  이용해서 6분간 추론

@ 결과 :

  • 파인튜닝 모델 성능
    5개의 테스트 샘플에 대해 파인튜닝된 모델은 모두 정답을 맞혀주어 정확도 100%를 기록했습니다. 
    반면 기본 모델(파인튜닝 전)으로 동일 샘플을 추론한 결과 4개 정답을 맞혔고, 이에 따른 정확도는 80%였습니다. 
  • 파인튜닝 및 추론
    파인 튜닝 시간은 16분, 추론 시간은 3분이었으며, 전체 GPU 메모리 70GB 중 약 30GB를 사용했습니다. 해당 작업에 든 비용은 $1.6 (약 2,000원)이었으며, 파인튜닝 및 추론을 포함한 총 비용이었습니다.

 

@ 의의 :

  • 효과적인 성능 향상
    짧은 시간과 낮은 비용으로도 파인튜닝만으로 기본 모델 대비 성능이 크게 향상됨을 확인할 수 있었습니다. 정답률이 80%에서 100%로 올라간 점이 그 증거입니다.
  • 빠르고 경제적인 실험 가능
    A100 GPU 하나만으로 16분 파인튜닝, 6분 추론, 그리고 $1.6의 비용만 들였다는 점은 대규모 자원이 아닌 간단한 환경에서도 실험이 충분히 가능함을 보여줍니다.
  • TRL의 실용성 강점
    Hugging Face의 TRL 프레임워크를 사용하여, LLaMA 기반 모델에 대해 간단하면서도 효과적인 파인튜닝을 수행할 수 있었습니다. 이러한 툴을 활용하면 빠른 프로토타이핑에 매우 적합하다는 인사이트를 제공합니다.
  • 범용 모델 vs 특정 도메인 적응
    기본 모델은 이미 준수한 성능(80%)을 보였지만, 도메인(경제 뉴스) 특화된 추가 파인튜닝을 통해 정밀도 100%까지 끌어올릴 수 있었습니다. 이는 실무 적용 시 도메인 적응의 중요성을 강조합니다.
  • 작업 효율성 및 생산성
    파인튜닝에 필요한 데이터 전처리, LoRA 구성을 포함한 학습 설정, 그리고 적은 자원 소모 등은 반복적 실험 및 확장 작업에 있어서 큰 장점으로 작용할 수 있습니다.

 

 

---------------------------------------------------------------------------------------------------------------------

 

@ TRL vs 라마팩토리

TRL(Hugging Face) : 범용 파인튜닝 프레임워크

LlamaFactory는 LLaMA 계열 모델(SFT, LoRA, RLHF 등)에 특화된 통합 툴킷

 

@ 개발 환경

 

@ 데이터 전처리

 

 

 

@ 모델 로드 및 템플릿 적용

 

@ Lora SFTConfig 적용

 

@ 학습 중 전처리 함수: collate_fn

 

@ 데이터 정수 인코딩

# 입력 정수 인코딩 결과

 

# labels 정수 인코딩 및 디코딩 결과

 

@ 학습하기

 

# 최종 학습 결과 : checkpoint-375가 최종 모델

 

 

@ 파인튜닝된 모델 추론 

 

# 파인튜닝된 모델 추론

 

파인튜닝 모델로 테스트 샘플 5개 추론해보기

5문제 샘플 중 5개를 전부 다 맞췄다. 샘플 경제 뉴스의 주식시장 영향 True/False 추론을 잘하는 것을 알 수 있다.

파인튜닝하는데 a100 GPU 메모리는 총 70GB 30GB 정도 사용하였다. 

 

@ 기본 모델 추론

 

# 기본 모델로 샘플 데이터 5개 추론

5문제 샘플 중 4개를 맞췄다(정답률 80%). 기본 모델의 정답률은 파인튜닝 모델의 100%보다 낮은 것을 알 수 있다.

 

@ 런팟에서 모델 파인튜닝 학습 및 추론에 사용한 비용과 시간

# 비용 :

20.5 달러 - 18.9 달러 = 1.6 달러(약 2,000)

 

# 시간

A100 SXM x1 : 파인튜닝 16분 / 추론 6

 

 

 

 

.

 

 

 

+ Recent posts