큰 컨텍스트 창을 신뢰하지 마라
1 week ago
10
- LLM의 컨텍스트 창은 모델이 예리하게 작동하는 스마트 구간과 주의력이 떨어져 앞선 지시를 잊기 시작하는 둔한 구간으로 나뉠 수 있음
- 구분점은 약 100k 토큰 주변에 있으며, 광고되는 컨텍스트 창 크기가 커도 실제 작업 가능 범위를 그대로 의미하지 않음
- 코딩 에이전트는 파일 읽기, 긴 디버깅, 큰 테스트 실행만으로도 빠르게 토큰을 소모해 100k 토큰에 도달할 수 있음
- RULER와 Chroma의 context rot 보고서는 유효 컨텍스트가 광고 수치의 일부이며, 창을 채울수록 성능이 점진적으로 저하됨을 보임
- 긴 세션을 자동 요약하는 방식보다 직접 작성한 명세와 작은 산출물로 정보를 세션 밖에 남기는 방식이 작업을 스마트 구간에 머물게 함
컨텍스트 창의 실제 한계
- LLM 컨텍스트 창은 모델이 예리한 스마트 구간과 주의력이 떨어지는 둔한 구간으로 나뉠 수 있음
- 둔한 구간에서는 모델이 몇 분 전에 전달한 내용을 잊기 시작함
- 구분점은 약 100k 토큰 주변에 있음
- 광고되는 컨텍스트 창 크기가 커도 이 구분점이 사라지지 않음
- 코딩 에이전트는 현대적인 사용 방식에서 토큰을 빠르게 소모함
- 몇 번의 파일 읽기, 긴 디버깅 세션, 넓은 테스트 실행만으로 100k 토큰에 도달할 수 있음
- 벤더들은 200k, 1M, 2M 컨텍스트 창을 광고하지만, 이 숫자가 사용 가능한 작업 집합을 의미하지 않음
- 큰 컨텍스트 창은 대부분 마케팅 숫자에 가까움
- 그 뒤의 아키텍처는 작동하지만, 기본 주의 메커니즘이 실제로 해결하지 못하는 문제를 덮어둠
- 제품 표시 숫자는 릴리스마다 커지지만, 사용 가능한 부분은 같은 속도로 따라가지 못함
- RULER와 Chroma의 context rot 보고서는 유효 컨텍스트가 광고된 숫자의 일부임을 보임
- 컨텍스트 창을 채울수록 성능이 점진적으로 저하됨
세션을 짧게 유지하는 작업 방식
- 최신 에이전트는 긴 세션을 다루기 위해 자동 압축 기능을 갖추기 시작함
- Claude Code는 세션이 길어지면 기록을 요약하고 새로 시작하는 auto-compact를 수행함
- 이 방식은 도움이 되지만, 이미 둔한 구간에서 시간을 보낸 뒤에 작동함
- 요약 자체도 이미 성능이 저하된 모델이 생성함
- 더 나은 인계 방식은 새 세션을 열고 직접 작성한 명세를 전달하는 것임
- 직접 쓴 명세는 자동 요약보다 신호가 더 강한 인계 자료가 됨
- 앞으로 무엇이 중요한지 사람이 직접 결정할 수 있기 때문임
- 이 방식은 다음 세션이나 다음 사람이 깔끔하게 이어받을 수 있는 산출물을 남기는 breadcrumb 접근에 해당함
- obra/superpowers와 mattpocock/skills는 작은 이름 있는 산출물을 중심으로 에이전트 워크플로를 구성함
- PRD, 계획, 스킬, 하위 에이전트 인계가 이런 산출물에 해당함
- 각 산출물은 정보를 라이브 세션 밖으로 옮겨 다음 세션이 읽을 수 있게 함
- 이 방식은 작업 세션이 스마트 구간에 머무는 데 도움을 줌
- 컨텍스트 창은 예산처럼 다뤄야 함
- 실제로 도움이 되는 부분은 앞쪽 일부 청크라고 가정함
- 라이브 세션에서 written artifact로 옮긴 정보는 모델의 주의력이 다퉈야 할 대상을 줄임
-
Homepage
-
개발자
- 큰 컨텍스트 창을 신뢰하지 마라