모델은 어떻게 학습되는가 (그리고 왜 직접 하지 않는가)
다운로드할 수 있는 모든 챗 모델은 같은 3단계 파이프라인을 거쳤습니다. 1단계는 거의 확실히 영원히 돌리지 못할 것입니다. 데이터센터 영역입니다. 대신 2, 3단계의 값싼 사촌들은 돌릴 수 있을지도 모릅니다. 단계를 알면 베이스와 인스트럭트의 동작 차이, 모델이 환각을 일으키는 이유, Hugging Face의 "머지" 모델이 실제로 무엇인지가 설명됩니다.
1단계: 사전학습 — 비싼 부분
상상을 초월하는 규모의 단일 목표. 웹 텍스트, 코드, 책 수조 토큰에 걸쳐 다음 토큰을 예측하는 것. 지식과 기술이 가중치에 들어가는 곳이자, 연산량의 압도적 대부분이 들어가는 곳입니다.
| 항목 | 대략적 규모 (자릿수) |
|---|---|
| 데이터 | 현대 패밀리는 10–30T 토큰 |
| 하드웨어 | 수천 GPU-월; 프론티어 실행은 클러스터를 수개월 점유 |
| 비용 | 7B는 ~$1M–$10M+; 70B급은 $10M–$100M+; 프론티어 실행은 그보다 훨씬 위라는 소문 |
| 산출물 | 베이스 모델 — 인터넷 모양의 자동완성, 어시스턴트 행동 없음 |
산출물은 베이스 모델입니다. 이어 쓰기에는 훌륭하고 어시스턴트로는 쓸모없습니다. 질문을 받으면 답합니다 — 그리고 또 다른 질문, 목록, 페이지 나눔으로 계속 갑니다. 인터넷의 텍스트가 그렇게 생겼기 때문입니다.
2단계: 지도 파인튜닝(SFT)
수만 개에서 수백만 개의 정제된 (지시 → 응답) 쌍, GPU-일 며칠. 사전학습 옆에서는 반올림 오차지만 행동을 다시 배선합니다. 지시에 답하되 유용한 형식으로, 그리고 멈춥니다. 베이스 모델을 대화 상대로 바꾸는 단계가 이것입니다.
3단계: 선호 튜닝
- RLHF: 인간이 응답 쌍의 순위를 매깁니다. 보상 모델이 그 순위를 학습합니다. 정책이 보상을 향해 최적화됩니다(PPO). 고전 레시피, 중장비.
- DPO: 보상 모델을 건너뛰고 선호 쌍을 직접 최적화합니다. 더 단순하고 안정적이며 오픈소스의 최애.
- 효과: 스타일, 유용성, 거절, 더 잘 보정된 주장. 아첨도 함께 — 사람이 동의에 보상을 준다는 것을 모델이 학습합니다.
SFT 데이터의 실제 모습 — 지시/응답 쌍의 평범한 JSONL, 특별할 것 없습니다:
{"instruction": "Summarize the changelog in three bullets.", "response": "- Adds ..."}
{"instruction": "답변을 존댓말로 작성하세요.", "response": "네, 알겠습니다 ..."}
이런 것을 수천에서 수백만 개, 몇 에포크 돌리면 베이스 모델이 어시스턴트 형식을 배웁니다.
같은 가중치, 다른 단계
프롬프트: "Write a haiku about GPUs."
베이스 (1단계 후):
"Write a haiku about GPUs.
Write a sonnet about CPUs.
1. Choose your topic carefully..." ← 문서를 이어 씀
인스트럭트 (1+2+3단계):
"A thousand cores wake,
each chasing one quiet token—
fans hold their breath." ← 답하고, 형식을 갖추고, 멈춤
저장소 접미사가 단계를 알려줍니다. 이름만 = 베이스. -instruct / -it / -chat = 튜닝됨(파라미터 참고).
용어 하나 더: 지식 컷오프 — 사전학습 코퍼스가 수집된 날짜. 그 이후의 것을 물으면 정직한 "모르겠습니다"나, 더 나쁘게는 자신만만한 픽션을 받습니다. 둘 다 고정된 가중치의 올바른 동작입니다(LLM이란).
학습 대 파인튜닝: 약 1000배 차이
| 사전학습 | LoRA 파인튜닝 | |
|---|---|---|
| 데이터 | 10^12–10^13 토큰 | 10^6–10^9 토큰 |
| 갱신 파라미터 | 전부 | 1–2% 미만 (작은 어댑터 행렬) |
| 하드웨어 | 클러스터 | GPU 한 장 |
| 소요 시간 | 수주–수개월 | 수시간–수일 |
| 비용 | $M–$100M+ | 렌털 $0–$100 |
| 용도 | 지식 + 기술 | 스타일, 형식, 좁은 도메인 동작 |
| 위험 | 불안정한 loss 실행, 망가진 체크포인트 | 작은 데이터셋 과적합 |
| 실패 양상 | 수개월 뒤에야 발견되는 조용한 데이터 버그 | 범용 기술의 치명적 망각 |
| 재현 가능? | 드묾 (데이터 비공개) | 가능 (데이터셋이 저장소에 있음) |
| 데이터 출처 | 공개 웹, 코드, 책, 라이선스 아카이브 | 당신의 프롬프트와 이상적 답변 |
| 할 수 있는 사람 | 자금 충분한 연구소 | 당신, 이번 주말에 |
파인튜닝은 다이얼을 조정하지 지식을 더하지 않습니다. 7B에게 회사 톤 가르치기: LoRA, 하룻밤. 5만 건 내부 문서 가르치기: 그건 학습이 아니라 검색입니다(RAG, 파인튜닝).
파인튜닝이 할 수 있는 것과 없는 것, 올바로 조준하도록:
- 가능: 출력 형식, 톤, 용어, 거절 스타일, 도구 호출 문법, 안정적으로 수행되는 좁은 과제.
- 가능: 큰 모델에서 작은 모델로 좁은 과제 하나 증류.
- (안정적으로) 불가능: 새 사실 추가, 약한 추론 수리, 지식 컷오프 연장, 작은 모델을 크게 만들기.
- 규칙: 문제가 "모른다"면 검색, "말을 안 듣는다"면 파인튜닝.
체크포인트, 머지, 그리고 당신이 다운로드하는 것
- 학습은 도중에 체크포인트를 저장합니다. 릴리스는 보통 마지막 인스트럭트 단계 가중치입니다 — 당신은 완성된 어시스턴트를 받지, 그것을 만든 과정을 받는 게 아닙니다.
- "머지"는 같은 베이스 모델의 여러 파인튜닝을 평균하거나 보간합니다(model soup). 학습은 일어나지 않습니다. 부모들 사이 어딘가에 착륙하는 경우가 많은 가중치 산술입니다. Hugging Face에서 인기 있고, 저렴하고, 가끔 훌륭합니다.
- 불분명한 계보는 불분명한 라이선스를 뜻합니다. 머지는 모든 부모의 조건을 상속합니다(오픈 가중치 대 클로즈드 API).
- 챗 모델 뒤의 베이스 가중치도 가끔 공개됩니다 — 완성형 워크로드나 파인튜닝 기판으로만 가져가세요.
- 오픈 릴리스가 마지막 단계에서 멈추는 이유: 사전학습 데이터와 중간 체크포인트는 비싼 경쟁 자산이고, 완성된 가중치는 데모입니다.
- 커뮤니티 인스트럭트 모델은 사후학습 레시피와 데이터셋을 공유합니다. 그래서 그렇게 많은 모델이 서로 바꿔 쓰는 듯한 느낌을 줍니다. 같은 베이스, 같은 2/3단계 플레이북.
- 데이터와 단계를 명시한 모델 카드의 릴리스를 선호하세요. 문서화된 최종 체크포인트는 과대광고된 것보다 잘 나이 듭니다.
관련: 파인튜닝 · RAG · 오픈 가중치 대 클로즈드 API · 파라미터