EP 96. LLM 추론 인프라와 토큰 경제학
🗺️ 이 영상의 위치
- 시간순: 전체 116편 중 116번째 · 2026-05-08
- 시기 배경: 2026상 (AI 에이전트 폭발기 / Claude Code·Codex 실사용 시대, 추론 인프라가 학습보다 중요해진 전환점)
- 난이도: ⭐⭐⭐⭐ (어려운 개념 10개)
- ⬅️ 앞 영상: EP 95. DeepSeek-V4 논문 읽기
- ➡️ 다음 영상: 없음 (현재 최신)
- 연결 이유: 현재 최신
⚡ 5분 요약
한 줄
AI 모델 성능보다 "그 모델을 얼마나 싸고 빠르게 굴리냐"가 이제 진짜 전쟁터야 — 그 안의 물리법칙과 가격표를 이번에 처음으로 제대로 풀어줘.
핵심 3개
1) 토큰 가격은 그냥 정하는 게 아니야 — 하드웨어 물리가 결정해 input 토큰이 싸고 output 토큰이 비싼 이유, context 20만 넘으면 가격 티어가 달라지는 이유 — 다 GPU 메모리랑 연산 속도의 물리적 한계에서 나온 거야. 노정석이 이걸 이번에 처음 계산해봤다고 솔직하게 털어놓을 만큼 몰랐던 영역.
2) GPU는 20ms마다 "열차"를 한 번씩 출발시켜 — 그 열차를 얼마나 꽉 채우냐가 수익 GPU가 한 번 연산할 때 최적으로 태울 수 있는 유저 수(배치)는 하드웨어 스펙 + 모델 구조로 계산이 돼. MoE(전문가 쪼개기 구조) 덕분에 이 숫자가 확 늘었고, 그게 곧 더 많은 사람에게 더 싸게 제공할 수 있다는 뜻.
3) 학습(training)보다 추론(inference)이 이제 더 중요해졌어 Claude Code, Codex 같은 에이전트 도구가 퍼지면서 한 번 쓸 때 context가 수만 토큰씩 들어가게 됐거든. 그러니 모델을 어떻게 만드냐보다 어떻게 싸게 빠르게 돌리냐가 프론티어 랩들의 진짜 기술력이자 해자(moat)가 된 거야.
가장 인상적인 한 마디
"AI 모델은 이 하드웨어의 그림자다."
한나야, 이게 무슨 말이냐면 — 모델이 GPU 위에서 도는 게 아니라, GPU 구조에 맞게 모델이 만들어지고 있다는 거야. 카메라 스펙이 바뀌면 영상 포맷도 바뀌듯이.
한나가 지금 당장 시도해볼 것
Claude Code나 ChatGPT 쓸 때, 맥락(context)이 길어지면 왜 느려지고 왜 비싸지는지 이번 영상 논리로 한번 떠올려봐. "아, 내가 KV cache를 많이 쌓고 있구나" — 이렇게 인식하는 것 자체가 더 스마트한 AI 사용자가 되는 첫걸음이거든. 실제로 대화를 자주 새로 시작하거나 짧게 나눠서 쓰는 것만으로도 비용이 달라질 수 있어.
📖 시간대별 영상 흐름 (15분 정도 걸려, 시간 있을 때만)
0~15분: "우리가 오늘 왜 이 어려운 걸 하는지" — 배경 세팅
노정석이 연휴 사이에 Dwarkesh 팟캐스트 새 에피소드를 3일 동안 공부했다고 밝히면서 시작해. Dwarkesh가 갑자기 칠판 들고 나타나서 판서로 강의하는 포맷으로 바꿨대 — 그 내용이 너무 좋았다고. 주제는 "LLM 추론 인프라" — 쉽게 말해 AI 모델을 실제로 돌릴 때 안에서 무슨 일이 일어나는지야.
노정석이 이렇게 말해. "저만 하더라도 GPT-5.5에 x-high 걸고 코드 넣고 작업하는데 워크로드가 상당해요." Claude Code, Codex 같은 에이전트 도구들이 퍼지면서 이제 AI에 수만 토큰씩 집어넣는 게 일상이 됐거든. 그러니까 "모델 학습"보다 "모델을 어떻게 굴리냐"가 훨씬 중요해진 시대가 왔다는 거야.
DeepSeek 지난 편 얘기도 잠깐 나와. DeepSeek V4가 연산량 3분의 1, 메모리 10분의 1로 줄였다고 했었는데 — 오늘 편 보고 나면 그게 얼마나 대단한 건지 진짜 이해가 된다고. 그리고 왜 요즘 GPT-4.5, Claude Opus 4.6 같은 모델들이 갑자기 5T, 10T 크기로 훅 커졌는지도 설명이 된다고 예고해.
15~35분: 트랜스포머 구조 초고속 복습 — "prefill이랑 decode가 뭔지만 알면 졸업"
최승준이 직접 만든 인터랙티브 트랜스포머 시각화를 띄워놓고 설명해. 분위기가 "요즘 Codex 한테 시켰더니 이거 만들어 줬어요"라는 가벼운 자랑과 함께 시작하는데, 노정석이 "아이고, Codex가 해줬군요" 하고 웃어.
핵심만 빠르게 — 내가 AI한테 "이 코드 봐줘"라고 코드 천 줄을 붙여넣으면 그게 prefill 이야. AI가 답하기 전에 내 입력을 전부 한 번에 처리하는 단계. 그리고 AI가 한 단어씩 타타타 출력하는 게 decode야. 입력 한 번에 처리 vs. 출력 한 토큰씩 — 이 두 단계가 완전히 다른 연산이거든.
KV cache 개념도 나와. AI가 내 대화 맥락을 기억하는 방식인데, 새 토큰이 나올 때마다 이전에 계산한 K(키)랑 V(값)를 저장해뒀다가 재활용해. 그래서 대화가 길어질수록 이 cache가 엄청나게 커져. 트랜스포머 블록이 DeepSeek V4 기준으로 61층이나 있고, 각 층마다 이게 다 붙거든 — 최승준이 "어마어마하게 많아지죠" 하면서 약간 경악하는 표정.
MoE(Mixture of Experts) 설명도 나오는데, 노정석이 재미있는 포인트를 짚어. "많은 분들이 수학 물어보면 수학 전문가가 나오는 거라고 생각하시는데, 전혀 아니에요. 'I am a boy'라고 쳐도 매번 다른 expert가 처리할 수 있어요." 전문가가 지식을 나눠가진 게 아니라, 그냥 연산을 분산하는 구조라는 거야.
35~60분: 오늘의 진짜 본론 — "왜 토큰 가격이 이렇게 생겼냐"
Reiner Pope(구글 TPU 출신 창업자)랑 Dwarkesh가 칠판에 쓴 수식을 따라가는 파트야. 노정석이 살짝 긴장하면서 "오늘 내용이 상당히 어렵긴 하지만 재밌을 거예요"라고 했는데, 이 파트가 그 어려운 부분이야.
핵심 공식은 이거야:
- 연산 걸리는 시간(t_compute) = 태운 유저 수 × 활성화된 파라미터 수 ÷ 연산 속도
- 메모리 읽는 시간(t_memory) = 전체 모델 무게 + KV cache 크기 ÷ 메모리 대역폭
AI가 한 번 답을 내는 데 걸리는 시간은 이 둘 중 오래 걸리는 쪽에 묶여. 유저 수(배치)가 적으면 메모리에 묶이고, 배치가 많아지면 연산에 묶여. 노정석이 그래프 그리면서 "이 교차점이 바로 가격 최적점"이라고 설명해.
그리고 신기한 숫자 하나가 나와 — 300이라는 숫자. FLOPs(연산 속도) 나누기 메모리 대역폭이 하드웨어가 계속 발전해도 FP4 기준으로 약 300 배율을 유지한대. GPU가 H100이든 GB300이든 이 비율이 비슷하게 유지된다는 거야. 그래서 최적 배치 수 = 300 × sparsity 역수. DeepSeek V3 기준으로 계산하면 약 2,400명을 한 사이클에 태울 수 있어.
60~80분: "20ms 열차" — GPU가 실제로 어떻게 돌아가나
노정석이 "열차"에 비유해서 설명해. GPU는 약 20ms마다 한 번씩 연산 사이클을 돌려. 이 20ms도 그냥 정한 게 아니라 — HBM 메모리 용량(288GB) ÷ 메모리 대역폭(20TB/s) = 약 14~15ms, 퉁쳐서 20ms. 그게 GPU가 전체 메모리를 한 번 다 읽어내는 시간이야.
그 20ms 열차에 유저들을 꽉꽉 채우는 게 목표인데, 문제는 유저마다 상황이 달라. "안녕"이라고 한 글자 보내는 사람, Claude Code에서 5만 토큰 코드 붙여넣는 사람, 대화가 80만 토큰 쌓인 사람 — 다 섞여 있거든. 그걸 어떻게 효율적으로 배치하냐가 vLLM, SGLang 같은 추론 엔진들이 하는 일이야.
여기서 중요한 게 chunked prefill — 5만 토큰 prefill도 잘게 쪼개서 decode 중인 유저들 사이에 끼워 넣는 기법. 그리고 PagedAttention — KV cache를 메모리에서 포인터로 관리해서 낭비 없이 쓰는 혁신. 노정석이 "이런 엔지니어링 인프라 능력이 프론티어 랩들의 진짜 해자(moat)"라고 강조해.
그리고 이걸 이용해서 역산이 가능하다는 얘기가 나와. 구글이 발표한 "초당 토큰 처리량" + API 가격 → 랙이 몇 대 있는지 추정 가능. 최승준이 "프론티어 랩들이 의도치 않게 정보를 주고 있었다"고 웃음.
80분~끝: cache 계층 구조 + 마무리 + 최승준 전시 광고
노정석이 KV cache 계층을 설명해. 내가 Claude Code 쓰다가 물 마시러 갔다 오면:
- 30초 이내 → HBM에 그대로 있어, 빠르게 이어서 작업 가능
- 몇 분 지나면 → CPU DRAM으로 내려가
- 10분 이상 → flash(SSD)로 이동
- 더 지나면 → 완전 삭제, 다시 prefill부터 시작 (비용 다시 발생)
이게 바로 "캐시 가격"이 따로 있는 이유야. 노정석이 "저는 지금까지 이런 계산을 해본 적이 없다는 걸 이번에 알게 됐어요"라고 솔직하게 말해 — 자기도 처음 공부한 거라는 거야.
마무리로 최승준이 Dwarkesh의 공부법 flashcard를 Codex로 번역해서 보여줘. Dwarkesh가 인터뷰 한 명 당 2주씩 공부한대 — "다른 누구도 못할 만한 질문을 해내기 위해서". 그리고 최승준의 어린이날 전시 광고로 마무리. 손으로 건드리면 항성계가 생기는 인터랙티브 아트 작품이야.
💡 한나 버전 사전
"Inference(추론)"가 뭐야?
- 전문가 설명: AI 모델이 학습을 마친 후, 실제 사용자 질문에 답을 생성하는 과정. 학습(training)의 반대편에 있는 단계.
- 한나 버전: 영상 편집 끝내고 유튜브에 올려서 사람들이 실제로 보는 것 = inference야. 편집하는 과정이 training이고. 아무리 잘 편집해도 업로드해서 돌리는 게 느리고 비싸면 망하는 거잖아.
"Prefill"이 뭐야?
- 전문가 설명: 사용자의 입력 전체를 AI가 한 번에 병렬로 처리하는 단계. 긴 prompt일수록 이 비용이 커.
- 한나 버전: 인스타 라이브 시작 전에 배경, 조명, 사운드 한 번에 세팅하는 것. 세팅이 길수록 시간 더 걸려. 네가 AI한테 코드를 천 줄 붙여넣는 그 순간이야.
"Decode"가 뭐야?
- 전문가 설명: AI가 한 토큰씩 순서대로 출력을 생성하는 과정. 이전 출력이 있어야 다음 출력이 나오는 구조.
- 한나 버전: 라이브 중에 멘트를 한 마디씩 내뱉는 것. 한 마디 나와야 다음 마디 나올 수 있어. AI 답변이 타타타 나오는 그거야.
"KV Cache"가 뭐야?
- 전문가 설명: Transformer가 attention 계산 시 만들어내는 Key, Value 행렬을 저장해두는 메모리. 대화 맥락이 길어질수록 사이즈가 커지며, 이를 재활용해 반복 연산을 줄임.
- 한나 버전: 유튜브 댓글 창에서 이전 대화 맥락을 기억하고 있는 메모장 같은 거야. 대화가 길어질수록 메모장이 두꺼워지고, 그걸 계속 들고 다니는 비용이 생겨.
"Batch(배치)"가 뭐야?
- 전문가 설명: 추론 시 GPU가 한 번의 연산 사이클에 동시에 처리하는 요청 묶음. 배치가 클수록 GPU 효율이 높아짐.
- 한나 버전: 유튜브 쇼츠 한 번에 몇 개 올리냐 같은 거야. 한 번에 많이 처리하면 업로드 오버헤드가 나눠져서 효율이 올라가는 것처럼, GPU도 한 사이클에 많은 유저를 태울수록 단위 비용이 줄어.
"MoE(Mixture of Experts)"가 뭐야?
- 전문가 설명: 모델의 FFN 레이어를 여러 개의 "전문가" 모듈로 나누고, 토큰마다 일부 전문가만 활성화해 연산하는 구조. 전체 파라미터는 크지만 실제 계산은 일부만 해.
- 한나 버전: 대형 MCN이랑 계약한 건데 매번 모든 PD를 부르는 게 아니라 이번 영상엔 이 PD, 저번엔 저 PD만 불러서 쓰는 거야. 전체 인력 풀은 크지만 한 번에 다 쓰지 않아서 비용이 줄어.
"HBM(High Bandwidth Memory)"이 뭐야?
- 전문가 설명: GPU 칩에 아주 가까이 붙어있는 고속 메모리. 일반 RAM보다 훨씬 빠르지만 용량은 작고 비쌈.
- 한나 버전: 스튜디오 바로 옆에 있는 소형 창고. 멀리 있는 큰 창고보다 훨씬 빨리 꺼낼 수 있지만 공간이 작아. GPU가 연산하려면 여기서 데이터를 꺼내야 해.
"Memory-bound vs Compute-bound"가 뭐야?
- 전문가 설명: 시스템의 속도를 제한하는 병목이 메모리 대역폭인지(memory-bound), 연산 처리속도인지(compute-bound) 구분하는 개념.
- 한나 버전: 촬영 속도가 느린 건지(compute-bound) vs 저장용 SSD가 느려서 파일 저장에 막히는 건지(memory-bound). AI 추론은 대부분 메모리에서 데이터 꺼내오는 게 병목이야.
"PagedAttention"이 뭐야?
- 전문가 설명: vLLM이 개발한 기법. KV cache를 OS의 페이지 메모리처럼 잘게 나눠 포인터로 관리해, 메모리 낭비 없이 여러 사용자의 다양한 길이 context를 효율적으로 처리함.
- 한나 버전: 클라우드 드라이브 폴더 관리법 바꾼 거야. 예전엔 영상마다 고정된 폴더 크기를 잡아두고 빈 공간은 낭비했다면, 이제는 포인터로 여기저기 연결해서 딱 필요한 만큼만 써. 메모리 낭비가 확 줄어.
"Roofline Analysis"가 뭐야?
- 전문가 설명: 하드웨어의 연산 성능과 메모리 대역폭 한계를 "천장선"으로 그려서 시스템이 어디서 병목이 나는지 추정하는 분석 기법. 정확한 계산이 아닌 큰 그림 추정용.
- 한나 버전: 내 채널 성장 가능성을 "구독자 상한선 vs 조회율 상한선" 두 개 천장선 그려서 어느 쪽이 먼저 막히는지 보는 것. 노정석도 "guesstimation"이라고 계속 강조했어 — 정확한 계산이 아니라 큰 그림 보는 도구야.
🔥 노정석 어록 모음
"AI 모델은 이 하드웨어의 그림자다."
분위기: 조용하고 확신에 찬 톤. 서론부에서 오늘 에피소드의 핵심을 한 줄로 정리하면서.
한나 풀이: 모델이 하드웨어 위에서 도는 게 아니라, 하드웨어 구조에 맞게 모델이 만들어진다는 거야. GPU가 72개짜리 랙으로 묶이니까 그 구조를 최대로 활용하는 MoE 모델이 만들어지는 것처럼. 카메라 센서 스펙이 바뀌면 영상 포맷도 따라 바뀌는 것처럼, AI도 그렇다는 거야.
"이 엔지니어링 인프라 능력이 가장 핵심이 되어 가는 것 같아요. 밖에 다 공유하지 않고 있죠."
분위기: 약간 의미심장하게, 천천히. 이게 프론티어 랩들의 진짜 비밀병기라는 걸 직감하면서.
한나 풀이: 요즘 "모델 성능은 다 비슷비슷해졌다"는 말 많잖아. 그럼 진짜 차이는 뭐냐 — 같은 GPU로 얼마나 더 많은 사람을 싸게 굴릴 수 있냐야. Anthropic이나 OpenAI가 이 serving 기술을 공개 안 하는 이유가 이거야. 모델 만드는 법보다 이게 더 핵심 자산이거든.
"저는 지금까지 이걸 생각해 본 적이 없다는 걸 알게 됐어요."
분위기: 담담하게, 자기 고백처럼. Claude Code 200불씩 내면서 쓰는 사람인데도 안에서 무슨 일이 일어나는지 몰랐다는 인정.
한나 풀이: 노정석처럼 AI를 엄청 깊게 공부하는 사람도 inference 경제학은 이번에 처음 계산해봤다는 거야. 우리가 AI를 매일 쓰면서도 "왜 이게 이 가격인지" 한 번도 생각 안 했잖아. 이 에피소드가 그 공백을 처음으로 채워준 거야.
🎬 한나 적용 포인트
1) 유료 AI 구독, 얼마나 써야 본전인지 계산해봐 Claude Pro, ChatGPT Plus 같은 걸 쓰고 있다면 — 짧게 자주 쓸수록 GPU 배치에 같이 태워지기 쉬워서 회사 입장에선 처리 비용이 낮아. 근데 너한테도 유리해. 맥락을 매번 새로 시작하면 cache 재활용이 안 되지만, 연속으로 작업하면 cache hit가 돼서 응답이 빠르거든. 같은 주제 작업은 한 세션에 몰아서 해봐.
2) 브랜드 협업 제안서·기획서 AI 쓸 때 — 순서가 있어 긴 자료를 AI에게 줄 때, 자료 붙여넣기(prefill)는 한 번만 하고 여러 질문을 이어서 하는 게 훨씬 효율적이야. 매번 새 대화에서 같은 자료를 다시 붙여넣으면 prefill 비용이 반복되거든. "이 기획서 보고 → 1안 짜줘 → 2안 짜줘 → 제목 다듬어줘" 식으로 한 대화에서 이어가는 게 더 빠르고 싸.
3) "AI가 왜 갑자기 느려졌지?" — 이제 이유를 알 수 있어 Claude Code나 Cursor 쓰다가 갑자기 응답이 느려지는 순간이 있잖아. 그게 context가 너무 길어져서 memory-bound로 빠진 거거나, 지금 서버 배치가 꽉 찬 상태거든. 이럴 때 새 대화 시작하거나, context를 요약해서 압축해달라고 요청하면 실제로 빨라져. 이제 이유를 알고 쓰는 거랑 모르고 쓰는 거랑 다르잖아.
🏷️ 태그
- 시기: #2026상
- 주제: #추론인프라 #토큰경제학 #GPU하드웨어 #LLM서빙
- 인물: #Dwarkesh #Reiner Pope
- 자유: #시리즈마지막편 #판서강의 #inference아키텍처