TL;DR
이 글은 공통 대화 이력을 Context Cache에 유지하면서 프롬프트 끝에 일시적인 작업 지시를 붙이는 Tail Prompt 구조를 설명합니다. Cache Tree가 사용자가 고르는 영속적인 branch를 만드는 방식이라면, Tail Prompt는 시스템이 한 번의 응답 동안만 leaf를 만들고 작업이 끝나면 이를 버리는 방식입니다. 압축 작업에서는 모델이 먼저 사용자 질문에 답한 뒤 memory_store와 memory_checkpoint를 호출하고, 세션에는 정리된 checkpoint와 질문·답변만 저장합니다. 이 구조는 이력의 약 99% 캐시 적중률을 활용해 매번 전체 입력을 다시 계산하는 보조 모델 방식보다 실제 지연과 비용을 낮출 수 있지만, 응답의 주의력이 사용자 답변과 부가 작업으로 나뉘는 절충이 있습니다.
섹션별 상세
용어 해설
- 컨텍스트 캐시(Context Cache)
- — 이전 요청에서 계산한 프롬프트 접두부의 상태를 저장해 다음 요청에서 같은 토큰을 다시 처리하지 않게 하는 메커니즘입니다. 이 글에서는 대화 이력이나 프로젝트 문서가 캐시에 남아 새 작업 부분만 추가 계산되는 구조로 비용과 지연을 줄입니다.
- 캐시 트리(Cache Tree)
- — 공통된 프롬프트 접두부를 trunk로 공유하고, 서로 다른 질문이나 작업을 branch로 분기하는 캐시 구조입니다. 각 branch는 부모 캐시를 재사용하면서 새로 추가된 토큰만 계산하므로 여러 주제를 병렬 처리할 때 중복 연산을 줄입니다.
- Tail Prompt
- — 기존 프롬프트의 마지막에 일시적으로 붙이는 지시문으로, 대화 이력은 캐시에서 재사용하고 추가 지시와 사용자 질문만 새로 계산하게 합니다. 한 번의 응답이 끝나면 지시문을 버리므로 세션의 주 대화 흐름을 직접 변경하지 않습니다.
- Tail Call Optimization
- — 함수의 마지막 호출이 현재 스택 프레임을 재사용해 추가 스택 공간을 차지하지 않도록 하는 컴파일러·실행 최적화입니다. 글에서는 이 개념을 현재 Context Cache를 유지한 채 프롬프트 끝에 임시 작업을 덧붙이는 Tail Prompt의 비유로 사용합니다.
- 체크포인트(Checkpoint)
- — 대화 이력의 특정 시점을 저장해 이후 압축이나 교체 작업의 기준점으로 삼는 상태 기록입니다. 압축 시 Tail Prompt가 사라진 뒤 기존 메시지 묶음이 새 checkpoint로 대체되며, 세션에는 정리된 이력과 응답만 남습니다.
기술
- Context Cache
- LLM
- Tail Prompt
- Cache Tree
- memory_store
- memory_checkpoint
활용 사례
- IM 플랫폼의 thread별 병렬 작업
- 프로젝트 코드와 문서를 활용한 코딩 Agent
- 대화 중 선호도와 사실 추출
- 대화 이력 압축과 checkpoint 교체
- 백그라운드 감사 작업
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.
