컨텍스트 윈도우Context Window
컨텍스트 윈도우는 AI 모델이 한 번에 읽을 수 있는 텍스트(토큰)의 최대 분량입니다. 이 한도를 넘어가면 대화의 앞부분이 창 밖으로 밀려나 모델이 더 이상 참고하지 못합니다.
- 이럴 때 만납니다
- 한 시간 전에 정한 규칙을 AI가 갑자기 어기기 시작할 때. 에러 없이 조용히 멍청해집니다.
- 프롬프트에 쓰는 이름
- Context Window · 다른 이름: 컨텍스트, Context, 토큰 한도, 창 크기
AI가 "기억"하는 것이 아니라 매번 처음부터 다시 읽는다고 생각하면 정확합니다. 그 한 번에 읽을 수 있는 분량이 컨텍스트 윈도우입니다. 대화가 길어지면 창이 뒤로 밀리면서 앞부분이 시야에서 빠집니다.
- 나버튼 색은 무조건 코발트(#0a3dff)로 통일해줘. 이 규칙 잊지 마.
- AI알겠습니다. 모든 버튼을 #0a3dff 로 통일했습니다.
- 나로그인 폼 만들어줘.
- AI이메일·비밀번호 입력과 제출 버튼을 만들었습니다.
- 나에러 메시지도 보여줘.
- AI실패 시 폼 아래에 빨간 텍스트로 표시하도록 했습니다.
- 나회원가입 페이지도 같은 스타일로.
- AI회원가입 폼을 추가했습니다. 버튼은 초록색으로 넣었습니다.
토큰이 무엇인가요, 글자 수와 다른가요
다릅니다. 토큰은 모델이 텍스트를 쪼개는 단위로, 영어에서는 대략 단어 하나나 그 조각에 해당합니다. 100만 토큰이면 영어 기준 대략 수십만 단어 분량입니다.
한국어 화자에게 중요한 지점이 여기입니다. 대부분의 토크나이저는 영어 중심으로 만들어져서, 같은 내용이라도 한국어가 토큰을 더 많이 씁니다. 배수는 측정마다 크게 갈려서 하나의 숫자로 못 박기 어렵지만 방향은 일관됩니다. 그래서 한국어로 긴 세션을 하면 체감 한도가 영어보다 빨리 옵니다.
토크나이저가 바뀌면 같은 글의 토큰 수도 바뀝니다. Anthropic은 Claude Opus 4.7부터 새 토크나이저를 쓰는데, 이전 세대 모델 대비 같은 텍스트가 최대 1.35배까지 더 많은 토큰이 될 수 있다고 안내합니다.
얼마나 큰가요
모델마다 다르고 계속 커지고 있어서, 숫자를 외우기보다 내가 쓰는 모델의 공식 문서를 확인하는 습관이 낫습니다. 2026년 9월 기준 Claude 계열은 이렇습니다.
| 모델 | 컨텍스트 윈도우 |
|---|---|
| Claude Fable 5.1 | 100만 토큰 |
| Claude Opus 5 | 100만 토큰 |
| Claude Sonnet 5 | 100만 토큰 |
| Claude Haiku 4.5 | 20만 토큰 |
실전에서 어떻게 터지나요
세 가지 형태로 나타납니다. 셋 다 에러 메시지가 안 뜨는 것이 고약한 점입니다.
- 앞에서 정한 규칙을 잊습니다. 세션 초반에 "버튼은 무조건 이 색"이라고 했는데 한 시간 뒤 다른 색이 나옵니다. AI가 무시한 것이 아니라 그 문장이 창 밖에 있는 것입니다.
- 큰 코드베이스를 통째로 못 넣습니다. 그래서 AI가 이미 있는 함수를 다시 만들거나, 옆 파일의 규칙과 어긋나게 짭니다.
- 대화가 길어질수록 답이 나빠집니다. 한도에 닿기 전부터 서서히 시작됩니다. 위의 context rot 현상입니다.
증상이 "AI가 갑자기 멍청해졌다"로 느껴진다면 대개 모델 문제가 아니라 세션이 길어진 문제입니다.
AI에게 시키기
세션 시작 때 한 번 붙여 넣어 두면 창이 밀려도 핵심이 살아남습니다.
이 작업의 규칙과 결정사항을 DECISIONS.md 파일로 관리해줘.
- 지금까지 정한 것을 그 파일에 먼저 정리해서 써줘
- 앞으로 새로운 결정이 나올 때마다 그 파일에 한 줄씩 추가해
- 코드를 고치기 전에 항상 DECISIONS.md 를 먼저 읽고 시작해
그리고 대화가 길어졌다고 판단되면 먼저 말해줘.
그때 지금까지의 진행 상황을 새 세션에 그대로 붙여넣을 수 있는
요약으로 만들어줄 것.
핵심은 중요한 것을 대화가 아니라 파일에 두는 것입니다. 대화는 밀려나지만 파일은 다시 읽을 수 있습니다. 새 세션을 언제 시작할지 애매하면, 답이 눈에 띄게 나빠지거나 앞서 정한 규칙을 어기기 시작할 때가 신호입니다.
혼동 주의
- 메모리와 다릅니다. 컨텍스트 윈도우는 이번 요청 한 번의 한도입니다. 세션이 끝나면 그냥 사라집니다. 어제 대화를 오늘 기억하는 기능은 별도의 메모리 기능이고, 그것도 결국 내용을 창 안에 다시 넣는 방식으로 동작합니다.
- 토큰 ≠ 단어 ≠ 글자. 특히 한국어는 글자 수로 어림잡으면 크게 빗나갑니다.
- 크다 = 좋다가 아닙니다. 다 채워 넣는 것과 잘 골라 넣는 것은 다른 일이고, 대개 후자가 이깁니다. 관련 없는 자료를 잔뜩 넣으면 오히려 답이 흐려집니다.
- MCP로 도구를 붙여도 창은 그대로입니다. 도구가 읽어온 내용도 결국 창을 차지합니다. 오히려 더 빨리 찹니다.
- 압축은 창을 키우는 것이 아닙니다. 안에 든 내용을 요약해 자리를 비우는 것입니다.
