Prompt Caching프롬프트 캐싱
쉽게 이해하기
LLM을 제품에 붙이면 시스템 지시문, 공통 예시, 도구 목록 같은 긴 프롬프트 앞부분이 요청마다 반복됩니다. 이 부분을 매번 처음부터 계산하면 시간이 길어지고 입력 토큰 비용이 크게 나옵니다. 프롬프트 캐싱은 바로 이 중복 계산 문제를 줄이기 위한 방법입니다. 비유로 말하면, 매번 책의 1장을 처음부터 다시 읽는 대신 책갈피를 꽂아두고 다음 번에는 그 자리부터 읽는 것입니다. 프롬프트의 앞부분이 이전 요청과 정확히 같다면, 그 구간의 “읽어둔 상태”를 재사용해 나머지 새 내용만 처리합니다. 그래서 사용자 맞춤 정보처럼 자주 바뀌는 부분은 뒤에 두고, 변하지 않는 설명과 예시는 맨 앞에 배치하는 것이 유리합니다.
작동 원리는 단순합니다. 제공업체는 요청을 받을 때 프롬프트의 초기 토큰 구간에 대해 해시를 만들고, 동일한 프리픽스를 최근 처리한 서버로 라우팅해 캐시된 전처리 상태를 조회합니다. 일반적으로 1,024토큰 이상에서 캐시가 동작하며, 프리픽스가 달라지면 캐시 미스가 납니다. 일부 서비스는 prompt_cache_key 같은 파라미터를 제공하고, 보존 정책을 통해 캐시된 프리픽스를 메모리에 수분 단위로 유지하거나, 지원 모델에서는 최대 24시간까지 확장 보존을 제공합니다.
비유와 예시
- 대화형 에이전트 운영 가이드 공유: 모든 세션이 같은 시스템 지침과 도구 정의로 시작됩니다. 사용자의 최신 질문만 뒤에 붙으므로 앞부분이 캐시에 맞아 지연이 줄어듭니다.
- 일괄 문서 요약 파이프라인: 공통 지시문과 출력 스키마가 동일하고, 문서 내용만 달라집니다. 동일 프리픽스가 반복돼 입력 토큰 비용이 절약됩니다.
- 제품 카탈로그 Q&A: 동일한 포맷의 규칙과 예시를 앞에 두고, 질의만 바꿔 여러 요청을 보냅니다. 프리픽스가 유지되어 서버가 캐시된 전처리를 재사용합니다.
한눈에 비교
| 프롬프트 캐싱 | 응답 캐싱 | 의미 기반 캐싱 | |
|---|---|---|---|
| 일치 조건 | 프리픽스 ‘정확 일치’ | 전체 요청 ‘정확 일치’ | 임베딩 ‘유사 일치’ |
| 재사용 대상 | 프리필 상태/토큰 계산 | 과거 최종 응답 | 저장된 응답 |
| 출력 변화 | 새로 생성, 동일 품질 | 과거 응답 재생 | 과거 응답 재생 |
| 실패 요인 | 다른 프리픽스 | 프롬프트 조금만 달라짐 | 의미 매칭 오판 |
| 주 용도 | 긴 공통 앞부분 많은 워크로드 | 캐시 가능한 고정 QA | FAQ/검색형 응답 재사용 |
프롬프트 캐싱은 ‘계산 상태’를 재사용해 성능을 높이고, 응답/의미 캐싱은 ‘완성된 답’을 재사용해 일치 조건과 리스크가 다릅니다.
어디서 왜 중요한가
- 대형 프롬프트 운영의 비용·지연 절감: 동일한 긴 프리픽스를 재사용할 때 지연과 입력 토큰 비용이 줄 수 있습니다.
- 프롬프트 설계 관행 변화: 고정 지침·예시를 앞에 두고, 사용자 입력은 뒤로 미루는 구조가 권장되며, cached_tokens와 히트율을 모니터링하는 실무가 자리잡습니다.
- 과금·청구 영향: 일부 제공자는 캐시 토큰에 대해 별도 과금 또는 할인과 보존 정책을 제공합니다.
- 운영 제약: 효과는 긴 프롬프트(통상 1,024토큰 이상)와 초기 토큰의 정확 일치에서만 나타나며, 앞부분의 작은 수정도 미스를 유발합니다.
자주 하는 오해
- ❌ 오해: 캐싱하면 답변도 재사용된다 → ✅ 실제: 출력은 매번 새로 생성되며, 캐싱은 프리필 계산만 건너뜁니다.
- ❌ 오해: 비슷하면 된다 → ✅ 실제: 프리픽스 ‘정확 일치’가 필요하며 임계 길이 미만이면 효과가 없습니다.
- ❌ 오해: 항상 비용을 줄인다 → ✅ 실제: 절감은 히트율과 제공자 과금 방식에 좌우됩니다.
대화에서는 이렇게
- "시스템 지침을 맨 앞으로 몰고 prompt_cache_key를 고정하면 cached_tokens가 잘 올라가요."
- "우리 배치 요약 잡은 프리픽스가 1,200토큰이라 1,024 토큰 조건은 충족합니다."
- "대시보드 cached_tokens=0이면 프리픽스가 달라진 겁니다. 템플릿 변경 내역 확인해 주세요."
함께 읽으면 좋은 용어
참고 자료
- GenCache: Generalized Context Caching for LLMs
프리픽스 기반 KV 재사용 연구 동향 개관.
- Prompt caching
정확 프리픽스 일치, 1,024토큰 조건, 보존 정책.
- Prompt caching with Azure OpenAI in Microsoft Foundry Models
요건, 라우팅 해시, 과금과 보존 정책 정리.
- Prompt caching | Generative AI on Vertex AI
Claude의 명시적 캐싱, TTL과 데이터 처리.
- Prompt Caching Explained
프롬프트·응답·의미 캐싱 차이점 직관적 해설.