파인튜닝
SFT · supervised fine-tuning · LoRA
한 줄로
파인튜닝은 사전학습된 모델을 더 작은 과제별 데이터로 이어 학습시켜, 특정 형식·말투·좁은 기술을 안정적으로 내놓게 만드는 일이다. 사실을 가르치는 데는 나쁜 방법이다. 사실은 바뀌고, 요청 시점에 검색으로 공급하는 편이 낫다.
파인튜닝은 이미 언어를 구사하는 모델에서 출발해 가중치를 특정 행동 쪽으로 민다. 시작하기 전에 물어야 할 질문은 이것이다. 내 문제는 «지식»인가 «행동»인가?
모델이 우리 제품 카탈로그를 모른다면 파인튜닝은 틀린 도구다. 카탈로그는 매주 바뀌고 재학습은 그 속도를 못 따라간다. 검색을 쓰라.
모델이 충분히 알고 있는데도 우리 JSON 스키마를 일관되게 내놓지 않거나, 사내 문체를 따르지 않거나, 내부 분류 체계를 적용하지 못한다면 파인튜닝이 그 일을 잘, 그리고 싸게 한다.
전체 파인튜닝은 모든 파라미터를 갱신한다. 비싸고, 호스팅할 모델 사본이 통째로 생긴다. LoRA 같은 파라미터 효율적 방법은 얼려둔 기반 모델 옆에 작은 어댑터를 학습시킨다. 훨씬 싸고 대부분의 목적에 충분하다.
실무적 주의 셋. 학습셋이 소홀히 한 영역에서 일반 능력이 떨어질 수 있다 — 보통 «치명적 망각»이라 부른다. 아래의 기반 모델은 언젠가 지원이 끊기고 우리 어댑터도 함께 간다. 그러니 다시 하는 비용을 예산에 넣어야 한다. 그리고 애초에 필요 없는 경우가 잦다. 더 명확한 프롬프트와 컨텍스트 속 예시 몇 개로 반나절이면 풀렸을 문제에 파인튜닝을 하는 팀이 흔하다. 그것부터 해보라.
자주 묻는 질문
- 예시가 몇 개나 필요한가?
- 형식과 말투라면 잘 만든 수백 개가 잡음 섞인 수만 개를 이기는 경우가 많다. 양보다 학습셋의 «일관성»이 중요하다.
- LoRA 란?
- 저랭크 적응(Low-Rank Adaptation). 모델 전체를 갱신하는 대신 작은 추가 파라미터만 학습한다. 훨씬 싸고, 모델 사본 대신 작은 어댑터 파일이 나오며, 대부분의 커스터마이징에 충분하다.