홍드로이드의 야매코딩

AI 대화 자동 압축 — 그 비용이 사용량 숫자엔 안 잡힙니다 본문

AI & Vibe Coding

AI 대화 자동 압축 — 그 비용이 사용량 숫자엔 안 잡힙니다

홍드로이드 2026. 9. 2. 10:44
반응형

대화가 길어져 맥락 창이 꽉 찰 것 같으면 서버가 알아서 지금까지를 요약해 이어 주는 기능이 있습니다. 내가 자르는 것보다 안전하고 편하죠. 그런데 문서를 뜯어보니 비용을 재는 사람이 반드시 알아야 할 함정이 하나 있더군요 — 요약하는 데 든 토큰이 응답 맨 위의 사용량 숫자에는 안 들어갑니다. 그 숫자로 정산해 왔다면 지금까지 계산이 어긋나 있었을 수 있습니다.

📌 30초 요약

  • ★★맨 위 사용량 숫자엔 압축 비용이 빠져 있습니다 — 회차별로 합산해야 합니다.
  • ★요약 앞쪽은 다음 요청에서 통째로 사라집니다.
  • ★사고 기록은 요약 뒤로 못 넘어갑니다 — 되돌려 넣으면 거절됩니다.
  • ⚠️ 내가 요약 지시문을 쓰면 기본 안내문이 대체됩니다 — 보태지는 게 아닙니다.
  • 한 요청 안에서 여러 번 일어날 수도 있습니다.
  • 지시문을 따로 캐시해 두지 않으면 압축 때마다 캐시가 깨집니다.

언제 켜지고 무엇을 버리나

동작은 단순합니다. 내가 정해 둔 입력 분량 기준선에 닿으면 요청을 처리하던 도중에 발동해서, 지금까지의 대화를 요약한 덩어리를 만들어 응답에 끼워 줍니다. 기준선은 기본이 15만 토큰이고 최소 5만 토큰 아래로는 못 내립니다.

중요한 건 그다음입니다. 그 응답을 대화에 붙여 다시 요청을 보내면 요약 덩어리보다 앞에 있던 내용이 전부 자동으로 떨어져 나갑니다. 즉 내 배열에는 옛날 메시지가 그대로 남아 있어도 모델에게는 안 보입니다. 대화가 요약 지점부터 새로 시작되는 셈이죠.

한 번만 일어나는 것도 아닙니다. 웹 검색처럼 서버가 도구를 돌리는 경우한 요청 안에서 여러 번 압축이 일어날 수 있습니다. 매 처리 회차 시작마다 기준선을 다시 재기 때문이에요. 프롬프트가 아니라 루프를 설계하라는 관점으로 보면, 이건 루프 안에 내가 안 짠 단계가 하나 더 끼어 있는 구조입니다.

그 비용이 사용량 숫자엔 안 잡힙니다

이 글의 핵심입니다. 요약을 만드는 것도 모델을 한 번 더 돌리는 일이라 당연히 토큰을 먹고, 요금에도 한도 계산에도 그대로 잡힙니다. 그런데 응답에서 사용량을 읽어 오면 이야기가 달라져요.

🚨 맨 위 숫자는 마지막 회차만 담고 있습니다

응답 맨 위의 입력·출력 토큰 값은 압축 회차를 뺀 나머지의 합입니다. 요약하느라 읽어들인 18만 토큰짜리 회차가 있어도 맨 위엔 안 보여요. 실제로 쓴 총량은 응답 안의 회차 목록을 전부 더해야 나옵니다. 대시보드나 정산 스크립트가 맨 위 값만 보고 있다면 긴 세션일수록 실제보다 적게 집계됩니다.

기대 실제
맨 위 사용량이 총액이다 압축 회차가 빠져 있습니다
압축은 공짜 부가 기능이다 요금·한도에 그대로 잡힙니다
토큰 세는 기능으로 미리 알 수 있다 거기선 압축이 안 일어납니다
요청당 한 번이다 서버 도구를 쓰면 여러 번 가능

그래서 도구별 토큰 한도를 비교해 예산을 짜 본 적이 있다면, 긴 세션 예산에는 압축 몫을 따로 얹어 두는 게 안전합니다. 미리 세어 보는 기능으로는 이 비용이 절대 안 잡히니까요.

사고 기록은 요약 뒤로 못 넘어갑니다

