Documentation Index
Fetch the complete documentation index at: https://docs.aihubmix.com/llms.txt
Use this file to discover all available pages before exploring further.
Prompt Caching은 모델 추론 비용을 줄이는 데 사용되는 중요한 메커니즘입니다. 이전에 처리된 프롬프트 콘텐츠를 캐싱함으로써, 후속 요청에서 재사용할 수 있어, 중복 계산을 줄이고, 비용을 절감하며, 응답 효율성을 향상시킬 수 있습니다.
prompt caching이 활성화된 요청을 보내면, 시스템은 최근 쿼리에서 프롬프트 접두사가 캐시되었는지 확인합니다. 발견되면 캐시를 사용하여 처리 시간과 비용을 줄입니다; 그렇지 않으면 전체 프롬프트를 처리하고 응답이 시작된 후 접두사를 캐시합니다. 이는 다음 시나리오에서 특히 유용합니다:
- 많은 예시를 포함하는 프롬프트
- 광범위한 컨텍스트 또는 배경 정보
- 일관된 지시가 있는 반복 작업
- 긴 다중 턴 대화
핵심 메커니즘
다른 모델 공급자는 캐싱에 대해 다양한 지원을 합니다:
자동 캐싱
자동 캐싱은 추가 구성이 필요하지 않으며; 시스템이 자동으로 재사용 가능한 콘텐츠를 식별하고 캐싱하며, OpenAI, DeepSeek 등의 모델에 적용됩니다.
OpenAI
- 최소 프롬프트 길이: 1024 토큰
- 비용: 캐시에 쓰기는 무료; 캐시에서 읽기는 원래 가격의 0.25배에서 0.5배
Gemini
- 암시적 컨텍스트 캐싱이 기본적으로 활성화되어 있으며, 수동 구성 없이 캐싱이 자동으로 효과적입니다.
- 캐싱은 콘텐츠, 모델 및 파라미터가 동일할 때만 효과적입니다; 차이가 있으면 새 요청으로 처리되며 캐시에 적중하지 않습니다.
- 캐시 유효 기간은 개발자가 설정하며, 설정하지 않을 수도 있습니다. 지정하지 않으면 기본적으로 1시간입니다. 최소 또는 최대 기간 제한이 없으며, 비용은 캐시된 토큰 수와 캐시 기간에 따라 다릅니다.
DeepSeek / Grok / Moonshot / Groq
- 비용: 캐시에 쓰기는 무료이거나 동일한 가격이며, 캐시에서 읽기는 원래 가격보다 낮습니다
Claude 모델 디스플레이 캐싱
cache_control을 통해 캐시 위치를 수동으로 지정해야 합니다
- 캐싱 세분화에 대한 세밀한 제어가 가능합니다
- Anthropic Claude 모델에 적용됩니다
OpenAI 호환 인터페이스
system, user (이미지 포함), tools에서 cache_control 필드를 사용하여 캐싱 중단점을 설정할 수 있습니다. 다음 예시는 주요 구조만 표시합니다:
System 메시지 캐싱 (기본 5분 TTL):
{
"model": "claude-opus-4-5",
"messages": [
{
"role": "system",
"content": [
{"type": "text", "text": "You are an AI assistant"},
{
"type": "text",
"text": "(long context)",
"cache_control": {"type": "ephemeral"}
}
]
},
{
"role": "user",
"content": [{"type": "text", "text": "Hello"}]
}
]
}
User 메시지 캐싱 (1시간 TTL):
{
"model": "claude-opus-4-5",
"messages": [
{
"role": "system",
"content": [{"type": "text", "text": "You are an AI assistant"}]
},
{
"role": "user",
"content": [
{
"type": "text",
"text": "(long context)",
"cache_control": {"type": "ephemeral", "ttl": "1h"}
},
{"type": "text", "text": "Hello"}
]
}
]
}
이미지 메시지 캐싱:
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {"detail": "auto", "url": "data:image/jpeg;base64,/9j/4AAQ..."},
"cache_control": {"type": "ephemeral"}
},
{"type": "text", "text": "What's this?"}
]
}
Tool 정의 캐싱:
cache_control을 tool 객체의 최상위 수준 (type 및 function과 동일한 수준)에 배치합니다:
{
"tools": [{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get current weather for a location",
"parameters": {
"type": "object",
"properties": {"city": {"type": "string"}},
"required": ["city"]
}
},
"cache_control": {"type": "ephemeral", "ttl": "1h"}
}]
}
Anthropic 호환 인터페이스
curl https://aihubmix.com/v1/messages \
-H "content-type: application/json" \
-H "x-api-key: $AIHUBMIX_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-4-6",
"max_tokens": 1024,
"system": [
{
"type": "text",
"text": "You are an AI assistant tasked with analyzing literary works. Your goal is to provide insightful commentary on themes, characters, and writing style.\n"
},
{
"type": "text",
"text": "<the entire contents of Pride and Prejudice>",
"cache_control": {"type": "ephemeral"}
}
],
"messages": [
{
"role": "user",
"content": "Analyze the major themes in Pride and Prejudice."
}
]
}'
# Call the model again with the same input until the caching checkpoint
curl https://aihubmix.com/v1/messages # rest of input
캐싱 기간
- 기본값: 5분
- 선택 사항: 1시간 (“ttl”: “1h”)
자세한 내용은 다음을 참조하세요: Claude Prompt Caching
사용 권장 사항
- 안정적인 접두사 유지
고정된 콘텐츠를 프롬프트의 시작 부분에 배치하세요. 권장 구조:
[System Settings / Long Text / RAG Data]
[User Question (Variable Part)]
- 대형 텍스트 캐싱
다음 콘텐츠를 우선적으로 캐싱하세요:
- RAG 데이터
- 긴 텍스트
- CSV / JSON 데이터
- 역할 설정
- TTL 제어
- 짧은 세션 → 5분
- 긴 세션 → 1시간 (더 비용 효율적)
- 캐시 쓰기 감소
자주 변경되는 콘텐츠가 캐시에 들어가지 않도록 피하세요. 타임스탬프, 사용자 입력 변수, 고빈도 변경 데이터 등을 캐싱하지 마세요.
마지막 업데이트: 2026-06-01