O pagamento por uso flexível (Flex PayGo) é uma opção econômica para acessar modelos do Gemini em cargas de trabalho não críticas que podem tolerar tempos de resposta mais longos e limitação mais alta. O Flex PayGo oferece um desconto de 50% em comparação com o Standard PayGo.
Quando usar o Flex PayGo
O Flex PayGo é ideal para tarefas síncronas, tolerantes à latência e não críticas que não são sensíveis ao tempo. Confira alguns exemplos de casos de uso:
- Análise off-line de arquivos de texto, documentos, imagens, áudio e vídeo
- Avaliação da qualidade do modelo
- Anotação e rotulagem de dados
- Tradução de documentos
- Como criar um catálogo de produtos
Modelos e locais compatíveis
Os seguintes modelos do Gemini em prévia são compatíveis com o Flex PayGo apenas no endpoint global. O Flex PayGo não é compatível com endpoints regionais ou multirregionais.
Limite de payload da solicitação
As solicitações do Flex PayGo têm um limite total de tamanho de payload de 20 MB. Para payloads maiores que 20 MB, forneça um URI do Cloud Storage.
Usar o Flex PayGo
Para enviar solicitações à API Gemini usando o Flex PayGo,
inclua o cabeçalho X-Vertex-AI-LLM-Shared-Request-Type na sua
solicitação. Você pode usar o Flex PayGo de duas maneiras:
- Use a cota de capacidade de processamento provisionada (se disponível) e depois o Flex PayGo.
- Use somente o Flex PayGo.
As solicitações que usam o Flex PayGo têm uma latência esperada maior do que o PayGo padrão.
É possível definir o tempo limite da solicitação em até 30 minutos.
Usar o Flex PayGo com o PT como padrão
Para usar qualquer cota de PT disponível antes de usar o
Flex PayGo, inclua o cabeçalho
X-Vertex-AI-LLM-Shared-Request-Type: flex nas suas solicitações, conforme mostrado nos
exemplos a seguir.
Python
Instalar
pip install --upgrade google-genai
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA generativa com a Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
Inicialize seu cliente de IA generativa para usar o Flex PayGo. Depois de realizar essa etapa, não será necessário fazer mais ajustes no código para interagir com a API Gemini usando o Flex PayGo no mesmo cliente.
from google import genai from google.genai.types import HttpOptions client = genai.Client( vertexai=True, project='your_project_id', location='global', http_options=HttpOptions( api_version="v1", headers={ "X-Vertex-AI-LLM-Shared-Request-Type": "flex" }, # timeout = 600000 # Timeout in milliseconds ) )
REST
Depois de configurar seu ambiente, use REST para testar uma solicitação de texto. O exemplo a seguir envia uma solicitação ao endpoint do modelo de editor.
Antes de usar os dados da solicitação, faça as substituições a seguir.
PROJECT_ID: o ID do projeto.MODEL_ID: o ID do modelo para o qual você quer inicializar o Flex PayGo.PROMPT_TEXT: as instruções de texto a serem incluídas no comando. JSON.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "X-Server-Timeout: 600" \
-H "X-Vertex-AI-LLM-Shared-Request-Type: flex" \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/MODEL_ID:generateContent" -d \
$'{
"contents": {
"role": "model",
"parts": { "text": "PROMPT_TEXT" }
}
}'
Você receberá uma resposta JSON semelhante a seguinte.
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "Response to sample request."
}
]
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 3,
"candidatesTokenCount": 900,
"totalTokenCount": 1957,
"trafficType": "ON_DEMAND_FLEX",
"thoughtsTokenCount": 1054
}
}
- Use o
generateContentpara solicitar que a resposta seja retornada depois de ser totalmente gerada. Para reduzir a percepção de latência ao público humano, transmita a resposta à medida que geradas usando ostreamGenerateContent. - O ID do modelo multimodal está localizado no final do URL, antes do método
Por exemplo,
gemini-2.5-flash). Este exemplo pode oferecer suporte a outros modelos de classificação. - Quando você usa um endpoint regional de API (por exemplo,
us-central1), a região do URL do endpoint determina onde a solicitação é processada. Qualquer local conflitante no caminho do recurso é ignorado.
Usar apenas o Flex PayGo
Para usar apenas o Flex PayGo, inclua os cabeçalhos
X-Vertex-AI-LLM-Request-Type: shared e
X-Vertex-AI-LLM-Shared-Request-Type: flex nas suas solicitações, conforme mostrado nos
exemplos a seguir.
Python
Instalar
pip install --upgrade google-genai
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA generativa com a Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
Inicialize seu cliente de IA generativa para usar o Flex PayGo. Depois de realizar essa etapa, não será necessário fazer mais ajustes no código para interagir com a API Gemini usando o Flex PayGo no mesmo cliente.
from google import genai from google.genai.types import HttpOptions client = genai.Client( vertexai=True, project='your_project_id', location='global', http_options=HttpOptions( api_version="v1", headers={ "X-Vertex-AI-LLM-Request-Type": "shared", "X-Vertex-AI-LLM-Shared-Request-Type": "flex" }, # timeout = 600000 # Timeout in milliseconds ) )
REST
Antes de usar os dados da solicitação, faça as substituições a seguir:
PROJECT_ID: o ID do projeto.MODEL_ID: o ID do modelo para o qual você quer inicializar o Flex PayGo.PROMPT_TEXT: as instruções de texto a serem incluídas no comando. JSON.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "X-Server-Timeout: 600" \
-H "X-Vertex-AI-LLM-Request-Type: shared" \
-H "X-Vertex-AI-LLM-Shared-Request-Type: flex" \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/MODEL_ID:generateContent" -d \
$'{
"contents": {
"role": "model",
"parts": { "text": "PROMPT_TEXT" }
}
}'
Você receberá uma resposta JSON semelhante a seguinte.
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "Response to sample request."
}
]
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 3,
"candidatesTokenCount": 900,
"totalTokenCount": 1957,
"trafficType": "ON_DEMAND_FLEX",
"thoughtsTokenCount": 1054
}
}
- Use o
generateContentpara solicitar que a resposta seja retornada depois de ser totalmente gerada. Para reduzir a percepção de latência ao público humano, transmita a resposta à medida que geradas usando ostreamGenerateContent. - O ID do modelo multimodal está localizado no final do URL, antes do método
Por exemplo,
gemini-2.5-flash). Este exemplo pode oferecer suporte a outros modelos de classificação. - Quando você usa um endpoint regional de API (por exemplo,
us-central1), a região do URL do endpoint determina onde a solicitação é processada. Qualquer local conflitante no caminho do recurso é ignorado.
Verificar o uso do Flex PayGo
É possível verificar se uma solicitação usou o Flex PayGo do tipo de tráfego na resposta, conforme mostrado nos exemplos a seguir.
Python
É possível verificar se o
Flex PayGo foi usado em uma solicitação do campo traffic_type
na resposta. Se a solicitação foi processada usando
o Flex PayGo, o campo traffic_type será definido como
ON_DEMAND_FLEX.
sdk_http_response=HttpResponse( headers=) candidates=[Candidate( avg_logprobs=-0.539712212302468, content=Content( parts=[ Part( text="""Response to sample request. """ ), ], role='model' ), finish_reason=<FinishReason.STOP: 'STOP'> )] create_time=datetime.datetime(2025, 12, 3, 20, 32, 55, 916498, tzinfo=TzInfo(0)) model_version='gemini-2.5-flash' prompt_feedback=None response_id='response_id' usage_metadata=GenerateContentResponseUsageMetadata( candidates_token_count=1408, candidates_tokens_details=[ ModalityTokenCount( modality=<MediaModality.TEXT: 'TEXT'>, token_count=1408 ), ], prompt_token_count=5, prompt_tokens_details=[ ModalityTokenCount( modality=<MediaModality.TEXT: 'TEXT'>, token_count=5 ), ], thoughts_token_count=1356, total_token_count=2769, traffic_type=<TrafficType.ON_DEMAND_FLEX: 'ON_DEMAND_FLEX'> ) automatic_function_calling_history=[] parsed=None
REST
É possível verificar se o
Flex PayGo foi usado em uma solicitação do campo trafficType
na resposta. Se a solicitação foi processada usando
o Flex PayGo, o campo trafficType será definido como
ON_DEMAND_FLEX.
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "Response to sample request."
}
]
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 3,
"candidatesTokenCount": 900,
"totalTokenCount": 1957,
"trafficType": "ON_DEMAND_FLEX",
"thoughtsTokenCount": 1054
}
}Cota extra para o Flex PayGo
Além das cotas disponíveis para solicitações de geração de conteúdo (incluindo a cota de PT para tráfego excedente), as solicitações que usam o Flex PayGo estão sujeitas à seguinte cota:
| Descrição | QPM para cada modelo de base em um projeto |
|---|---|
| Cota para cada modelo de base em um projeto que usa o Flex PayGo | 3000 |