안에 진짜 뭐가 들어있나
context window는 이번 요청 하나에서 모형이 쓸 수 있는 token 범위야. system prompt, 주고받은 대화, 붙인 파일, 검색해온 chunk, tool 결과, 그리고 지금 쓰는 중인 답변까지 전부 여기 들어가. model weight는 아니야. 디스크에 있는 파일도, 지금까지 나눈 모든 대화도 아니고. turn 하나짜리 계약서라고 보면 돼.
"아까 말했잖아"가 안 통할 때가 있는 게 그래서야. 그 사실이 지금 window에 없고, retrieval로도 안 들어왔고, 오래 남는 memory에도 없으면 모형은 그걸 제대로 못 써. 잊은 게 아니라 애초에 가진 적이 없는 거야.
숨어 있는 나머지 절반 — output
window에는 답을 쓸 자리도 남아 있어야 해. reasoning model은 눈에 안 보이는 reasoning token까지 같은 예산에서 깎아 쓰고. input으로 끝까지 밀어넣는 건 알뜰한 게 아니라, 모형이 일을 마무리할 자리를 뺏는 거야.
들어가는 것과 안 들어가는 것
들어가는 쪽 — system prompt, 지금까지의 대화 turn 전부, tool이나 function call 결과, retrieval로 끌어온 RAG chunk, 쓰는 중인 답변. 안 들어가는 쪽 — model weight, 다른 session, 네 터미널, 안 읽은 디스크 파일, 안 붙인 브라우저 탭, 안 보낸 metadata.
Context는 기억이 아니라 지금 펼쳐놓은 작업대야. 작업대가 아무리 넓어도 엉뚱한 재료가 올라가 있거나 손 놀릴 빈자리가 없으면 소용없어.