10

Day 3 Common Pitfalls: 학습 실행 시 흔한 실수

QLoRA 학습 실행

학습 목표

QLoRA 학습 실행 시 흔한 실수를 사전에 방지한다

Day 3 Common Pitfalls

Pitfall 1: "bf16=True인데 T4 GPU에서 에러"

T4 GPU는 bf16을 지원하지 않음!

해결:
  bf16=False, fp16=True

자동 감지 코드:
  bf16=torch.cuda.is_bf16_supported()
  fp16=not torch.cuda.is_bf16_supported()

Pitfall 2: "학습 시간이 예상보다 10배 느림"

원인 TOP 3:
1. packing=False로 짧은 데이터에 패딩이 가득
   -> packing=True 또는 데이터 길이 균일화

2. device_map="auto"가 CPU에도 배치
   -> 모델이 GPU에 완전히 올라가는지 확인

3. Colab에서 GPU 할당 안 됨
   -> 런타임 > 런타임 유형 변경 > GPU 확인

Pitfall 3: "동일 프롬프트인데 학습/추론 결과 다름"

원인: 프롬프트 템플릿 불일치!

잘못된 예:
  학습: "### 지시사항:\n{instruction}\n\n### 답변:\n{output}"
  추론: "질문: {question}\n답변:"

해결: 학습과 추론에 완전히 동일한 템플릿 사용
  + EOS 토큰 처리도 일치해야 함

Pitfall 4: "체크포인트가 디스크를 가득 채움"

7B QLoRA 체크포인트: ~100-200MB (어댑터만)
하지만 옵티마이저 상태까지 포함하면: ~2-4GB

해결:
  save_total_limit=3  # 최근 3개만 유지
  save_only_model=True  # 옵티마이저 제외 (재개 불가)

Pitfall 5: "Colab에서 런타임 끊겨서 학습 날아감"

Colab 무료: 12시간 세션 제한
Colab Pro: 24시간 세션 제한

해결:
1. save_strategy="steps", save_steps=100 (자주 저장)
2. Google Drive 마운트 후 output_dir 설정
   output_dir="/content/drive/MyDrive/qlora-output"
3. 끊겨도 체크포인트에서 재개:
   trainer.train(resume_from_checkpoint="./checkpoint-500")
AI로 학습하기 — 꿀팁
학습 실행 흔한 실수 점검AI 학습 팁

QLoRA 학습 실행 시 gradient checkpointing, fp16/bf16 선택, 체크포인트 저장 주기 등 설정 실수가 없는지 검증해 보세요.

QLoRA 학습 실행 시 흔한 실수에 대한 아래 설명이 맞는지 검증해줘. (1) 'T4 GPU에서는 bf16 대신 fp16을 써야 한다.' (2) 'gradient_checkpointing=True로 설정하면 학습 속도가 빨라진다.' (3) 'save_steps를 100으로 설정하면 스텝 100마다 체크포인트가 저장된다.' (4) 'LoRA 어댑터만 저장하면 나중에 베이스 모델 없이도 단독으로 추론할 수 있다.' 잘못된 항목은 제조 sLLM 학습 환경 맥락으로 정확하게 교정해줘.
이 팁이 도움이 됐나요?
핵심 포인트
  • T4 GPU: bf16 미지원, fp16=True 사용
  • 느린 학습: packing=True, GPU 배치 확인
  • 프롬프트 템플릿: 학습/추론 100% 일치 필수
  • Colab: Google Drive에 자주 체크포인트 저장