Claude 응답을 스트리밍하면 최종 사용자의 지연 시간 인식을 줄일 수 있습니다. 스트리밍된 응답은 서버 전송 이벤트(SSE)를 사용하여 응답을 점진적으로 스트리밍합니다.
Claude 모델은 사용한 만큼 비용을 지불합니다. 자세한 내용은 Vertex AI 가격 책정 페이지의 Anthropic Claude 모델 섹션을 참조하세요.
사용 가능한 Anthropic Claude 모델
Anthropic Claude 모델에 액세스하려면 Model Garden으로 이동하고 Claude를 검색한 후 사용할 Claude 모델을 선택합니다. 모든 Claude 3 모델은 이미지를 처리하고 텍스트 출력을 반환하며 컨텍스트 윈도우는 200k입니다. 다음 링크를 사용하여 Vertex AI에서 사용할 수 있는 Claude 모델 카드로 이동할 수도 있습니다.
Claude 3 Sonnet
Anthropic Claude 3 Sonnet은 엔터프라이즈 워크로드의 인텔리전스와 속도 사이의 균형을 제공합니다. 저렴한 가격으로 제공되는 확장 가능한 AI를 위한 고성능 모델입니다. Claude 3 Sonnet은 다음과 같은 사용 사례에 최적화되어 있습니다.
검색 증강 생성(RAG) 및 검색 검색을 포함한 데이터 처리
제품 추천, 예측, 타겟팅된 마케팅과 같은 영업 작업
이미지의 코드 생성, 품질 관리, 광학 문자 인식(OCR)과 같은 시간 절약 작업
텍스트 출력을 반환하는 이미지 처리와 같은 Vision 작업. 또한 차트, 그래프, 기술 다이어그램, 보고서, 기타 시각적 콘텐츠에 대한 분석도 있음
Claude 3 Haiku
Anthropic Claude 3 Haiku는 Anthropic에서 사용할 수 있는 가장 빠르고 간결한 모델입니다. 쿼리와 요청에 빠르게 응답하도록 설계되었습니다. 이를 사용하여 인간 상호작용을 모방하는 AI 환경을 빌드할 수 있습니다. Claude 3 Haiku는 다음과 같은 사용 사례에 최적화되어 있습니다.
실시간 고객 상호작용 및 번역
의심스러운 행동이나 고객 요청을 포착하기 위한 콘텐츠 검토
인벤토리 관리, 구조화되지 않은 데이터에서 지식 추출과 같은 비용 절약 작업
텍스트 출력 반환을 위한 이미지 처리, 차트, 그래프, 기술 다이어그램, 보고서, 기타 시각적 콘텐츠 등의 비전 태스크
Claude 모델 사용
Anthropic SDK 또는 curl 명령어를 사용하면 다음 모델 이름으로 Vertex AI 엔드포인트에 요청을 전송할 수 있습니다.
- Claude 3 Sonnet:
claude-3-sonnet@20240229
사용 - Claude 3 Haiku:
claude-3-haiku@20240307
사용
@
기호(claude-3-sonnet
또는 claude-3-haiku
)로 시작하는 서픽스가 포함되지 않은 Anthropic Claude 3 모델 버전은 사용하지 않는 것이 좋습니다.
시작하기 전에
Vertex AI에서 Anthropic Claude 3 모델을 사용하려면 다음 단계를 수행해야 합니다. Vertex AI를 사용하려면 Vertex AI API(aiplatform.googleapis.com
)를 사용 설정해야 합니다. Vertex AI API가 사용 설정된 기존 프로젝트가 이미 있는 경우 새 프로젝트를 만드는 대신 해당 프로젝트를 사용할 수 있습니다.
Anthropic Claude 3 모델을 사용 설정하는 데 필요한 권한이 있는지 확인합니다. 자세한 내용은 필요한 권한 부여를 참조하세요.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI API.
- Anthropic Claude 모델을 사용 설정하고 프롬프트를 전송할 권한이 있는지 확인합니다. 자세한 내용은 Claude 모델 사용 설정 및 프롬프트 전송에 필요한 권한 설정을 참조하세요.
- 다음 Model Garden 모델 카드 중 하나로 이동한 다음 enable을 클릭합니다.
Anthropic SDK 사용
Anthropic Claude SDK를 사용하여 Anthropic Claude 모델에 API 요청을 수행할 수 있습니다. 자세한 내용은 다음을 참조하세요.
Anthropic Vertex SDK를 사용하여 Claude 3 모델에 스트리밍 호출
다음 코드 샘플은 Anthropic Vertex SDK를 사용하여 Anthropic Claude 3 모델에 대한 스트리밍 호출을 수행합니다.
Python
Python을 설치하거나 업데이트하는 방법은 Python용 Vertex AI SDK 설치를 참조하세요. 자세한 내용은 Python API 참고 문서를 참조하세요.
Anthropic Vertex SDK를 사용하여 Claude 3 모델에 단항 호출 수행
다음 코드 샘플은 Anthropic Vertex SDK를 사용하여 Anthropic Claude 3 모델에 단항 호출을 수행합니다.
Python
Python을 설치하거나 업데이트하는 방법은 Python용 Vertex AI SDK 설치를 참조하세요. 자세한 내용은 Python API 참고 문서를 참조하세요.
curl 명령어 사용
curl 명령어를 사용하여 Vertex AI 엔드포인트에 요청할 수 있습니다. curl 명령어는 사용하려는 지원되는 Anthropic Claude 모델을 지정합니다.
- Claude 3 Sonnet:
claude-3-sonnet@20240229
사용 - Claude 3 Haiku:
claude-3-haiku@20240307
사용
@
기호(claude-3-sonnet
또는 claude-3-haiku
)로 시작하는 서픽스가 포함되지 않은 Anthropic Claude 3 모델 버전은 사용하지 않는 것이 좋습니다.
다음 주제에서는 curl 명령어를 만드는 방법과 샘플 curl 명령어를 보여줍니다. 샘플 curl 명령어는 Claude 3 Sonnet 모델을 사용합니다.
REST
Vertex AI API를 사용하여 텍스트 프롬프트를 테스트하려면 POST 요청을 게시자 모델 엔드포인트로 전송합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- LOCATION: Anthropic Claude 모델을 지원하는 리전.
Claude 3 Sonnet은 다음 리전에서 사용할 수 있습니다.
us-central1 (Iowa)
asia-southeast1 (Singapore)
us-central1 (Iowa)
europe-west4 (Netherlands)
- MODEL: 사용할 모델 이름. Claude 3 Haiku의 경우
claude-3-haiku@20240307
을 사용합니다. Claude 3 Sonnet의 경우claude-3-sonnet@20240229
를 사용합니다. - ROLE: 메시지와 연결된 역할.
user
또는assistant
를 지정할 수 있습니다. 첫 번째 메시지는user
역할을 사용해야 합니다. Claude 모델은user
및assistant
차례가 교대로 작동합니다. 최종 메시지에서assistant
역할을 사용하는 경우 응답 콘텐츠는 해당 메시지의 콘텐츠에서 즉시 계속됩니다. 이 값을 사용하여 모델 응답의 일부를 제한할 수 있습니다. - STREAM: 응답 스트리밍 여부를 지정하는 불리언. 응답을 스트리밍하여 최종 사용 지연 시간 인식을 줄입니다. 응답을 스트리밍하려면
true
로 설정하고 응답을 한 번에 반환하려면false
로 설정합니다. - CONTENT:
user
또는assistant
메시지의 콘텐츠(예: 텍스트) - MAX_OUTPUT_TOKENS: 응답에서 생성될 수 있는 토큰의 최대 개수. 토큰은 약 3.5자입니다. 토큰 100개는 단어 약 60~80개에 해당합니다.
응답이 짧을수록 낮은 값을 지정하고 잠재적으로 응답이 길면 높은 값을 지정합니다.
- TOP_P: (선택사항) Top-P는 모델이 출력용 토큰을 선택하는 방식을 변경합니다. 토큰은 확률의 합이 Top-P 값과 같아질 때까지 확률이 가장 높은 것부터(Top-K 참조) 가장 낮은 것까지 선택됩니다. 예를 들어 토큰 A, B, C의 확률이 0.3, 0.2, 0.1이고 Top-P 값이
0.5
이면 모델이 강도를 사용해서 다음 토큰으로 A 또는 B를 선택하고 C는 후보에서 제외합니다.임의성이 낮은 응답에 낮은 값을 지정하고 임의성이 높은 응답에 높은 값을 지정합니다.
- TOP_K: (선택사항) Top-K는 모델이 출력용 토큰을 선택하는 방식을 변경합니다. Top-K가
1
이면 선택된 토큰이 모델의 어휘에 포함된 모든 토큰 중에서 가장 확률이 높다는 의미입니다(그리디 디코딩이라고도 함). 반면에 Top-K가3
이면 강도를 사용하여 가장 확률이 높은 3개 토큰 중에서 다음 토큰이 선택된다는 의미입니다.각 토큰 선택 단계에서 확률이 가장 높은 Top-K 토큰이 샘플링됩니다. 그런 다음 Top-P를 기준으로 토큰을 추가로 필터링하고 강도 샘플링을 사용하여 최종 토큰을 선택합니다.
임의성이 낮은 응답에 낮은 값을 지정하고 임의성이 높은 응답에 높은 값을 지정합니다.
HTTP 메서드 및 URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/anthropic/models/MODEL:streamRawPredict
JSON 요청 본문:
{ "anthropic_version": "vertex-2023-10-16", "messages": [ { "role": "ROLE", "content": "CONTENT" }], "max_tokens": MAX_TOKENS, "stream": STREAM }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
요청 본문을 request.json
파일에 저장하고 다음 명령어를 실행합니다.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/anthropic/models/MODEL:streamRawPredict"
PowerShell
요청 본문을 request.json
파일에 저장하고 다음 명령어를 실행합니다.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/anthropic/models/MODEL:streamRawPredict" | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 수신됩니다.
curl 명령어 예시
MODEL_ID="claude-3-sonnet@20240229"
LOCATION="us-central1"
PROJECT_ID="PROJECT_ID"
curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://${LOCATION}-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/${LOCATION}/publishers/anthropic/models/${MODEL_ID}:streamRawPredict -d \
'{
"anthropic_version": "vertex-2023-10-16",
"messages": [{
"role": "user",
"content": "Hello!"
}],
"max_tokens": 50,
"stream": true}'
Anthropic Claude 리전 가용성
Claude 3 Sonnet은 다음 리전에서 사용할 수 있습니다.
us-central1 (Iowa)
asia-southeast1 (Singapore)
us-central1 (Iowa)
europe-west4 (Netherlands)
Anthropic Claude 할당량 및 지원되는 컨텍스트 길이
Claude 3 Sonnet 및 Claude 3 Haiku의 경우 사용 가능한 리전마다 하나씩 두 개의 할당량이 있습니다. 할당량은 분당 쿼리 수(QPM) 및 분당 토큰 수(TPM)로 지정됩니다. TPM에는 입력 및 출력 토큰이 모두 포함됩니다.
Claude 3 Sonnet의 기본 할당량 한도 및 지원되는 컨텍스트 길이는 다음과 같습니다.
리전 | 기본 할당량 한도 | 지원되는 컨텍스트 길이 |
---|---|---|
us-central1 (Iowa) |
60 QPM, 50,000 TPM | 200,000 토큰 |
asia-southeast1 (Singapore) |
60 QPM, 50,000 TPM | 200,000 토큰 |
Claude 3 Haiku의 기본 할당량 한도 및 지원되는 컨텍스트 길이는 다음과 같습니다.
리전 | 기본 할당량 한도 | 지원되는 컨텍스트 길이 |
---|---|---|
us-central1 (Iowa) |
60 QPM, 50,000 TPM | 200,000 토큰 |
europe-west4 (Netherlands) |
60 QPM, 50,000 TPM | 200,000 토큰 |
Vertex AI의 생성형 AI 할당량을 상향 조정하려면 Google Cloud 콘솔을 사용해 할당량 상향을 요청하면 됩니다. 할당량에 대한 자세한 내용은 할당량 작업을 참조하세요.
Claude 모델을 사용 설정하고 프롬프트를 보내는 데 필요한 권한 설정
사용자가 Anthropic Claude 모델을 사용 설정하려면 관리자가 해당 사용자에게 소비자 조달 자격 관리자 Identity and Access Management(IAM) 역할을 부여해야 합니다. 이 역할이 부여된 모든 사용자는 Model Garden에서 Anthropic Claude 모델을 사용 설정할 수 있습니다.
사용자가 Vertex AI에서 프롬프트 요청을 하려면 관리자가 해당 사용자에게 aiplatform.endpoints.predict
권한을 부여해야 합니다. 이 권한은 Vertex AI 사용자 IAM 역할에 포함되어 있습니다. 자세한 내용은 Vertex AI 사용자 및 액세스 제어를 참조하세요.
콘솔
gcloud
-
In the Google Cloud console, activate Cloud Shell.
Model Garden에서 Anthropic Claude 모델을 사용 설정하는 데 필요한 소비자 조달 자격 관리자 역할을 부여합니다.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=PRINCIPAL --role=roles/consumerprocurement.entitlementManager
프롬프트 요청을 수행하는 데 필요한
aiplatform.endpoints.predict
권한이 포함된 Vertex AI 사용자 역할을 부여합니다.gcloud projects add-iam-policy-binding PROJECT_ID \ --member=PRINCIPAL --role=roles/aiplatform.user
PRINCIPAL
을 주 구성원 식별자로 바꿉니다. 식별자는user|group|serviceAccount:email
또는domain:domain
형식을 취합니다(예:user:cloudysanfrancisco@gmail.com
,group:admins@example.com
,serviceAccount:test123@example.domain.com
또는domain:example.domain.com
).다음을 포함하는 정책 바인딩 목록이 출력됩니다.
- members: - user:PRINCIPAL role: roles/roles/consumerprocurement.entitlementManager
자세한 내용은 단일 역할 부여 및
gcloud projects add-iam-policy-binding
을 참조하세요.