Claude Platform Docs
MensagensClaude em plataformas de nuvem

Claude no Amazon Bedrock (Opus 4.6 e anteriores)

A integração legada do Amazon Bedrock para modelos Claude, usando as APIs InvokeModel e Converse com identificadores de modelo versionados por ARN.

Chamar o Claude através do Bedrock difere ligeiramente de como você chamaria o Claude diretamente na Claude API. Este guia orienta você na realização de uma chamada de API ao Claude no Bedrock usando um dos SDKs de cliente da Anthropic.

Observe que este guia pressupõe que você já se inscreveu em uma conta AWS e configurou o acesso programático.

Instalar e configurar a AWS CLI

  1. Instale uma versão da AWS CLI igual ou mais recente que a versão 2.13.23.
  2. Configure suas credenciais da AWS usando o comando AWS configure (consulte Configurar a AWS CLI) ou encontre suas credenciais navegando até "Command line or programmatic access" no seu painel da AWS e seguindo as instruções na janela modal.
  3. Verifique se suas credenciais estão funcionando:
AWS CLI
aws sts get-caller-identity

Instalar um SDK para acessar o Bedrock

Os SDKs de cliente da Anthropic oferecem suporte ao Bedrock. Você também pode usar diretamente um SDK da AWS como o boto3.

pip install -U "anthropic[bedrock]"

Acessando o Bedrock

Assinar os modelos da Anthropic

Acesse o AWS Console > Bedrock > Model Access e solicite acesso aos modelos da Anthropic. Observe que a disponibilidade dos modelos da Anthropic varia por região. Consulte a documentação da AWS para obter as informações mais recentes.

IDs de modelo da API

Os termos de ciclo de vida (Descontinuado, Desativado) são definidos em Descontinuações de modelos. As datas de ciclo de vida em plataformas operadas por parceiros são definidas pelo parceiro e podem diferir do cronograma da Claude API. Para a data de desativação atual de qualquer modelo no Amazon Bedrock, consulte a página de ciclo de vida de modelos do Amazon Bedrock.

A AWS oferece os modelos Claude mais recentes por meio de "cross-region inference" (inferência entre regiões) em vez de throughput sob demanda. Para esses modelos, uma requisição que passa o ID do modelo base falha com um erro HTTP 400 como o seguinte:

Invocation of model ID anthropic.claude-sonnet-4-5-20250929-v1:0 with on-demand throughput isn't supported. Retry your request with the ID or ARN of an inference profile that contains this model.

Para invocar esses modelos, passe um "inference profile" (perfil de inferência) em vez do ID do modelo base. O ID do perfil de inferência é o ID do modelo base com um prefixo de uma coluna marcada com "Sim" na tabela a seguir, por exemplo . Você também pode passar o ARN completo do perfil de inferência, no formato arn:aws:bedrock:{region}:{account-id}:inference-profile/{inference-profile-id}. Para a lista oficial da AWS de perfis de inferência disponíveis, consulte Regiões e modelos compatíveis com perfis de inferência. Para saber como os prefixos afetam o roteamento e os preços, consulte a seção Endpoints globais versus regionais.

ModelBase Bedrock model IDglobaluseujpapac
Claude Opus 4.6YesYesYesYesYes
Claude Opus 4.5YesYesYesNoNo
Claude Opus 4.1 (deprecated)NoYesNoNoNo
Claude Sonnet 4.6YesYesYesYesNo
Claude Sonnet 4.5 (deprecated)YesYesYesYesNo
Claude Sonnet 4 (deprecated)YesYesYesNoYes
Claude Haiku 4.5YesYesYesNoNo

Listar modelos disponíveis

Os exemplos a seguir mostram como imprimir uma lista de todos os modelos Claude disponíveis através do Bedrock:

import boto3

bedrock = boto3.client(service_name="bedrock")
response = bedrock.list_foundation_models(byProvider="anthropic")

for summary in response["modelSummaries"]:
    print(summary["modelId"])

Fazendo requisições

Os exemplos a seguir mostram como gerar texto com o Claude no Bedrock:

from anthropic import AnthropicBedrock

client = AnthropicBedrock(
    # Autentique fornecendo as chaves abaixo ou use os provedores de credenciais padrão da AWS, como
    # usando ~/.aws/credentials ou as variáveis de ambiente "AWS_SECRET_ACCESS_KEY" e "AWS_ACCESS_KEY_ID".
    aws_access_key="<access key>",
    aws_secret_key="<secret key>",
    # Credenciais temporárias podem ser usadas com aws_session_token.
    # Leia mais em https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html.
    aws_session_token="<session_token>",
    # aws_region altera a região da AWS para a qual a requisição é feita. Se não for fornecida, o SDK lê
    # AWS_REGION / AWS_DEFAULT_REGION, depois a região configurada para sua sessão boto3 ou perfil da AWS
    # (incluindo ~/.aws/config), e lança ValueError se nenhuma região puder ser resolvida.
    aws_region="us-west-2",
)

message = client.messages.create(
    model="global.anthropic.claude-opus-4-6-v1",
    max_tokens=256,
    messages=[{"role": "user", "content": "Hello, world"}],
)
print(message.content)

Consulte os SDKs de cliente para mais detalhes, e a documentação oficial do Bedrock.

Autenticação com bearer token

Você pode se autenticar no Bedrock usando "bearer tokens" (tokens de portador) em vez de credenciais da AWS. Isso é útil em ambientes corporativos nos quais as equipes precisam de acesso ao Bedrock sem gerenciar credenciais da AWS, funções do IAM ou permissões no nível da conta.

A abordagem mais simples é definir a variável de ambiente AWS_BEARER_TOKEN_BEDROCK, que o SDK detecta automaticamente ao resolver credenciais a partir do ambiente.

