※ 본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다. ※

오늘은 NCSOFT에서 제공한 LLaMA 모델을 Hugging Face에서 내려받아 LoRA 파인튜닝 과정을 실습했습니다.
RAG 응답 형식, 문서 인용 처리, 데이터 전처리부터 모델 테스트까지 꽤 탄탄한 흐름을 실습해보면서,
RAG 모델의 튜닝과정을 정리해 볼 수 있는 시간이었습니다 😗
🧩 사용 모델과 환경 구성
- 모델: NCSOFT/Llama-VARCO-8B-Instruct
- 튜닝 방식: LoRA(Low-Rank Adaptation)
- 런타임 환경: RunPod A100 GPU (50GB container disk)
RunPod에서 A100 GPU 1대를 사용했습니다.
파인튜닝은 Full fine-tuning이 아닌 PEFT(부분 파인튜닝) 방식으로 진행했습니다.
효율적인 자원 사용이 가능했고, 학습 결과도 adapter 형태로 저장되다보니 관리가 편했습니다 😋
📦 데이터셋 및 프롬프트 구조
- 사용한 데이터셋: iamjoon/klue-mrc-ko-rag-dataset
- 유형: 검색 기반 질문-응답 형식
- 주요 포맷:
{
"messages": [
{ "role": "system", "content": "검색 결과를 기반으로 답하세요..." },
{ "role": "user", "content": "질문" },
{ "role": "assistant", "content": "정답 및 문서 인용 포함 응답" }
]
}
데이터셋은 지난 실습의 결과물이기 때문에 그냥... 강사님의 데이터셋을 사용했습니다!
질문마다 5개의 문서가 "문서1:", "문서2:" 형태로 주어지고,
응답에는 반드시 [[ref1]], [[ref2]] 같은 인용 정보가 포함되도록 구성되도록 했었죠!
RAG 시스템에서 발생할 수 있는 예외 상황을 대처할 수 있도록 준비해둔 데이터 셋이었습니다.
⚙️ 파인튜닝 설정 (SFT + LoRA)
LoRA 설정
LoraConfig(
r=8,
lora_alpha=32,
lora_dropout=0.1,
target_modules=["q_proj", "v_proj"],
task_type="CAUSAL_LM"
)
- q_proj, v_proj에만 LoRA 적용
- rank=8, dropout=0.1로 경량화된 fine-tuning 설정
SFTTrainer 설정
SFTConfig(
num_train_epochs=3,
per_device_train_batch_size=2,
gradient_accumulation_steps=2,
learning_rate=1e-4,
max_seq_length=8192,
bf16=True,
save_steps=50,
logging_steps=10
)
- LoRA + gradient checkpointing으로 메모리 최적화
- 긴 문서 대응을 위한 8K 토큰까지 처리 가능한 구조
🔄 Collate 함수 & 템플릿
collate_fn() 함수는 강사님이 준비해둔 데이터 전처리 함수입니다.
코드 저작권? 문제로 전부 공유할 수 는 없어서, 대략적인 함수의 기능을 정리해봤습니다.
- LLaMA 3 채팅 형식에 맞춰 <|start_header_id|>role<|end_header_id|> 템플릿 사용
- input_ids, labels, attention_mask를 직접 구성
- 모델이 학습해야 할 응답 구간 외에는 -100으로 마스킹 처리
이러한 전처리를 통해서 모델은 "assistant" 역할의 응답 부분만 정확히 학습하게 됩니다
✅ 학습 및 저장
trainer.train()
trainer.save_model()
- llama-3-8b-rag-ko 디렉토리에 adapter 저장
- Hugging Face hub에는 업로드하지 않고 로컬 디스크에만 저장
① 오늘자 날짜, 공부 시작, 종료 시각 포함 사진 각 1장


② 1개 클립 수강 인증 사진 1장 / 학습 인증 사진 1장


③ 챌린지 대상 강의 완강률 캡쳐 사진 1장

https://fastcampus.info/4n8ztzq
(~6/20) 50일의 기적 AI 환급반💫 | 패스트캠퍼스
초간단 미션! 하루 20분 공부하고 수강료 전액 환급에 AI 스킬 장착까지!
fastcampus.co.kr
'패스트캠퍼스환급챌린지' 카테고리의 다른 글
| 패스트캠퍼스 환급챌린지 40일차 : 파인튜닝과 RAG로 완성하는 맞춤형 LLM 서비스 개발 강의 후기 (5) | 2025.08.09 |
|---|---|
| 패스트캠퍼스 환급챌린지 39일차 : 파인튜닝과 RAG로 완성하는 맞춤형 LLM 서비스 개발 강의 후기 (3) | 2025.08.08 |
| 패스트캠퍼스 환급챌린지 37일차 : 파인튜닝과 RAG로 완성하는 맞춤형 LLM 서비스 개발 강의 후기 (3) | 2025.08.06 |
| 패스트캠퍼스 환급챌린지 36일차 : 파인튜닝과 RAG로 완성하는 맞춤형 LLM 서비스 개발 강의 후기 (1) | 2025.08.05 |
| 패스트캠퍼스 환급챌린지 35일차 : 파인튜닝과 RAG로 완성하는 맞춤형 LLM 서비스 개발 강의 후기 (3) | 2025.08.04 |