비용 최적화

KV Cache: 공간으로 시간 절약하기

대화 매 턴마다 모델은 모든 이전 Token에 대해 Attention 계산을 수행합니다. KV Cache는 이미 계산된 K/V 행렬을 캐시해 두어 다음 턴에는 새로 추가된 Token만 계산합니다.

동작 원리
비유:
캐시 없음 = 매 수업마다 교과서 전체를 처음부터 다시 쓰기
캐시 있음 = 교과서는 사진으로 저장, 오늘은 오늘 새 필기만 보기
KV Cache 없음
매 턴: System Prompt + 전체 히스토리 전량 재계산

N번째 턴 비용 = 1~N번째 턴 모든 Token의 합
KV Cache 있음
이전 Token의 K/V는 캐시됨, 이번 턴 새 Token만 계산

N번째 턴 비용 ≈ 이번 턴 추가된 Token 몇 개
턴별 비교 데모
모드:
System Prompt
중복 계산
캐시 히트
신규 계산
「다음 턴」 클릭으로 시작 · 각 블록 = 고정 Token 수, SYS는 항상 불변
0
표시된 턴 수
0T
캐시 없음 누적 계산량
0T
캐시 있음 누적 계산량
절약 비율
「캐시 없음 / 캐시 있음」을 전환하여 두 모드 효과를 비교하세요
결론: 대화 턴이 많을수록 KV Cache 절약이 커집니다. System Prompt를 변경하지 않는 것이 가장 간단하고 효과적인 최적화 방법입니다.
핵심 주의사항
System Prompt가 길수록 KV Cache의 가치가 커집니다.
5,000 Token의 System Prompt로 1,000회 대화 시 KV Cache는 총 비용의 약 80%를 절약합니다. System Prompt를 변경하지 않는 것 = 캐시 히트.
⚠️ 숨겨진 함정: 분산 추론 서버
클라우드 LLM은 일반적으로 여러 추론 서버에서 실행됩니다. 요청이 매번 다른 노드로 라우팅될 수 있으며, 그 노드에는 이전 컨텍스트 캐시가 없어 암묵적 캐시가 항상 MISS됩니다.
다음 강의 예고: 명시적 캐싱: 코드 한 줄로 캐시 히트 보장, Claude / Qwen / OpenAI 코드 예시와 히트율 시뮬레이션 비교 포함.