View a markdown version of this page

Práticas recomendadas de escalabilidade e produtividade - Amazon Bedrock

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Práticas recomendadas de escalabilidade e produtividade

Este tópico explica como os limites de taxa de transferência e o agendamento funcionam nos endpoints do Amazon Bedrock e fornece as melhores práticas para escalar seus aplicativos de IA generativa.

Endpoints do Amazon Bedrock

O Amazon Bedrock oferece suporte a dois endpoints para inferência:

  • bedrock-mantle.{region}.api.aws— Suporta conclusões e respostas de bate-papo (da OpenAI) e mensagens (da Anthropic).

  • bedrock-runtime.{region}.amazonaws.com— Suporta Bedrock-native APIs (Invoke e Converse), conclusões de bate-papo e APIs de mensagens.

Para obter mais informações sobre esses endpoints e como escolher entre eles, consulteEndpoints compatíveis com o Amazon Bedrock.

Por que os dois terminais se comportam de maneira diferente

Em muitos serviços tradicionais de vários locatários, a arquitetura é projetada com base em cotas por conta para gerenciar o acesso justo a recursos compartilhados. Essa é a abordagem usada com bedrock-runtime.

Com bedrock-mantle, uma abordagem diferente é usada. Esse endpoint é arquitetado com mecanismos avançados de agendamento e filas de trabalho que oferecem distribuição justa e, ao mesmo tempo, oferecem suporte a limites de taxa de transferência inicial mais altos. Esse design também permite bedrock-mantle hospedar um amplo conjunto de modelos e oferecer toda a gama de recursos disponíveis em todo o catálogo de modelos. Na maioria dos casos, as solicitações são atendidas imediatamente. Em alguns casos, uma solicitação pode ser colocada brevemente na fila enquanto as cargas de trabalho em andamento são concluídas e a taxa de transferência fica disponível. As seções abaixo explicam como lidar com esses cenários.

endpoint fundamental: taxa de transferência e cotas

Todos os modelos bedrock-mantle compartilham um único limite rígido de 10.000 RPM por conta e por região. Há algumas diferenças na forma como a taxa de transferência e as cotas se comportam para Claude em relação a outros modelos, conforme mostrado abaixo.

  Claude 4.7+ Todos os outros modelos
Entrada TPM 10 M* Sem limite de TPM por cliente ou por modelo
Saída TPM 2M Sem limite de TPM por cliente ou por modelo
RPM 10.000 (compartilhados em todos os modelos neste endpoint) 10.000 (compartilhados em todos os modelos neste endpoint)
On-demand níveis Standard Standard, Priority, Flex (algumas exceções) — consulte as páginas de detalhes do modelo para verificar a disponibilidade
Batch Não Sim para modelos compatíveis — consulte as páginas de detalhes do modelo para verificar a disponibilidade
Capacidade reservada Nenhum Nenhum

* Seu limite de TPM de entrada depende do seu histórico de uso com o Amazon Bedrock. Verifique a página de cotas no console do Amazon Bedrock para ver sua alocação real.

endpoint bedrock-runtime: taxa de transferência e cotas

A tabela a seguir resume a taxa de transferência e as cotas para. bedrock-runtime

  Claude 4.7+ Todos os outros modelos
Entrada TPM 15 M* Varia *
Saída TPM Combinado com o Input TPM. Burndown se aplica. Nenhum. Burndown se aplica.
RPM 10.000 (compartilhados em todos os modelos) Varia *
On-demand níveis Standard Standard, Priority, Flex (algumas exceções) — consulte as páginas de detalhes do modelo para verificar a disponibilidade
Batch Não Sim para modelos compatíveis — consulte as páginas de detalhes do modelo para verificar a disponibilidade
Capacidade reservada Nenhum Tier/Provisioned Capacidade reservada

* As cotas para esses modelos variam de acordo com o uso. Consulte a página de cotas no console do Amazon Bedrock para ver suas alocações.

Entendendo as respostas de erro HTTP

HTTP: 429

Uma resposta de 429 significa que você excedeu o limite de RPM da sua conta. Reduza sua taxa de envio de solicitações. Se você precisar de uma alocação maior de RPM, solicite um aumento por meio do console de Quotas de Serviço ou entre em contato com Conta da AWS sua equipe.

HTTP 503

Uma resposta 503 significa que há um aumento na demanda por Amazon Bedrock nesta região. Você deve reduzir sua taxa de solicitações e, em seguida, tentar novamente com um recuo exponencial ou distribuir o tráfego pelas regiões.

Tratamento de erros recomendado

Erros transitórios (503 respostas ocasionais)

Implemente o recuo exponencial com instabilidade aleatória:

  • Comece com um pequeno atraso (por exemplo, 1 segundo).

  • Duplique o atraso após cada tentativa malsucedida.

  • Limite as novas tentativas a 6 tentativas.

