Usar a capacidade de processamento provisionada

Esta página explica como controlar o excesso ou ignorar a capacidade de processamento provisionada e como monitorar seu uso.

Controlar excedentes ou ignorar a capacidade de processamento provisionada

Use a API REST para controlar excedentes quando você exceder a capacidade de processamento comprada ou para ignorar a capacidade de processamento provisionada por solicitação.

Leia cada opção para determinar o que você precisa fazer para atender ao seu caso de uso.

Comportamento padrão

Se você exceder a capacidade de processamento comprada, os excedentes vão ser cobrados sob demanda e faturados de acordo com a taxa de pagamento por uso. Depois que o pedido de capacidade de processamento provisionada estiver ativo, o comportamento padrão vai ocorrer automaticamente. Não é preciso alterar o código para começar a consumir seu pedido.

Este exemplo de curl demonstra o comportamento padrão.

! curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  $URL \
  -d '{"contents": [{"role": "user", "parts": [{"text": "Hello."}]}]}'

Usar apenas a capacidade de processamento provisionada

Se você estiver gerenciando custos evitando cobranças sob demanda, use apenas a capacidade de processamento provisionada. Solicitações que excedem o valor do pedido de capacidade de processamento provisionada retornam com um erro 429.

Este exemplo de curl demonstra como usar a API REST para usar apenas a assinatura de capacidade de processamento provisionada, com excessos retornando com um erro 429.

Defina o cabeçalho X-Vertex-AI-LLM-Request-Type como dedicated.

! curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -H "X-Vertex-AI-LLM-Request-Type: dedicated" \
  $URL \
  -d '{"contents": [{"role": "user", "parts": [{"text": "Hello."}]}]}'

Usar apenas o pagamento por uso

Isso também é chamado de uso sob demanda. As solicitações ignoram a capacidade de processamento provisionada e são enviadas diretamente para o pagamento por uso. Isso pode ser útil para experimentos ou aplicativos que estão em desenvolvimento.

Este exemplo de curl demonstra como usar a API REST para ignorar capacidade de processamento provisionada e uso somente de pagamento por uso.

Defina o cabeçalho X-Vertex-AI-LLM-Request-Type como shared.

! curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -H "X-Vertex-AI-LLM-Request-Type: shared" \
  $URL \
  -d '{"contents": [{"role": "user", "parts": [{"text": "Hello."}]}]}'

Monitorar a capacidade de processamento provisionada

É possível monitorar o uso da capacidade de processamento provisionada com as métricas de monitoramento e por solicitação.

Cabeçalhos de resposta

Se uma solicitação tiver sido processada usando a capacidade de processamento provisionada, o seguinte cabeçalho HTTP está presente na resposta. Essa linha de código se aplica somente à chamada de API generateContent.

  {"X-Vertex-AI-LLM-Request-Type": "dedicated"}

Métricas

A capacidade de processamento provisionada pode ser monitorada usando um conjunto de métricas que são medidas no tipo de recurso aiplatform.googleapis.com/PublisherModel. Cada métrica pode ser filtrada com as seguintes dimensões:

  • type: input, output
  • request_type: dedicated, shared

Para filtrar uma métrica e visualizar o uso da capacidade de processamento provisionada, use o tipo de solicitação dedicated. O prefixo do caminho de uma métrica é aiplatform.googleapis.com/publisher/online_serving.

Por exemplo, o caminho completo da métrica /consumed_throughput é aiplatform.googleapis.com/publisher/online_serving/consumed_throughput.

As seguintes métricas do Cloud Monitoring estão disponíveis no recurso aiplatform.googleapis.com/PublisherModel nos modelos Gemini e têm um filtro para o uso de throughput provisionado:

Métrica Nome de exibição Descrição
/characters Caracteres Distribuição de contagem de caracteres de entrada e saída.
/character_count Contagem de caracteres Contagem de caracteres de entrada e saída acumulados.
/consumed_throughput Capacidade de processamento de caracteres Capacidade de processamento consumida (considera a taxa de burndown) em caracteres.
/model_invocation_count Contagem de invocações de modelo Número de invocações de modelo (solicitações de previsão).
/model_invocation_latencies Latências de invocação de modelo Latências de invocação de modelo (latências de previsão).
/first_token_latencies Latências do primeiro token Duração da solicitação recebida até o primeiro token retornado.
/tokens Tokens Distribuição da contagem de tokens de entrada e saída.
/token_count Contagem de tokens Contagem acumulada de tokens de entrada e saída.

Os modelos Anthropic também têm um filtro para a capacidade de processamento provisionada, mas apenas para tokens/token_count.

A seguir