Vertex AI 기반 Llama 모델은 완전 관리형 서버리스 모델을 API로 제공합니다. Vertex AI에서 Llama 모델을 사용하려면 요청을 Vertex AI API 엔드포인트로 직접 보냅니다. Llama 모델은 관리형 API를 사용하므로 인프라를 프로비저닝하거나 관리할 필요가 없습니다.
대답을 스트리밍하여 최종 사용자의 지연 시간 인식을 줄일 수 있습니다. 스트리밍된 응답은 서버 전송 이벤트(SSE)를 사용하여 대답을 점진적으로 스트리밍합니다.
미리보기 기간에는 요금이 부과되지 않습니다. 프로덕션에 즉시 사용 가능한 서비스가 필요한 경우 자체 호스팅 Llama 모델을 사용합니다.
사용 가능한 Llama 3.1 모델
Llama 3.1은 최적화된 Transformer 아키텍처를 사용하는 자동 회귀 언어 모델입니다. 조정된 버전은 지도 조정(SFT) 및 인간 피드백 기반 강화 학습(RLHF)을 사용하여 유용성과 안전에 대한 인간의 선호사항에 맞춥니다.
Meta에서 Vertex AI에 사용할 수 있는 Llama 모델은 다음과 같습니다. Llama 모델에 액세스하려면 Model Garden 모델 카드로 이동합니다.
Llama 3.1 405B
Llama 3.1 405B는 현재까지 Meta에서 가장 강력하고 다양한 다목적 모델입니다. 공개된 최대 규모의 파운데이션 모델로서 합성 데이터 생성부터 모델 정제, 조종, 수학, 도구 사용, 다국어 번역 등 다양한 기능을 제공합니다. 자세한 내용은 Meta의 Llama 3.1 사이트를 참고하세요.
Llama 3.1 405B는 다음 사용 사례에 최적화되어 있습니다.
- 엔터프라이즈 수준 애플리케이션
- 연구 개발
- 합성 데이터 생성 및 모델 정제
Llama 모델 사용
Llama 모델 사용 요청을 보낼 때 다음 모델 이름을 사용합니다.
- Llama 3.1 405B의 경우
llama3-405b-instruct-mass
를 사용합니다.
모델 버전 간의 차이로 인해 @
기호로 시작하는 서픽스가 포함된 모델 버전을 사용하는 것이 좋습니다. 모델 버전을 지정하지 않으면 항상 최신 버전이 사용되어 모델 버전이 변경될 때 실수로 워크플로에 의도치 않은 영향을 미칠 수 있습니다.
시작하기 전에
Vertex AI에서 Llama 모델을 사용하려면 다음 단계를 수행해야 합니다. Vertex AI를 사용하려면 Vertex AI API(aiplatform.googleapis.com
)를 사용 설정해야 합니다. Vertex AI API가 사용 설정된 기존 프로젝트가 이미 있는 경우 새 프로젝트를 만드는 대신 해당 프로젝트를 사용할 수 있습니다.
파트너 모델을 사용 설정하고 사용하는 데 필요한 권한이 있는지 확인합니다. 자세한 내용은 필수 권한 부여를 참고하세요.
- 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.
- 다음 Model Garden 모델 카드 중 하나로 이동한 다음 사용 설정을 클릭합니다.
Llama 모델에 스트리밍 호출 수행
다음 샘플은 Llama 모델에 스트리밍 호출을 수행합니다.
REST
환경을 설정하면 REST를 사용하여 텍스트 프롬프트를 테스트할 수 있습니다. 다음 샘플은 요청을 게시자 모델 엔드포인트에 전송합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- LOCATION: Llama 모델을 지원하는 리전.
- MODEL: 사용할 모델 이름.
- ROLE: 메시지와 연결된 역할.
user
또는assistant
를 지정할 수 있습니다. 첫 번째 메시지는user
역할을 사용해야 합니다. 모델이user
와assistant
의 턴을 번갈아가며 작동합니다. 최종 메시지에서assistant
역할을 사용하는 경우 이 메시지의 콘텐츠에서 곧바로 대답 콘텐츠가 계속됩니다. 이를 사용하여 모델 대답의 일부를 제한할 수 있습니다. - CONTENT:
user
또는assistant
메시지의 콘텐츠(예: 텍스트). - MAX_OUTPUT_TOKENS:
대답에서 생성될 수 있는 토큰의 최대 개수. 토큰은 약 4자(영문 기준)입니다. 토큰 100개는 단어 약 60~80개에 해당합니다.
응답이 짧을수록 낮은 값을 지정하고 잠재적으로 응답이 길면 높은 값을 지정합니다.
- STREAM: 대답 스트리밍 여부를 지정하는 불리언. 대답을 스트리밍하여 최종 사용자 지연 시간 인식을 줄입니다. 대답을 스트리밍하려면
true
로 설정하고 대답을 한 번에 반환하려면false
로 설정합니다.
HTTP 메서드 및 URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions
JSON 요청 본문:
{ "model": "meta/MODEL", "messages": [ { "role": "ROLE", "content": "CONTENT" } ], "max_tokens": MAX_OUTPUT_TOKENS, "stream": true }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions"
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/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions" | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 수신됩니다.
Llama 모델에 단항 호출 수행
다음 샘플은 Llama 모델에 단항 호출을 수행합니다.
REST
환경을 설정하면 REST를 사용하여 텍스트 프롬프트를 테스트할 수 있습니다. 다음 샘플은 요청을 게시자 모델 엔드포인트에 전송합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- LOCATION: Llama 모델을 지원하는 리전.
- MODEL: 사용할 모델 이름.
- ROLE: 메시지와 연결된 역할.
user
또는assistant
를 지정할 수 있습니다. 첫 번째 메시지는user
역할을 사용해야 합니다. 모델이user
와assistant
의 턴을 번갈아가며 작동합니다. 최종 메시지에서assistant
역할을 사용하는 경우 이 메시지의 콘텐츠에서 곧바로 대답 콘텐츠가 계속됩니다. 이를 사용하여 모델 대답의 일부를 제한할 수 있습니다. - CONTENT:
user
또는assistant
메시지의 콘텐츠(예: 텍스트). - MAX_OUTPUT_TOKENS:
대답에서 생성될 수 있는 토큰의 최대 개수. 토큰은 약 4자(영문 기준)입니다. 토큰 100개는 단어 약 60~80개에 해당합니다.
응답이 짧을수록 낮은 값을 지정하고 잠재적으로 응답이 길면 높은 값을 지정합니다.
- STREAM: 대답 스트리밍 여부를 지정하는 불리언. 대답을 스트리밍하여 최종 사용자 지연 시간 인식을 줄입니다. 대답을 스트리밍하려면
true
로 설정하고 대답을 한 번에 반환하려면false
로 설정합니다.
HTTP 메서드 및 URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions
JSON 요청 본문:
{ "model": "meta/MODEL", "messages": [ { "role": "ROLE", "content": "CONTENT" } ], "max_tokens": MAX_OUTPUT_TOKENS, "stream": false }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions"
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/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/openapi/chat/completions" | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 수신됩니다.
예시
Llama 모델 사용 예시를 보려면 다음 노트북을 실행합니다.
설명 | 다음에서 열기 |
---|---|
Llama Guard를 사용하여 LLM 입력과 출력을 보호합니다. |
Colab GitHub Vertex AI Workbench |
자동 정렬(AutoSxS) 평가를 사용하여 Llama 3.1 모델을 평가합니다. |
Colab GitHub Vertex AI Workbench |
Llama 모델 리전 가용성 및 할당량
Llama 모델의 경우 모델이 제공되는 각 리전에 할당량이 적용됩니다. 할당량은 분당 쿼리 수(QPM)로 지정됩니다.
다음 표에는 각 Llama 모델에 지원되는 리전, 기본 할당량, 최대 컨텍스트 길이가 나와 있습니다.
Llama 3.1 405B
지역 | 할당량 시스템 | 지원되는 컨텍스트 길이 |
---|---|---|
us-central1 |
60QPM | 토큰 32,000개 |
Vertex AI의 생성형 AI 할당량을 상향 조정하려면 Google Cloud 콘솔을 사용해 할당량 상향을 요청하면 됩니다. 할당량에 대한 자세한 내용은 할당량 작업을 참조하세요.