Modelos OpenAI no Amazon Bedrock a partir da Austrália com inferência global entre regiões

Modelos OpenAI disponíveis no Bedrock a partir da Austrália

A AWS anunciou que equipes australianas que trabalham com modelos OpenAI podem agora acessar as versões mais recentes diretamente pelo Amazon Bedrock. Os modelos disponíveis são o GPT-5.6 Sol, o Terra e o Luna, todos acessíveis com inferência global entre regiões (global cross-Region inference) a partir das regiões AWS da Ásia-Pacífico (Sydney) e Ásia-Pacífico (Melbourne).

O funcionamento é direto: a aplicação faz a chamada ao endpoint do Amazon Bedrock Runtime em Sydney ou Melbourne, e o próprio Bedrock se encarrega de rotear a requisição para uma região comercial AWS suportada. Isso amplia o acesso a um pool de capacidade maior sem que as aplicações precisem gerenciar o roteamento de destino manualmente.

Cada modelo tem um perfil de uso bem definido:

  • GPT-5.6 Sol: voltado para cargas de trabalho exigentes de raciocínio, codificação e agentes autônomos.
  • Terra: equilibra desempenho e custo para uso em produção no dia a dia.
  • Luna: oferece inferência rápida e econômica para aplicações de alto volume e sensíveis à latência.

Os três modelos aceitam entradas de texto e imagem, geram texto e suportam janelas de contexto de até 1 milhão de tokens.

Perfis de inferência global GPT-5.6

A tabela abaixo lista os três IDs de perfil global e as regiões de origem australianas cobertas:

  • global.openai.gpt-5.6-sol
  • global.openai.gpt-5.6-terra
  • global.openai.gpt-5.6-luna

As regiões de origem são Ásia-Pacífico (Sydney) — ap-southeast-2 — e Ásia-Pacífico (Melbourne) — ap-southeast-4. As requisições são roteadas para regiões comerciais AWS suportadas. Vale destacar que a disponibilidade dos perfis pode mudar; consulte a documentação de suporte à inferência entre regiões antes de colocar em produção.

Pré-requisitos

Antes de começar, é recomendado seguir o post sobre GPT-5.6 para configurar os seguintes itens:

  • Uma conta AWS com a região Ásia-Pacífico (Sydney) ou Ásia-Pacífico (Melbourne) habilitada como região de origem.
  • Se a organização usa Política de Controle de Serviço (SCP — Service Control Policy), verifique se ela permite os perfis de inferência global do GPT-5.6 na região selecionada.
  • Uma função ou usuário do Gerenciamento de Identidade e Acesso da AWS (IAM — Identity and Access Management) com permissões adequadas para invocar os perfis de inferência do GPT-5.6.
  • Python 3.9 ou superior com os pacotes openai, boto3 e aws-bedrock-token-generator instalados.

Verificando os perfis de inferência ativos

Via Interface de Linha de Comando da AWS (AWS CLI)

Os comandos a seguir listam os perfis GPT-5.6 ativos e inspecionam o perfil Terra a partir da região Sydney. Para usar Sol ou Luna, basta alterar o ID do perfil. Para executar a mesma verificação a partir de Melbourne, substitua ap-southeast-2 por ap-southeast-4.

aws bedrock list-inference-profiles \
  --region ap-southeast-2 \
  --type-equals SYSTEM_DEFINED \
  --query "inferenceProfileSummaries[?contains(inferenceProfileId, 'openai.gpt-5.6')].[inferenceProfileId,status]" \
  --output table

aws bedrock get-inference-profile \
  --region ap-southeast-2 \
  --inference-profile-identifier global.openai.gpt-5.6-terra

Via console do Amazon Bedrock

No console do Amazon Bedrock, selecione Sydney ou Melbourne como região, acesse Inference profiles em Infer e filtre por Global OpenAI GPT-5.6 Terra para visualizar o perfil ativo na região de origem.

Invocando o GPT-5.6 pelo Amazon Bedrock Runtime

O GPT-5.6 suporta três caminhos de acesso pelo endpoint do Amazon Bedrock Runtime: a Responses API da OpenAI, a Chat Completions API da OpenAI e a Converse API do Amazon Bedrock. As APIs compatíveis com OpenAI são chamadas nos caminhos /openai/v1 desse endpoint — não pelos SDKs da AWS. O endpoint aceita tanto AWS Signature Version 4 (SigV4) quanto uma chave de API de inferência de modelo do Amazon Bedrock.

Os exemplos a seguir utilizam o AWS Bedrock Token Generator para Python para criar uma chave de API de inferência de curta duração a partir das credenciais AWS atuais, eliminando a necessidade de armazenar uma chave estática.

OpenAI Responses API

Para aplicações que já utilizam o SDK da OpenAI com a Responses API, basta apontar o cliente para o endpoint regional do Amazon Bedrock Runtime:

from aws_bedrock_token_generator import provide_token
from openai import OpenAI

region = "ap-southeast-2"  # Use "ap-southeast-4" for Melbourne.
model_id = "global.openai.gpt-5.6-terra"
prompt = (
    "In three short bullet points, explain how Availability Zones "
    "help make an AWS application highly available."
)

