검색
검색
공개 노트 검색
회원가입로그인

클로드 프롬프트 캐싱 - 인풋 캐싱을 통해 비용과 응답 시간 절감.

개념

개발자들이 API를 사용할 때 자주 사용되는 컨텍스트를 캐시할 수 있게 하는 것. 맥락을 제공하는 것이기 때문에 input에 해당함.

사용자들은 배경 지식이나 아웃풋 예시를 쉽게 제공할 수 있고, 비용을 90% 절감할 수 있게 된다. latency는 85% 절감된다. 그만큼 빠르게 응답한다는 것.

프롬프트 캐싱은 퍼블릭 베타로 클로드 3.5 소넷, 클로드 하이쿠에서 사용할 수 있다. 오퍼스에서의 지원은 곧 제공될 예정이다.

프롬프트 캐싱은 대화형 에이전트, 코딩 어시스턴트, 대형 문서 처리 등 다양한 상황에서 유용하다.

대화형 에이전트 : 긴 대화에서 비용과 응답 시간을 줄일 수 있다. 특히 긴 지시문이나 업로드 문서가 있을 때 용이하다.

코딩 어시스턴트 : 코드베이스의 요약 버전을 프롬프트에 포함시켜 자동 완성 및 코드베이스 Q&A를 개선.

대형 문서, 책, 팟캐스트 트랜스트립트 등 긴 형태의 문서들. : 프롬프트에 지식 베이스를 임베딩 함으로써 사용자들이 이를 바탕으로 질문하기 쉽게 한다.

비용

캐싱된 프롬프트의 작성 비용은 기본 입력 토큰 가격의 25% 더 비싸지만, 사용 시 비용은 10%만 차지하여 크게 저렴함.

사용방법

api에서 cache_control 을 ephemeral을 사용하여 캐싱을 할 수 있다. 밑의 예시는 오만과 편견의 전체 콘텐츠를 캐시한 것.

import anthropic

client = anthropic.Anthropic()

response = client.beta.prompt_caching.messages.create(
    model="claude-3-5-sonnet-20240620",
    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'."}],
)
print(response)

출처 : Prompt caching with Claude

공유하기
카카오로 공유하기
페이스북 공유하기
트위터로 공유하기
url 복사하기
조회수 : 611
heart
T
페이지 기반 대답
AI Chat