PART 9 · 강의 1/3
파인튜닝 기초
LLM을 특정 태스크에 맞게 조정하는 방법
01
파인튜닝이란?
모델을 특화시키는 추가 학습
파인튜닝(Fine-tuning)은 사전학습된 LLM의 가중치를 특정 태스크나 도메인에 맞게 추가 학습시키는 과정입니다. 모델의 행동, 스타일, 전문성을 원하는 방향으로 조정합니다.
Pre-training
대규모 텍스트로 기초 학습
→
Fine-tuning
특정 태스크 학습
→
RLHF
인간 선호도 정렬 (선택)
💡 파인튜닝의 종류
- Full Fine-tuning: 모든 파라미터 업데이트 (비용 높음)
- PEFT (LoRA, QLoRA): 일부 파라미터만 학습 (효율적)
- Instruction Tuning: 지시를 따르도록 학습
- Domain Adaptation: 특정 도메인 지식 강화
02
파인튜닝 vs RAG
어떤 방법을 선택할까?
파인튜닝과 RAG는 서로 다른 문제를 해결합니다. 어떤 방법을 선택할지는 무엇을 개선하고 싶은지에 따라 달라집니다.
RAG
지식 추가: 외부 문서에서 정보 가져오기
최신 정보: 실시간 업데이트 가능
비용: 모델 학습 불필요, 상대적 저렴
한계: 행동/스타일 변경 어려움
Fine-tuning
행동 변경: 출력 스타일, 형식, 톤 조정
효율성: 긴 프롬프트 없이 원하는 동작
비용: 초기 학습 비용 발생
한계: 학습 데이터 외 지식 어려움
어떤 방법을 선택할까?
새로운 지식이 필요한가?
↓ YES
회사 문서, 최신 정보
RAG 사용
↓ NO
행동/스타일만 바꾸고 싶다
Fine-tuning 고려
💡 두 방법을 함께 사용하는 경우
파인튜닝으로 응답 스타일을 조정하고, RAG로 최신 정보를 제공하는 조합도 가능합니다. 예: 회사 톤앤매너로 파인튜닝 + 제품 정보는 RAG로 검색
03
파인튜닝이 효과적인 경우
언제 파인튜닝을 고려해야 하는가
특정 스타일/톤
브랜드 톤앤매너, 캐릭터 페르소나,
특정 문체로 답변하도록 학습
특정 출력 형식
JSON, 특수 마크업 등
일관된 구조화 출력이 필요한 경우
도메인 전문성
의료, 법률, 금융 등
전문 용어와 개념 이해 강화
특정 행동 억제
민감한 주제 거부, 특정 응답 패턴
제거 또는 강제
프롬프트 간소화
반복되는 긴 프롬프트를
모델에 내재화하여 비용 절감
저자원 언어
기본 모델이 잘 지원하지 않는
언어 능력 향상
04
학습 데이터 준비
파인튜닝 성공의 핵심
파인튜닝의 성공은 데이터 품질에 크게 좌우됩니다. 일반적으로 Instruction-Response 쌍 형태로 데이터를 구성합니다.
// 기본 형식: 입력-출력 쌍
{
"messages": [
{"role": "system", "content": "당신은 친절한 고객 서비스 담당자입니다."},
{"role": "user", "content": "환불 어떻게 해요?"},
{"role": "assistant", "content": "안녕하세요! 환불 절차를 안내해 드리겠습니다..."}
]
}
1
데이터 수집
기존 대화 로그, 문서, 또는 합성 데이터 생성.
최소 수백~수천 개의 고품질 예시 필요.
2
데이터 정제
중복 제거, 형식 통일, 저품질 데이터 필터링.
일관된 스타일과 정확한 정보 확인.
3
형식 변환
학습 도구가 요구하는 형식(JSONL 등)으로 변환.
토큰화 및 길이 검증.
4
데이터셋 분할
Train/Validation/Test 분할.
과적합 방지를 위한 검증 데이터 확보.
⚠️ 데이터 품질 주의사항
- 양보다 질: 잘못된 데이터는 모델을 망침
- 다양성: 비슷한 예시만 있으면 과적합
- 일관성: 같은 유형의 입력에 일관된 출력
- 저작권: 합법적으로 사용 가능한 데이터인지 확인
05
파인튜닝 과정
단계별 학습 프로세스
| 단계 | 설명 | 주요 설정 |
|---|---|---|
| 1. 모델 선택 | 기반이 될 사전학습 모델 선택 | Llama, Mistral, GPT-3.5 등 |
| 2. 하이퍼파라미터 | 학습률, 배치 크기, 에폭 설정 | lr: 1e-5~5e-5, epochs: 1-3 |
| 3. 학습 실행 | GPU로 학습 진행 | Loss 모니터링 |
| 4. 검증 | Validation loss, 샘플 출력 확인 | 과적합 여부 확인 |
| 5. 평가 | 테스트셋으로 성능 측정 | 태스크별 메트릭 |
06
비용과 리소스
모델 크기별 GPU 요구사항
| 모델 크기 | Full FT GPU | LoRA GPU | 대략적 비용 |
|---|---|---|---|
| 7B | A100 80GB x 1 | RTX 3090/4090 | $10-50/run |
| 13B | A100 80GB x 2 | A100 40GB x 1 | $50-100/run |
| 70B | A100 80GB x 8 | A100 80GB x 2 | $200-500/run |
💡 비용 절감 방법
- LoRA/QLoRA: 파라미터 효율적 학습으로 GPU 요구량 대폭 감소
- 클라우드 API: OpenAI, Together AI 등의 파인튜닝 API 활용
- 작은 모델: 7B 모델도 충분히 좋은 성능
- Spot Instance: 클라우드 할인 인스턴스 활용
07
파인튜닝 플랫폼
주요 파인튜닝 서비스 및 도구
OpenAI Fine-tuning
GPT-3.5-turbo 파인튜닝.
API로 간편하게 사용. 가장 접근성 좋음.
Hugging Face
Transformers + PEFT 라이브러리.
오픈소스, 유연한 커스터마이징.
Together AI
Llama, Mistral 등 파인튜닝.
API + 호스팅 일체형.
Axolotl
오픈소스 파인튜닝 도구.
다양한 모델과 기법 지원.
SUMMARY
핵심 요약
- 파인튜닝은 모델 가중치를 추가 학습으로 조정하는 기법
- RAG vs 파인튜닝 — 지식 추가는 RAG, 행동/스타일 변경은 파인튜닝
- 데이터 품질이 파인튜닝 성공의 핵심 (양보다 질, 일관성)
- LoRA/QLoRA로 효율적인 학습 가능 (비용 절감)
- OpenAI, Hugging Face, Together AI 등 다양한 플랫폼 활용 가능