LLMLLM 파인튜닝강의 5개 중 1번째난이도 중급

파인튜닝이란? — 모델 커스터마이징의 원리

발행 읽는 시간 약 1 분

  • LLM
  • 파인튜닝
  • Fine-tuning
  • PEFT
  • LoRA
  • 사전학습

강의 소개

LLM 파인튜닝이 무엇인지, 언제 필요한지, 프롬프트 엔지니어링·RAG·파인튜닝의 차이를 이해합니다. 전체 파인튜닝과 PEFT 방법의 특징도 알아봅니다.

파인튜닝이 필요한 경우#

Diagram · Mermaid

파인튜닝이 적합한 상황#

✅ 적합:

  • 특정 도메인 언어/용어 (법률, 의학, 코드)
  • 일관된 출력 형식 유지
  • 특정 톤이나 페르소나
  • 짧은 프롬프트로 복잡한 작업

❌ 부적합:

  • 최신 정보 주입 (→ RAG 사용)
  • 사실 관계 수정 (→ hallucination 위험)
  • 소량 데이터 (→ 프롬프트 엔지니어링으로 충분)

파인튜닝 방법 비교#

Diagram · Mermaid

LoRA 원리#

Low-Rank Adaptation: 큰 행렬 대신 작은 두 행렬의 곱으로 업데이트를 근사합니다.

Text
원래 가중치 W (4096×4096 = 16M 파라미터)
                  ↓
LoRA: A (4096×8) × B (8×4096) = 65K 파라미터만 학습
      ↑ rank=8

업데이트: W' = W + AB  (W는 동결, A와 B만 학습)

메모리 절약: 16M → 65K (약 99.6% 감소!)


파인튜닝 데이터 요구량#

작업필요 데이터예시
스타일 조정100~500회사 문체 학습
도메인 적응1K~10K의학 용어 학습
새 능력 학습10K~100K코드 생성
기초부터 학습수십억GPT 사전학습

파인튜닝 데이터 형식#

JSON
// 지시-응답 형식 (Alpaca 스타일)
{"instruction": "이 Python 코드를 리뷰해주세요.",
 "input": "def add(a, b): return a + b",
 "output": "함수가 간결하고 명확합니다. 타입 힌트를 추가하면 더 좋습니다."}

// 대화 형식 (ChatML)
{"messages": [
    {"role": "system", "content": "당신은 친절한 코드 리뷰어입니다."},
    {"role": "user", "content": "이 코드 어때요?"},
    {"role": "assistant", "content": "좋습니다! 다만..."}
]}

파인튜닝 워크플로우#

Diagram · Mermaid

정리#

방법비용적합한 경우
프롬프트 엔지니어링없음일반 작업
RAG낮음외부 지식
LoRA/QLoRA중간도메인 특화
전체 파인튜닝높음최고 성능 필요

다음 편에서는 데이터 준비 — 파인튜닝을 위한 데이터셋 수집, 정제, 포맷 변환 방법을 배웁니다.

Follow · Ask · Work

이 글이 도움이 됐다면

짧은 작업 기록과 데모는 인스타그램에 올립니다. 만들고 싶은 것이 있다면 프로젝트 의뢰나 협업 제안도 편하게 보내 주세요.

글쓴이

파란여우

직접 만든 AI 앱·제품의 개발·배포를 공개하는 실전형 테크 크리에이터

파란여우 소개 Instagram @bluefox._.hi

이어서 보기

만들고 싶은 것이 있다면 프로젝트 의뢰로 알려 주세요.