openai_client = OpenAI(
    base_url=f"https://bedrock-runtime.{region}.amazonaws.com/openai/v1",
    api_key=provide_token(region=region),
)

responses_result = openai_client.responses.create(
    model=model_id,
    input=prompt,
    max_output_tokens=300,
)
print(responses_result.output_text)

Para saída em streaming, defina stream=True e itere sobre os eventos de resposta:

response_stream = openai_client.responses.create(
    model=model_id,
    input=prompt,
    max_output_tokens=300,
    stream=True,
)
for event in response_stream:
    if event.type == "response.output_text.delta":
        print(event.delta, end="", flush=True)

OpenAI Chat Completions API

Para aplicações que já utilizam a Chat Completions API:

from aws_bedrock_token_generator import provide_token
from openai import OpenAI

region = "ap-southeast-2"  # Use "ap-southeast-4" for Melbourne.
model_id = "global.openai.gpt-5.6-terra"
prompt = (
    "In three short bullet points, explain how Availability Zones "
    "help make an AWS application highly available."
)

openai_client = OpenAI(
    base_url=f"https://bedrock-runtime.{region}.amazonaws.com/openai/v1",
    api_key=provide_token(region=region),
)

chat_result = openai_client.chat.completions.create(
    model=model_id,
    messages=[{"role": "user", "content": prompt}],
    max_completion_tokens=300,
    reasoning_effort="low",
)
print(chat_result.choices[0].message.content)

Amazon Bedrock Converse API

Para aplicações que já utilizam o SDK da AWS, a Converse API é a opção recomendada. O Boto3 resolve as credenciais pela cadeia padrão de credenciais AWS:

import boto3

region = "ap-southeast-2"  # Use "ap-southeast-4" for Melbourne.
model_id = "global.openai.gpt-5.6-terra"
prompt = (
    "In three short bullet points, explain how Availability Zones "
    "help make an AWS application highly available."
)

messages = [
    {
        "role": "user",
        "content": [{"text": prompt}],
    }
]

bedrock_client = boto3.client("bedrock-runtime", region_name=region)
converse_result = bedrock_client.converse(
    modelId=model_id,
    messages=messages,
    inferenceConfig={"maxTokens": 300},
)
print(converse_result["output"]["message"]["content"][0]["text"])

Para saída em streaming com a Converse API, use converse_stream com a mesma região e ID de perfil, iterando sobre o stream de eventos retornado:

stream_result = bedrock_client.converse_stream(
    modelId=model_id,
    messages=messages,
    inferenceConfig={"maxTokens": 300},
)
for event in stream_result["stream"]:
    if "contentBlockDelta" in event:
        delta = event["contentBlockDelta"]["delta"]
        if "text" in delta:
            print(delta["text"], end="", flush=True)
print()

Para executar qualquer um dos exemplos acima a partir de Melbourne, basta definir a região como ap-southeast-4.

Trabalhando com cache de prompts

O cache de prompts (prompt caching) do GPT-5.6 está disponível pelas APIs suportadas. O modelo oferece dois modos no Amazon Bedrock: o cache implícito, habilitado por padrão sem necessidade de alterações no código, e o cache explícito, no qual é possível definir o prefixo reutilizável, o limite de cache e a chave de cache. O post sobre GPT-5.6 traz exemplos que ilustram essa capacidade.

Configurando o Codex com GPT-5.6 no Amazon Bedrock

O Codex pode usar os mesmos perfis de inferência global pelo Amazon Bedrock Runtime. Para isso, instale a versão mais recente do Codex CLI com suporte nativo ao provedor Amazon Bedrock Runtime:

npm install -g @openai/codex@alpha
codex --version

Para organizações cujo provedor de identidade é Okta, Auth0, Microsoft Entra ID, Amazon Cognito ou AWS IAM Identity Center, o repositório AWS OIDC Auth Helper disponibiliza um auxiliar de credenciais de exemplo. Após configurar o provedor de identidade, o recurso de federação AWS correspondente e uma função IAM com as permissões necessárias no Bedrock, adicione um perfil nomeado ao arquivo ~/.aws/config:

[profile <AWS_OIDC_PROFILE>]
credential_process = <ABSOLUTE_PATH_TO_CREDENTIAL_PROCESS> --profile <OIDC_HELPER_PROFILE>
region = ap-southeast-2
output = json

Esse auxiliar de federação troca um token OpenID Connect (OIDC — OpenID Connect) por credenciais AWS temporárias, e o Codex as lê pela cadeia padrão de credenciais AWS sem configuração adicional. Em seguida, crie ou atualize o arquivo ~/.codex/config.toml referenciando o perfil AWS — consulte a referência de configuração do Codex para outras opções suportadas:

model = "global.openai.gpt-5.6-sol"
model_provider = "amazon-bedrock-runtime"
model_reasoning_effort = "high"

[model_providers.amazon-bedrock-runtime.aws]
profile = "<AWS_OIDC_PROFILE>"
region = "ap-southeast-2"

