컨텍스트 압축
이 페이지는 AI 에이전트 문맥에서 자주 쓰이는 컨텍스트 압축의 뜻과 쓰임을 고급 난이도 기준으로 정리한 AI 용어사전 항목입니다. 정의와 맥락, 관련 용어 10개, 관련 글 2개 순서로 묶었으니, 아래 설명을 먼저 읽고 연결된 개념과 글까지 이어서 보면 이해가 빨라집니다.
컨텍스트 압축(Context Compression)은 긴 대화 기록과 작업 결과를 더 짧은 요약이나 선별된 정보로 바꿔, 모델이 다음 응답에서 읽어야 할 입력을 줄이는 방법입니다. 장기 대화와 AI 에이전트가 컨텍스트 한도에 닿지 않게 관리할 때 사용합니다.
긴 기록을 어떤 방식으로 줄이는가
대화형 API는 보통 이전 사용자 메시지, 모델 답변, 도구 호출 결과를 다음 요청에 다시 보냅니다. 작업이 길어질수록 이 기록이 누적되고, 오래된 파일 내용이나 이미 끝난 검색 결과까지 매번 입력에 들어갈 수 있습니다. 컨텍스트 압축은 이전 기록에서 결정 사항, 미완료 작업, 필요한 사실, 오류와 다음 행동을 추려 짧은 형태로 남깁니다. 최근 대화는 원문으로 보존하고 오래된 구간만 요약하는 방식도 많이 씁니다.
Anthropic의 컨텍스트 윈도우 문서는 시스템 프롬프트, 메시지, 이미지, 문서, 도구 정의와 도구 결과가 모두 컨텍스트를 차지한다고 설명합니다. 입력이 길어질수록 관련 없는 기록도 함께 늘어날 수 있습니다. 이런 기록은 모델이 현재 과제에 집중하기 어렵게 만들 수 있으므로, 한도를 피하는 목적 외에도 현재 작업에 필요한 정보만 남기는 관리가 필요합니다.
Claude API의 서버 측 compaction은 입력 토큰이 설정한 기준에 도달하면 대화를 요약하고 compaction 블록을 만듭니다. 다음 요청에서 이 응답을 메시지에 붙이면 API가 해당 블록 앞의 콘텐츠를 버리고 요약부터 대화를 이어갑니다. 과거 SDK의 클라이언트 측 압축 경로를 계속 구현하기보다 서버 측 기능으로 옮기는 흐름이 권장되지만, 현재 기능 상태와 지원 범위는 도입 시점의 공식 문서를 확인해야 합니다.
회의록 50쪽을 한 쪽으로 줄이면 결정과 담당자는 남길 수 있지만, 누가 어떤 표현으로 이의를 냈는지까지 모두 보존되지는 않습니다. 나중에 정확한 문구가 필요하면 원본 기록을 따로 찾아볼 수 있어야 합니다.
요약 과정에서 무엇을 잃을 수 있는가
압축은 입력을 실제로 줄이는 대신 정보 손실 위험을 만듭니다. 요약기가 당시에는 사소해 보이던 예외 조건을 빼거나, 가능성을 확정된 결정처럼 적거나, 여러 사람의 의견을 하나로 합칠 수 있습니다. 코드 작업에서는 실패한 시도와 그 원인을 지우면 같은 실수를 반복할 수 있고, 고객 지원에서는 약속한 날짜나 환불 예외를 빠뜨리면 잘못된 안내로 이어집니다.
그래서 압축 지침에는 반드시 남겨야 할 항목을 구체적으로 적는 편이 좋습니다. 사용자의 목표, 확정된 결정, 보류된 선택, 파일 경로, 오류 메시지, 수치, 인용, 다음 단계처럼 나중에 다시 확인하기 어려운 정보를 우선합니다. 압축 전후에 핵심 질문을 던져 답이 유지되는지 확인하고, 원문이 필요한 업무라면 요약만으로 원본을 덮어쓰지 않습니다. 서버가 요약을 만들어 주더라도 어떤 내용을 보존할지 정하고 결과를 평가하는 책임은 애플리케이션에 남습니다.
선택적으로 내용을 지우는 컨텍스트 편집과도 구분해야 합니다. Anthropic의 컨텍스트 편집 문서는 오래된 도구 결과나 생각 블록을 골라 제거하는 전략을 설명합니다. 요약 기반 압축은 여러 기록의 뜻을 짧은 문장에 옮기고, 선택적 삭제는 필요 없다고 판단한 블록을 비우는 데 가깝습니다. 검색 결과 전문은 지우되 그 결과에서 확인한 결론은 요약에 남기는 식으로 두 방법을 함께 쓸 수 있습니다.
외부 기록과 RAG는 언제 필요한가
컨텍스트 압축은 현재 대화를 이어가기 위한 작업 메모에 가깝습니다. 장기간 보관해야 할 결정과 원문 증거는 파일, 데이터베이스, 감사 로그 같은 외부 기록에 따로 두는 편이 낫습니다. Anthropic의 메모리 도구 문서는 세션을 넘어 유지할 정보를 애플리케이션이 관리하는 파일에 저장하고, 필요할 때 다시 읽는 방식을 설명합니다. 외부 기록은 압축 요약보다 오래 남고 원문을 다시 열 수 있지만, 다음 응답에 자동으로 모두 들어가지는 않습니다.
RAG는 큰 지식 저장소에서 현재 질문과 관련된 조각을 검색해 프롬프트에 넣습니다. 압축은 이미 진행된 대화의 분량을 줄이고, RAG는 대화 밖 자료에서 필요한 내용을 골라 가져옵니다. 프로젝트 규정 전체를 매번 넣지 않고 질문과 관련된 조항만 검색하는 사례가 여기에 해당합니다. 대화에서 합의한 임시 결정은 압축 요약에 남기고, 사내 규정 원문은 검색 가능한 저장소에 두면 역할이 분명해집니다.
장기 실행 에이전트에서는 세 층을 함께 설계할 수 있습니다. 최근 몇 차례의 대화와 도구 결과는 원문으로 유지하고, 오래된 작업 과정은 압축하며, 최종 결정과 중요한 산출물은 외부 파일에 기록합니다. 필요할 때 RAG나 메모리 도구로 원문을 다시 가져옵니다. 압축률을 높이는 데만 집중하면 작업 맥락이 끊길 수 있습니다. 다음 행동에 필요한 사실을 빠뜨리지 않으면서 활성 컨텍스트를 작게 유지해야 합니다.
관련 용어
컨텍스트 압축와 함께 자주 언급되는 개념들입니다. 비슷한 말처럼 보여도 역할과 쓰임은 다를 수 있습니다.
관련 글
glossary에서 개념을 잡고 관련 글로 넘어가면 실제 문맥 이해가 쉬워집니다.
