AI와 대화를 나누다 보면 이런 경험을 하게 됩니다.
분명히 앞에서 말했는데 모르는 것처럼 답하거나,
오래된 대화에서는 맥락이 흐릿해지는 느낌.
AI는 대화를 기억하지 않습니다. 읽을 뿐입니다.
LLM은 대화를 저장하는 것이 아니라,
매 응답마다 지금까지의 대화 전체를 토큰으로 변환해 다시 읽고 답합니다.
이 읽을 수 있는 범위를 컨텍스트 윈도우(context window)라고 합니다.
사람의 기억은 시간이 지날수록 흐릿해지고,
감정이 실린 것일수록 더 오래 남습니다.
AI에게는 그런 가중치가 없습니다.
컨텍스트 윈도우 안에 있으면 어제 한 말이나 방금 한 말이나 동등하게 읽힙니다.
범위 안에 있으면 "기억하는 것처럼" 보이고,
범위를 벗어나면 "잊어버린 것처럼" 보입니다.
기억의 문제가 아니라, 읽기의 범위 문제입니다.
컨텍스트 윈도우는 무한하지 않습니다.
대화가 쌓일수록 토큰을 소모하고,
한계에 가까워지면 입력 비용이 올라가고 응답 속도도 느려집니다.
API 수준에서 컨텍스트 한계를 초과하면
자동으로 오래된 내용이 잘려나가는 것이 아니라,
요청 자체가 오류로 처리됩니다.
ChatGPT UI처럼 서비스 레이어에서 자체적으로 처리하는 경우는 다르지만,
API를 직접 다루는 개발자라면 이 부분을 명확히 인식해야 합니다.
단순한 Q&A라면 크게 문제가 없습니다.
하지만 장기 작업, 코드 리뷰, 기획 논의처럼
맥락이 누적되어야 하는 작업에서는 이것이 실질적인 문제입니다.
초반에 정한 방향, 제약 조건, 예외 처리 기준이
대화가 길어질수록 점점 뒤로 밀려나기 때문입니다.
이를 해결하기 위한 기술 중 하나가 Compaction입니다.
대화 전체를 AI가 스스로 압축해서, 핵심 상태와 맥락만 남긴 새로운 형태로 만드는 것입니다.
OpenAI는 최근 Responses API에서 이 기능을 공식 지원하기 시작했습니다.
기존 Chat Completions API와는 별개로,
Responses API의 context_management 파라미터에 compact_threshold를 설정하면
컨텍스트가 임계치를 넘는 순간 서버가 자동으로 압축을 실행하고,
그 결과물을 같은 스트림 안에 이어붙이는 방식입니다.
별도의 /responses/compact 엔드포인트를 직접 호출해 명시적으로 제어하는 것도 가능합니다.
Compaction은 에이전트 시대에 특히 중요합니다.
사람이 중간에 개입하지 않고 AI가 긴 작업을 자율적으로 이어가려면,
컨텍스트를 스스로 관리할 수 있어야 합니다.
Compaction은 그 기반 기술 중 하나입니다.
여기서 중요한 점이 있습니다.
압축된 결과물은 사람이 읽을 수 없습니다.
OpenAI 공식 문서는 이를 "opaque and not intended to be human-interpretable"로 명시합니다.
무엇을 살리고 무엇을 버렸는지 우리는 알 수 없습니다.
AI가 판단한 것입니다.
인간의 기억은 중요한 것을 더 오래, 더 선명하게 남깁니다.
AI의 압축은 모델이 중요하다고 판단한 것을 남깁니다.
그 기준이 우리의 기준과 같다고 보장할 수 없습니다.
내가 중요하게 여긴 제약 조건이,
AI의 판단에서는 부수적인 정보로 처리될 수 있습니다.
압축 이후 AI의 행동이 미묘하게 달라졌다면,
그 이유를 추적하기가 쉽지 않습니다.
실무에서 이것은 결과물에 생각보다 큰 차이를 만듭니다.
AI와의 작업이 길어질수록,
초반에 설정한 맥락이 압축 과정에서 희석될 수 있습니다.
중요한 제약 조건, 결정 배경, 예외 처리 기준은
대화 흐름 속에서 사라질 수 있습니다.
그래서 긴 작업일수록 핵심 컨텍스트를 주기적으로 다시 명시하는 것이 중요합니다.
AI가 기억해줄 거라 믿는 것이 아니라,
AI가 계속 중요한 맥락을 읽을 수 있는 상태를 유지하는 것입니다.
저는 중요한 작업을 시작할 때 항상 맥락을 명시적으로 정리해서 전달합니다.
기술 스택, 결정 배경, 지켜야 할 원칙.
대화가 길어졌다면 다시 한번 상기시킵니다.
기억을 기대하는 것이 아니라, 읽히는 상태를 설계하는 것입니다.
AI와 일하는 방식을 다시 생각하게 됩니다.
기억은 AI가 아니라 사람의 몫입니다.
그리고 그 기억을 어떻게 AI에게 전달하느냐가
결과물의 질을 결정합니다.
'일과 생각' 카테고리의 다른 글
| CTO에서 CTSO로, 이사회에서 새로운 역할을 제안받았습니다. (0) | 2026.03.06 |
|---|---|
| 경영진으로 4년, 창업자로 1년을 보내며 배운 사업의 3요소 (0) | 2026.03.05 |
| AI 시대일수록 기술 리더가 직접 코드를 짜야 하는 이유 (0) | 2026.03.04 |
| AI-First 개발에서 기술 리더는 주니어 개발자를 어떻게 성장시킬 것인가 (0) | 2026.03.03 |
| 프롬프트를 잘 쓰는 것만큼 중요한 컨텍스트 (2) | 2026.03.02 |