A maioria dos AWS SDKs e bibliotecas HTTP populares fornece suporte integrado para esse padrão.

exemplo Tente novamente a configuração para bedrock-runtime (AWS SDK//boto3)
import boto3 from botocore.config import Config config = Config(retries={"total_max_attempts": 6, "mode": "standard"}) client = boto3.client("bedrock-runtime", config=config)
exemplo Tente novamente a configuração para bedrock-mantle (OpenAI SDK)
from openai import OpenAI client = OpenAI( api_key=api_key, base_url=f"https://bedrock-mantle.{region}.api.aws/v1", max_retries=6, timeout=60.0, )
exemplo Tente novamente a configuração para bedrock-mantle (Anthropic SDK)
import anthropic client = anthropic.Anthropic( api_key=api_key, base_url=f"https://bedrock-mantle.{region}.api.aws", max_retries=6, timeout=60.0, )

Erros persistentes (503 respostas persistentes)

Se você receber erros 503 contínuos, tentar novamente por si só não resolverá o problema. Sua taxa de solicitação excede a taxa de transferência disponível. Siga as seguintes etapas:

  • Reduza a taxa na qual seu aplicativo envia novas solicitações.

  • Implemente a limitação de taxa do lado do cliente ou o enfileiramento de solicitações.

  • Elimine solicitações de menor prioridade até que a taxa de transferência se recupere.

Aumentando a produtividade

Ao consumir a taxa de transferência sob demanda no bedrock-mantleendpoint, a taxa de transferência disponível aumenta com o tempo. Nem todas as solicitações dentro de sua cota têm a garantia de sucesso durante períodos de alta demanda, portanto, aumentar gradualmente é importante.

Procedimento de aceleração recomendado

  1. Comece pelo volume de solicitação desejado, por exemplo, 500 RPM.

  2. Se você receber 503 respostas, reduza sua taxa, por exemplo, em 50%.

  3. Continue reduzindo nessa taxa até atingir um estado estável em que as solicitações sejam bem-sucedidas de forma consistente.

  4. Mantenha-se nesse estado estável por um curto período, digamos 15 minutos.

  5. Aumente a produtividade novamente, por exemplo, 50%, e segure por mais 15 minutos.

  6. Repita até atingir o volume desejado.

Por exemplo, se sua meta for 2.000 RPM, mas você receber 503 erros, reduza para 1.000 RPM. Se os erros persistirem, reduza para 500 RPM. Depois que as solicitações forem bem-sucedidas de forma consistente a 500 RPM, aguarde 15 minutos e, em seguida, escale para 750, depois 1.125 e assim por diante.

As taxas de rampa não são ajustáveis. Para solicitar uma maior alocação de RPM, use o console Service Quotas.

Melhores práticas adicionais

  • Use sinalizadores de recursos para fazer a transição gradual do tráfego entre os modelos, em vez de alternar todo o tráfego de uma só vez.

  • Distribua grandes cargas de trabalho por vários minutos e considere os padrões de horário do dia para evitar períodos de pico de uso.

  • Comece a testar com pequenos lotes e escale gradualmente. Evite enviar milhares de solicitações de teste simultaneamente.

  • Para grandes processamentos de dados off-line, use a API Batch ou o Flex Tier se seu aplicativo puder processar respostas de forma assíncrona.

Disponibilidade regional e inferência entre regiões

On-demand a taxa de transferência é alocada no nível regional e varia entre as regiões. Se sua carga de trabalho for direcionada a uma única região, você poderá encontrar 503 respostas durante períodos de alta demanda. Para maximizar a disponibilidade e, se você estiver usando bedrock-runtime, useInferência global entre regiões.

Como obter ajuda

  • Planejamento da produtividade — Entre em contato com sua Conta da AWS equipe para fazer uma previsão da produtividade. Planeje uma taxa de transferência máxima de 2x a 3x durante eventos de escalabilidade.

  • Otimização de desempenho — monitore a eficiência do uso de tokens, otimize solicitações para reduzir o consumo de tokens e selecione modelos com base nos requisitos do seu caso de uso.

  • Escalonamento de suporte — Ao abrir um caso de AWS suporte para problemas de taxa de transferência, inclua o seguinte: códigos de erro específicos, IDs de solicitação, padrões de tráfego (RPM/TPM) e seu cronograma de escalonamento.

Resumo das recomendações

Cenário Recomendação
Cargas de trabalho gerais Use o bedrock-mantleendpoint sempre que possível.
Erros 503 ocasionais Tente novamente com recuo exponencial e instabilidade.
503 erros sustentados Reduza a taxa de envio de solicitações. Implemente a limitação de taxa do lado do cliente.
Erro 429 Reduza a taxa de solicitações. Solicite uma alocação maior de RPM por meio de Quotas de Serviço.
Grande processamento off-line Use a API Batch ou o Flex Tier.