Para fornecer um token programaticamente:

from anthropic import AnthropicBedrock

client = AnthropicBedrock(
    api_key="your-bearer-token",
    aws_region="us-west-2",
)

message = client.messages.create(
    model="us.anthropic.claude-sonnet-4-5-20250929-v1:0",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello!"}],
)
print(message.content)

Registro de atividades

O Bedrock fornece um serviço de registro de invocações que permite registrar os prompts e as conclusões associados ao seu uso.

A Anthropic recomenda que você registre sua atividade em uma base contínua de pelo menos 30 dias para entender sua atividade e investigar qualquer possível uso indevido.

Suporte a recursos

Para a lista completa de recursos com disponibilidade no Amazon Bedrock, consulte a Visão geral dos recursos.

Destaques dos recursos suportados

Recursos não suportados

Suporte a PDF no Bedrock

O suporte a PDF está disponível no Bedrock tanto através da Converse API quanto da InvokeModel API. Para informações detalhadas sobre as capacidades e limitações do processamento de PDF, consulte Suporte a PDF no Amazon Bedrock.

Considerações importantes para usuários da Converse API:

  • A análise visual de PDF (gráficos, imagens, layouts) requer que as citações estejam habilitadas
  • Sem citações, apenas a extração básica de texto está disponível
  • Para controle total sem citações forçadas, use a InvokeModel API

Mensagens do sistema no meio da conversa no Bedrock

As mensagens do sistema no meio da conversa estão disponíveis pela InvokeModel API para Claude Fable 5.1, Claude Fable 5, Claude Opus 5.5, Claude Opus 5, Claude Opus 4.8, Claude Sonnet 5.5 e Claude Haiku 5.5. Conforme descrito na nota em IDs de modelo da API, essas solicitações são atendidas pela mesma infraestrutura do endpoint Claude no Amazon Bedrock. Nenhum cabeçalho beta é necessário para mensagens do sistema no meio da conversa. Este recurso não está disponível no Claude Sonnet 5. Use o campo system de nível superior em vez disso. Ele não está disponível para os modelos versionados por ARN na tabela de modelos desta página.

Uma mensagem role: "system" também pode definir output_config.effort para alterar o esforço no meio da conversa no Claude Fable 5.1 e no Claude Opus 5.5. Isso está em beta: adicione mid-conversation-output-config-2026-07-01 ao array anthropic_beta no corpo da requisição. Sem esse valor, ou no Claude Fable 5, Claude Opus 5 ou Claude Opus 4.8, a requisição retorna um erro 400: messages.N.output_config: Extra inputs are not permitted. No erro, N é o índice da mensagem system em messages.

Para usuários da Converse API: a Converse API aceita instruções do sistema por meio de seu parâmetro system de nível superior. Para adicionar instruções do sistema no meio da conversa, use a InvokeModel API.

Janela de contexto

Claude Fable 5.1, Claude Fable 5, Claude Opus 5.5, Claude Opus 5, Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Sonnet 5.5, Claude Sonnet 5, Claude Sonnet 4.6 e Claude Haiku 5.5 têm uma "context window" (janela de contexto) de 1M de tokens no Amazon Bedrock. Outros modelos Claude, incluindo Sonnet 4.5 (descontinuado) e Sonnet 4 (descontinuado), têm uma janela de contexto de 200k tokens.

O Bedrock limita os payloads de requisição a 20 MB. Ao enviar documentos grandes ou muitas imagens, você pode atingir esse limite antes do limite de tokens.

Endpoints globais versus regionais

A partir do Claude Sonnet 4.5 e de todos os modelos futuros, o Bedrock oferece dois tipos de endpoint:

  • Endpoints globais: roteamento dinâmico para disponibilidade máxima
  • Endpoints regionais: roteamento de dados garantido por regiões geográficas específicas

Os endpoints regionais incluem um acréscimo de 10% no preço em relação aos endpoints globais.

Quando usar cada opção

Endpoints globais (recomendado):

  • Fornecem máxima disponibilidade e tempo de atividade
  • Roteiam dinamicamente as requisições para regiões com capacidade disponível
  • Sem acréscimo no preço
  • Ideais para aplicações onde a residência de dados é flexível

Endpoints regionais (CRIS):

  • Roteiam o tráfego através de regiões geográficas específicas
  • Necessários para requisitos de residência de dados e conformidade
  • Disponíveis para EUA, UE, Japão e Ásia-Pacífico
  • O acréscimo de 10% no preço reflete os custos de infraestrutura para capacidade regional dedicada

Implementação

Usando endpoints globais (padrão para Opus 4.6, Sonnet 4.6 e Sonnet 4.5 (descontinuado)):

Os IDs de modelo do Claude Opus 4.6, Sonnet 4.6 e Sonnet 4.5 (descontinuado) já incluem o prefixo global.:

from anthropic import AnthropicBedrock

client = AnthropicBedrock(aws_region="us-west-2")

message = client.messages.create(
    model="global.anthropic.claude-opus-4-6-v1",
    max_tokens=256,
    messages=[{"role": "user", "content": "Hello, world"}],
)

Usando endpoints regionais (CRIS):

Para usar endpoints regionais, substitua o prefixo global. por um prefixo regional, como us.:

from anthropic import AnthropicBedrock

client = AnthropicBedrock(aws_region="us-west-2")

# Usando endpoint regional dos EUA (CRIS)
message = client.messages.create(
    model="us.anthropic.claude-opus-4-6-v1",  # Regional prefix
    max_tokens=256,
    messages=[{"role": "user", "content": "Hello, world"}],
)

Recursos adicionais

Was this page helpful?