새 세대 모델에서는 한 가지가 더 걸립니다. 압축 전에 만들어진 사고 흔적은 요약 뒤로 안 실려 옵니다. 그 시기의 작업에 대해 모델이 가진 건 요약문 하나가 전부라는 뜻이에요.

여기서 실수하기 쉽습니다. "그럼 앞 대화 몇 개를 요약 뒤에 다시 붙여 두자"고 하면 요청이 거절됩니다. 그 흔적들은 전체 기록이 아직 있던 상태에서 만들어진 것이라 검사에 걸리거든요. 해결은 셋 중 하나입니다 — ①되돌려 넣지 말고 서버가 요약한 대로 두거나 ②되돌려 넣되 사고 흔적만 벗겨 내거나 ③문제 되는 흔적을 알아서 떨어뜨리는 설정을 켜거나. 대화 기록을 손대면 왜 거절되는지 정리해 둔 편과 같은 규칙입니다.

요약 지시문을 쓰면 기본 안내문이 사라집니다

"무엇을 꼭 남겨라"를 직접 적어 줄 수 있는 자리가 있습니다. 종목이나 수치처럼 날아가면 안 되는 정보가 있을 때 유용하죠. 그런데 문서가 한 줄로 못 박습니다 — 내가 쓴 지시문은 기본 안내문에 보태지는 게 아니라 통째로 대신합니다.기본이 챙겨 주던 것들도 내가 다시 적어 넣어야 합니다. 한 줄만 적어 두면 나머지가 다 날아갈 수 있어요.

캐시도 챙겨야 합니다. 요약이 새로 생기면 그 앞에 붙어 있던 지시문까지 같이 다시 캐시에 써야 하는 상황이 됩니다. 처방은 간단해요 — 지시문 끝에 캐시 끊는 지점을 따로 하나 찍어 두면, 압축이 몇 번 일어나도 지시문은 캐시에 남고 새 요약문만 새로 쓰입니다.

자주 묻는 질문 (FAQ)

Q. 요약이 끝난 직후에 뭘 끼워 넣고 싶은데요?

그럴 수 있게 요약만 만들고 거기서 멈추는 설정이 있습니다. 응답이 요약 하나만 담고 끝나요. 그다음 그 요약을 대화에 붙이고 멈춤 설정 없이 한 번 더 요청하면 이어집니다. 중간에 안내 메시지를 넣고 싶을 때 쓰는 방식입니다.

Q. 흐르듯 받으면 요약도 조금씩 오나요?

아닙니다. 요약 덩어리는 한 번에 통째로 도착합니다. 글자가 흘러나오는 다른 블록과 달라요. 그래서 요약이 만들어지는 동안 화면이 멈춘 것처럼 보일 수 있으니, 안내 문구를 따로 띄워 주는 편이 좋습니다.

Q. 지금 바로 실무에 써도 되나요?

아직 시험 단계이고 별도 표시를 켜야 씁니다. 주요 클라우드 쪽에서도 같은 조건이에요. 무보관 방식과는 일부 모델을 빼면 같이 쓸 수 있습니다. 규제 요건이 있다면 대상 모델을 먼저 확인하세요.

Q. 내가 직접 요약하는 것보다 나은가요?

대개 낫습니다. 내가 잘라내면 남긴 부분의 사고 흔적이 무효가 되지만, 서버 쪽 정리는 그 검사에 안 걸립니다. 다만 비용 집계와 요약 지시문 대체 이 둘만 챙기면 됩니다.

✨ 정리하면

긴 대화를 다루는 가장 안전한 방법이 맞습니다. 다만 넷은 알고 쓰세요 — 비용은 회차를 합산해서 재고, 요약 앞쪽은 사라진다고 가정하고, 사고 흔적은 되돌려 넣지 말고, 요약 지시문을 쓸 거면 기본이 챙기던 것까지 직접 적을 것. 그리고 지시문에 캐시 지점 하나만 더 찍어 두면 값도 아낍니다. 비용과 권한을 함께 설계하는 흐름은 AI 지출 관리 허브에 정리해 두었습니다.

출처: Claude 공식 문서 「압축」 (2026-09-02 열람). 시험 단계 기능이며 기준선 기본값·최솟값과 지원 범위는 2026년 기준으로 변동될 수 있습니다.

반응형
Comments