앞의 세 편은 친칠라가 옳았다는 이야기였다. 이번 편은 그 옳은 답이 왜 실무에서 거의 쓰이지 않는지에 대한 것이다. 이유는 논쟁이 아니라 목적함수에 있다. 친칠라가 최소화한 것은 학습 비용뿐이다.
식에 빠진 항 하나
친칠라의 세계에서 총비용은 6ND다. 그런데 모델을 만들어서 서빙하는 사람의 총비용은 다르다.
C = 6·N·D학습 + 2·N·D추론
뒤의 항이 Sardana와 Frankle이 2024년에 추가한 것이다(추론은 순전파만 하므로 파라미터당 토큰당 2 FLOPs). 항 하나를 더했을 뿐인데 최적점이 통째로 이동한다. 방향은 명확하다 — 모델을 더 작게, 학습은 더 오래. 작은 모델은 평생 추론 비용이 싸니, 학습에 돈을 더 써서 작은 모델의 품질을 끌어올리는 게 남는 장사가 된다.
손익분기는 대략 누적 10억 요청이다. 사내 도구 하나에 하루 1,000건이면 평생 못 넘지만, B2C 서비스라면 금방 넘긴다. 이 시리즈에서 독자가 가장 먼저 적어야 할 숫자가 이것이다 — 우리 모델은 평생 몇 개의 토큰을 뱉을 것인가.
FLOPs로는 16%, 달러로는 58%
여기서 이 편의 핵심 반전이 나온다. 논문의 결과를 FLOPs로만 보면 시시하다.
- 30B 품질을 5T 추론 토큰 조건에서 다시 풀면 30B/1.56T → 16.4B/3.27T. 총 FLOPs 절감은 16%.
- 전체 실험 범위로도 FLOPs 절감은 2.6~16%에 그친다.
그런데 달러로 환산하면 34~58%가 된다.
- 70B 품질을 21.5B / 27T 토큰(1,256:1)으로 만들면 $51.5M → $23.8M, 54% 절감.
- 30B 품질은 $10.8M → $4.52M, 58% 절감.
가장 뾰족한 문장은 이것이다 — 2조 토큰을 서빙하는 조건에서 친칠라 최적 70B는 컴퓨트 최적 대비 FLOPs를 1.3%밖에 더 쓰지 않는데, 돈으로는 36% 더 든다.
왜 FLOPs와 달러가 어긋나는가 — 디코딩은 연산이 아니라 대역폭이다
원인은 학습 MFU는 50% 근처인데 디코딩 MFU는 1% 수준이라는 데 있다. 50배 격차다. 그런데 "왜 1%인가"를 짚고 가야 이 편의 결론을 믿을 수 있다.
자기회귀 디코딩은 토큰 하나를 만들 때마다 가중치 전체를 메모리에서 한 번씩 읽어 온다. 즉 병목이 연산이 아니라 메모리 대역폭이다. 배치 1 기준 이론 상한은 이렇게 나온다.
토큰/초 ≈ HBM 대역폭 ÷ (파라미터당 바이트 × N활성)
H100의 대역폭 3.35TB/s에 BF16(2바이트) 7B 모델을 넣으면 약 239 토큰/초가 상한이다. 이때 쓰는 연산은 초당 2×7e9×239 ≈ 3.3 TFLOPs로, H100의 989.5 TFLOPS 대비 0.34%다.
그리고 여기서 깔끔한 사실이 하나 나온다 — 이 0.34%는 모델 크기와 무관하다. 위 두 식에서 N이 그대로 약분되기 때문이다. 배치 1로 디코딩하는 한 7B든 70B든 MFU는 대역폭 대 연산력의 비율로 고정된다. H100의 경우 연산기가 놀지 않으려면 바이트당 295 FLOPs가 필요한데, 배치 1 디코딩은 바이트당 2 FLOPs를 쓴다.
그래서 배치를 키워 여러 요청이 같은 가중치 읽기를 공유하게 만드는 것이 서빙 최적화의 거의 전부다. 실제로 4K 컨텍스트에서 배치를 119까지 올리면 MFU가 8.1%가 되고, FP8로 잘 튜닝한 8B 서빙의 실측은 21.8%까지 올라간다. 뒤집어 말하면 흔히 인용되는 "디코딩 MFU 1%"는 물리 법칙이 아니라 배치 3 수준으로 돌리고 있다는 뜻이고, 그건 아키텍처 문제가 아니라 운영 문제다. 배치 상한을 정하는 건 KV 캐시 메모리인데, 그 계산은 ⑨편에서 한다.
어쨌든 이 편의 결론은 유효하다 — 추론 쪽 FLOPs 1은 학습 쪽 FLOPs 1보다 훨씬 비싸다. FLOPs를 목적함수로 쓰는 순간 이 사실이 통째로 사라진다. 다만 그 격차가 50배냐 5배냐는 여러분의 서빙 스택이 결정한다.
현업은 이미 이론을 한참 추월했다
| 모델 | 토큰/파라미터 | 친칠라 대비 |
|---|---|---|
| Chinchilla 70B | 20:1 | 1배 |
| Llama 3.1 405B | 38.5:1 | 2배 |
| Llama 3 8B | 1,875:1 | 94배 |
| SmolLM2-1.7B | 6,471:1 | 324배 |
| Qwen3-0.6B | 60,000:1 | 3,000배 |
Llama 3 논문은 이유를 대놓고 적었다 — "작은 모델들은 컴퓨트 최적보다 훨씬 오래 학습시켰다." 추론 예산이 같은 조건에서 그게 더 낫기 때문이다. 그리고 47개 모델로 토큰/파라미터 비율을 10에서 10,000까지 밀어본 실험에서도 포화점은 발견되지 않았다. 계속 좋아진다.
얼마나 줄일 수 있는지에 대한 깔끔한 정량화도 있다. 컴퓨트를 2배 쓰면 친칠라 최적 크기의 30%까지 모델을 줄일 수 있다. 학습비 2배로 서빙 비용을 3분의 1로 만드는 거래다. 서빙 물량이 많다면 거의 항상 남는 장사다.
다만 표에 중요한 반전이 숨어 있다. 플래그십은 여전히 친칠라 근처다. Llama 3.1 405B는 자체 예측 최적점 402B/16.55T에 대해 실제로 405B/15.6T(38.5:1)를 썼다 — 최적점의 2배 안쪽이다. 오버트레이닝은 만능 전략이 아니라 "서빙 물량이 많은 소·중형 모델"의 전략이다. 국내 팀이 만드는 게 대부분 이 구간이라는 점이 중요하다.
그럼 오래 학습하는 건 공짜인가
여기까지만 읽으면 "토큰을 더 먹이면 무조건 이득, 포화점도 없다"로 보인다. 실제로 2024년까지의 업계 합의가 대체로 그랬다.
그런데 청구서가 나중에 도착한다. 2025년 이후의 연구 둘이 과학습한 모델은 파인튜닝이 잘 안 되고, 양자화도 잘 안 된다는 것을 정량적으로 보였다. 그리고 그 위험 구간의 좌표가 하필 국내 온디바이스 모델들이 서 있는 자리다. 다음 편은 그 청구서를 연다.
— 친칠라 법칙 시리즈 ④ / 다음 글: 오버트레이닝의 청구서 — 파인튜닝이 깨지고 양자화가 안 먹는다
댓글 없음:
댓글 쓰기
국정원의 댓글 공작을 지탄합니다.