AI 3분 소요

컨텍스트 창이 클수록 좋다는 착각: '컨텍스트 부패'의 진실

요즘 LLM 스펙 경쟁의 단골 메뉴는 컨텍스트 창 크기입니다. 10만, 100만, 이제는 1000만 토큰까지 들어간다고 자랑하는데요. 그런데 막상 긴 문서를 통째로 넣어보면 답이 영 시원찮은 경험, 다들 한 번쯤 해보셨을 겁니다. 오늘은 “컨텍스트가 크면 좋은 것 아니냐"는 직관이 왜 위험한지, 그리고 컨텍스트 부패(context rot)라는 현상의 실체를 짚어보겠습니다.

먼저 솔직하게 말씀드리면, 이 주제는 최근 30일 커뮤니티 데이터가 거의 없었습니다. 그래서 오늘 글은 실시간 화제 정리보다는, 그동안 쌓여온 연구와 실무 경험을 바탕으로 한 정리에 가깝습니다. 이 점 감안하고 읽어주시면 좋겠습니다.

큰 창에 다 넣을 수 있다 ≠ 다 읽는다

가장 흔한 오해부터 짚겠습니다. 컨텍스트 창이 100만 토큰이라는 건 “100만 토큰을 입력으로 받아줄 수 있다"는 뜻이지, “100만 토큰을 균등하게 다 활용한다"는 뜻이 아닙니다.

여기서 갈리는 게 저장 용량실제 주의력의 차이입니다. 사람으로 비유하면 이렇습니다. 책 한 권을 책상에 펼쳐놓을 수는 있어도, 한 번에 집중해서 읽는 건 몇 줄뿐입니다. LLM도 비슷합니다. 입력은 받지만, 그 안의 모든 정보에 똑같은 무게로 집중하지는 못합니다.

그래서 컨텍스트를 늘리면 늘릴수록 “넣었으니 알겠지"라는 가정이 점점 위험해집니다.

컨텍스트 부패란 무엇인가

컨텍스트 부패는 입력이 길어질수록 모델의 응답 품질이 서서히 무너지는 현상을 말합니다. 핵심은 “갑자기 한계에서 뚝 끊긴다"가 아니라, “길어질수록 조금씩 나빠진다"는 점입니다.

증상은 대략 이렇게 나타납니다.

  • 앞부분에 분명히 넣은 정보를 뒤에서 무시하거나 잊습니다
  • 긴 문맥 중간에 묻힌 핵심 사실을 놓칩니다
  • 서로 모순되는 정보가 섞이면 엉뚱하게 종합합니다
  • 답변이 점점 두루뭉술해지고 환각(없는 사실 지어내기)이 늘어납니다

중요한 건, 이게 모델이 고장 나서가 아니라는 점입니다. 입력이 길수록 관련 정보와 무관한 정보의 비율이 나빠지고, 그만큼 모델이 “어디를 봐야 하는지” 판단하기 어려워지는 구조적 문제에 가깝습니다.

‘건초더미 속 바늘’이 알려준 것

이 현상을 가장 직관적으로 보여준 게 바늘 찾기(needle in a haystack) 테스트입니다. 긴 텍스트 더미 속에 특정 문장 하나를 숨겨놓고, 모델이 그걸 찾아내는지 보는 실험인데요.

여기서 두 가지가 드러났습니다. 첫째, 찾아야 할 정보가 문맥의 중간쯤에 있을 때 정확도가 가장 많이 떨어졌습니다. 시작과 끝은 잘 기억하는데 가운데는 흐릿해지는, 이른바 “중간이 사라지는(lost in the middle)” 패턴입니다. 둘째, 단순히 한 문장을 그대로 찾는 건 잘해도, 여러 정보를 종합하거나 추론해야 하면 성능이 급격히 무너졌습니다.

즉 “긴 문맥에서 한 단어 찾기"는 쉬운 과제이고, 실제 업무에서 필요한 “긴 문맥을 이해하고 종합하기"는 전혀 다른 난이도라는 겁니다. 벤치마크에서 통과했다고 실무에서도 통한다는 보장이 없는 이유입니다.

그래서 어떻게 다뤄야 하나

결론은 “긴 컨텍스트를 쓰지 말라"가 아닙니다. “긴 컨텍스트를 믿고 던져놓지 말라"입니다. 실무에서 통하는 원칙 몇 가지를 정리하면 이렇습니다.

필요한 것만 넣기. 문서 전체를 통째로 밀어넣는 대신, 질문과 관련된 부분만 추려서 넣는 게 거의 항상 낫습니다. 검색 기반(RAG) 방식이 여전히 유효한 이유입니다.

핵심은 앞이나 끝에. 가장 중요한 지시사항이나 정보는 가운데 묻지 말고 처음이나 마지막에 배치하는 게 안전합니다.

길면 쪼개기. 한 번에 다 처리하게 하기보다, 단계로 나눠서 요약하고 그 요약을 다시 넘기는 식이 안정적입니다.

믿지 말고 검증하기. 긴 입력에서 뽑아낸 답일수록, 근거가 실제 원문에 있는지 다시 확인하는 절차가 필요합니다.

마무리

컨텍스트 창 크기는 마케팅에서 가장 부풀리기 좋은 숫자입니다. 하지만 “넣을 수 있는 양"과 “제대로 쓰는 양"은 다릅니다. 큰 창은 가능성을 넓혀주는 도구일 뿐, 품질을 보장하는 마법이 아닙니다. 여러분은 긴 문서를 AI에 통째로 던졌다가 낭패 본 경험, 있으신가요? 다음에 100만 토큰을 자랑하는 모델을 만나면, “그래서 그 100만 토큰을 정말 다 읽긴 하나요?“라고 한 번쯤 되물어보시면 좋겠습니다.

AI LLM 컨텍스트윈도우 프롬프트엔지니어링 context-rot

댓글

    댓글을 불러오는 중...