Se o auxiliar não tiver uma sessão em cache válida, ele abrirá a página de login configurada no navegador. Após a autenticação, as credenciais AWS temporárias são retornadas via credential_process. As requisições são assinadas com AWS SigV4, sem envolvimento de chave de API no caminho de inferência. Para usar com Melbourne, defina a região como ap-southeast-4 tanto no perfil AWS quanto na configuração do Codex.

Gerenciamento de cotas

As cotas sob demanda do GPT-5.6 são medidas em requisições por minuto (RPM — Requests Per Minute) e tokens por minuto (TPM — Tokens Per Minute). O consumo de tokens é calculado a partir dos tokens de entrada, tokens de entrada gravados em cache e tokens de saída multiplicados pela taxa de consumo (burndown rate) do modelo. Para o GPT-5.6, tokens de entrada e tokens de entrada gravados em cache contam na proporção 1:1, enquanto cada token de saída consome 10 tokens da cota.

É recomendado revisar as cotas do GPT-5.6 no console do Service Quotas a partir da região de origem utilizada pela aplicação: Ásia-Pacífico (Sydney) — ap-southeast-2 — ou Ásia-Pacífico (Melbourne) — ap-southeast-4. Antes de ir para produção, solicite aumentos de cota com antecedência, monitore a utilização e teste prompts representativos, tamanhos de saída, comportamento de streaming, concorrência e tráfego de pico. Consulte as cotas do Amazon Bedrock para os valores atuais e taxas de consumo de tokens.

Monitoramento e registro de logs

Como as requisições do GPT-5.6 utilizam a API do Amazon Bedrock Runtime, as chamadas feitas pelos perfis de inferência global aparecem no registro de invocações de modelos (model invocation logging) como qualquer outra requisição sob demanda. Com o logging habilitado, os registros incluem o ID do modelo ou perfil de inferência utilizado na chamada e os metadados de invocação.

O Codex usa OpenTelemetry (OTel) e exporta métricas via OTLP/HTTP — veja como configurar o OpenTelemetry para o OpenAI Codex para mais detalhes. O CloudWatch Coding Agent Insights oferece um painel para telemetria do Codex, incluindo uso de tokens, requisições de API, usuários ativos, atividade de conversas e dimensões organizacionais opcionais.

Há dois caminhos para configurar o Coding Agent Insights no CloudWatch para o Codex: usando Bearer token ou rollout empresarial (Enterprise rollout). O exemplo abaixo demonstra a abordagem com Bearer token. Primeiro, obtenha uma chave de API de métricas do CloudWatch e, em seguida, adicione as seguintes seções ao arquivo ~/.codex/config.toml:

[otel]
environment = "production"

[otel.metrics_exporter]
otlp-http = { endpoint = "https://monitoring.ap-southeast-2.amazonaws.com/v1/metrics", protocol = "binary", headers = { "Authorization" = "Bearer YOUR_CLOUDWATCH_METRICS_API_KEY" } }

Substitua YOUR_CLOUDWATCH_METRICS_API_KEY pela chave criada no CloudWatch e inicie o Codex. Essa chave autoriza a exportação para o endpoint regional do CloudWatch. Após a chegada da telemetria, acesse o console do CloudWatch na região Ásia-Pacífico (Sydney), selecione GenAI Observability, depois Coding Agent Insights e a aba Codex. O painel exibirá uso de tokens, atividade de requisições, taxa de acerto de cache e muito mais.

Para popular os filtros de Organization, Environment, Department, Cost Center, Location, Team e User, forneça os valores correspondentes por meio de OTEL_RESOURCE_ATTRIBUTES. A AWS classifica a chave de API de métricas do CloudWatch como credencial de longa duração e recomenda seu uso apenas quando credenciais de curta duração não são viáveis. Trate o config.toml como segredo e restrinja suas permissões de arquivo. Para organizações que federam a identidade dos desenvolvedores via single sign-on corporativo, o rollout empresarial é a abordagem recomendada — nesse caso, um coletor local assina a exportação com SigV4 usando as credenciais federadas do desenvolvedor, sem distribuição de token.

Conclusão

A AWS demonstrou como descobrir e invocar os perfis de inferência global GPT-5.6 Sol, Terra e Luna a partir das regiões Ásia-Pacífico (Sydney) e Ásia-Pacífico (Melbourne). Também foi apresentado como configurar o Codex para usar o Amazon Bedrock Runtime e exportar a telemetria do Codex para o CloudWatch Coding Agent Insights. Para começar, siga os exemplos deste artigo e teste os modelos GPT-5.6 na sua conta. Se você já utiliza o Codex, configure o provedor Amazon Bedrock Runtime e habilite o CloudWatch Coding Agent Insights no Console AWS para monitorar o consumo. Para detalhes de preços, consulte a página de preços do Amazon Bedrock.

Fonte

Accessing OpenAI models on Amazon Bedrock from Australia with global cross-Region inference (https://aws.amazon.com/blogs/machine-learning/accessing-openai-gpt-5-6-models-on-amazon-bedrock-from-australia-with-global-cross-region-inference/)

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *