Como configurar o app desktop do ChatGPT com Amazon Bedrock no AWS GovCloud (US)

O que foi anunciado

A AWS anunciou a disponibilidade do app desktop do ChatGPT integrado ao Amazon Bedrock no AWS GovCloud (US). A integração oferece acesso aos modelos de fronteira da OpenAI por meio de dois componentes principais: o Work, voltado para tarefas complexas de múltiplas etapas que entregam resultados prontos para revisão, e o Codex, um agente de codificação para desenvolvimento, testes e revisão de software.

Este guia é direcionado a organizações cuja arquitetura de segurança exige que a inferência de modelos utilize identidades, endpoints e controles regionais do AWS GovCloud (US). A configuração roteia as requisições do Codex pelo Amazon Bedrock Mantle na região us-gov-west-1, onde o acesso pode ser governado pelo Gerenciamento de Identidade e Acesso da AWS (IAM) e pelos controles de rede existentes no AWS GovCloud (US).

Entendendo o Codex e suas capacidades

O Codex é o agente de codificação da OpenAI para desenvolvimento de software com inteligência artificial. Alimentado pelos modelos GPT, ele foi otimizado para fluxos de trabalho complexos de desenvolvimento de longa duração. Os desenvolvedores podem utilizá-lo por meio do app desktop do ChatGPT, da Interface de Linha de Comando (CLI) do Codex e de integrações com ambientes de desenvolvimento como Visual Studio Code, JetBrains e Xcode.

A inferência dos modelos é roteada pela Responses API no Amazon Bedrock. Para clientes com requisitos de residência de dados, o processamento permanece dentro da Região AWS do Amazon Bedrock selecionada. O modelo de cobrança é por token, sem licenças por assento e sem compromissos por desenvolvedor.

A integração também suporta Retenção Zero de Dados (ZDR — Zero Data Retention). Nesse modo configurável, prompts e respostas são processados sem serem gravados em armazenamento durável pela AWS ou compartilhados com os provedores de modelos, o que ajuda a proteger informações sensíveis e atender a requisitos rigorosos de governança de dados, privacidade e segurança.

Visão geral da solução

O app desktop do ChatGPT pode ser utilizado de duas formas principais:

  • Work: para tarefas maiores que envolvem planejamento, pesquisa, arquivos e entrega de um resultado finalizado.
  • Codex: para trabalho técnico, como edição de código, execução de testes e revisão de pull requests.

O app roda em um computador gerenciado pela organização e utiliza as credenciais AWS configuradas para enviar requisições de forma segura ao endpoint do Amazon Bedrock Mantle em us-gov-west-1. Como a configuração usa a AWS diretamente, as regras de workspace e os papéis de usuário do ChatGPT não exercem controle sobre ela. Os principais controles de segurança são as políticas do computador e a identidade e permissões AWS em uso.

Atenção: utilizar o AWS GovCloud (US) e seguir este guia não autoriza automaticamente sua carga de trabalho. A organização continua responsável por revisar o modelo selecionado, os serviços AWS, a região, o endpoint, os controles da estação de trabalho, os repositórios, as credenciais e os fluxos de dados em relação ao seu plano de segurança do sistema e ao processo de autorização vigente.

Passo a passo de configuração

A configuração envolve três etapas principais: configurar a autenticação, criar os arquivos de configuração do app e, por fim, iniciar, inicializar e verificar o deployment.

Pré-requisitos

Antes de iniciar, é necessário garantir que sua versão do app desktop do ChatGPT suporta o Amazon Bedrock no AWS GovCloud (US). Além disso, são necessários: uma conta aprovada no AWS GovCloud (US), uma identidade IAM com credenciais aprovadas, acesso ao modelo, à Região AWS e ao endpoint aprovados, além de permissão para utilizá-los. Também é necessário preparar os arquivos requirements.toml e config.toml.

Etapa 1: Configurar a autenticação

Selecione a conta AWS GovCloud (US) aprovada e a identidade ou papel IAM com acesso ao modelo aprovado em us-gov-west-1. Obtenha as credenciais pelo mecanismo aprovado pela organização. O guia utiliza o perfil nomeado codex-il5 como exemplo.

É fundamental manter credenciais, tokens de portador (bearer tokens), tokens de sessão e outros segredos fora dos arquivos TOML.

O app desktop do ChatGPT suporta dois caminhos de autenticação com o Amazon Bedrock:

O Logon Único da AWS (SSO — Single Sign-On) via AWS IAM Identity Center é suportado dentro do caminho de cadeia de credenciais. O app verifica primeiro a variável AWS_BEARER_TOKEN_BEDROCK no seu ambiente. Para uso no desktop, essa variável pode ser fornecida via %USERPROFILE%\.codex\.env no Windows ou ~/.codex/.env no Linux e macOS. Quando presente, o bearer token tem precedência sobre a autenticação baseada em perfil.

Se nenhum bearer token estiver disponível, o app recorre à cadeia de credenciais padrão do AWS SDK, que lê as credenciais de ~/.aws/credentials e as configurações de perfil de ~/.aws/config. No Windows, os caminhos padrão correspondentes são %USERPROFILE%\.aws\credentials e %USERPROFILE%\.aws\config. A cadeia também suporta perfis SSO, usando as configurações do arquivo de configuração AWS e a sessão SSO em cache para obter credenciais temporárias de papel, sem necessidade de armazená-las manualmente no arquivo de credenciais. Para mais detalhes, consulte a documentação de autenticação Bedrock da OpenAI e a documentação do provedor de credenciais do AWS IAM Identity Center.

Etapa 2: Criar os arquivos de configuração do app

É necessário criar dois arquivos de configuração: config.toml e requirements.toml. Importante: os arquivos de configuração devem estar criados antes do primeiro lançamento do aplicativo.

Os locais dos arquivos variam conforme o sistema operacional:

  • Windows: %USERPROFILE%\.codex\config.toml (usuário) e %ProgramData%\OpenAI\Codex\requirements.toml (administrador)
  • Linux e macOS: ~/.codex/config.toml (usuário) e /etc/codex/requirements.toml (administrador)

O arquivo requirements.toml é controlado pelo administrador e define limites de segurança que os usuários não podem sobrescrever — como restrições de nível de permissão, ferramentas e configurações. Use a seguinte configuração base para o deployment aprovado do Amazon Bedrock no AWS GovCloud (US). A seção [windows] se aplica apenas ao Windows, e sandbox_private_desktop deve ser suportado pelo runtime aprovado:

allowed_login_methods = ["api"]
allowed_sandbox_modes = ["read-only", "workspace-write"]
allowed_approvals_reviewers = ["user"]
allowed_approval_policies = [
  { granular = { sandbox_approval = false, rules = true, mcp_elicitations = false, request_permissions = false, skill_approval = true } },
]
allowed_web_search_modes = ["disabled", "cached"]
allow_browser_and_computer_use = false
allow_appshots = false
allow_remote_control = false
allow_login_shell = false
allow_managed_hooks_only = true
check_for_update_on_startup = false
mcp_servers = {}

[feedback]
enabled = false

[features]
network_proxy = true
in_app_chat = false
in_app_dictation = false
in_app_browser = false
browser_use = false
browser_use_external = false
browser_use_full_cdp_access = false
computer_use = false
in_app_updates = false
image_generation = false
memories = false
chronicle = false
external_agent_memory_import = false
guardian_approval = false
guardianv2 = false
guardian_ext = false
apps = false
enable_mcp_apps = false
plugins = false
remote_plugin = false
plugin_sharing = false
recommended_plugins = false
skill_mcp_dependency_install = false
skill_search = false
workspace_dependencies = false
hooks = false
standalone_web_search = false

[experimental_network]
enabled = true
managed_allowed_domains_only = true
domains = {}
unix_sockets = {}
allow_upstream_proxy = false
dangerously_allow_non_loopback_proxy = false
dangerously_allow_all_unix_sockets = false
allow_local_binding = false

[application.network]
enabled = true

[application.network.domains]
"bedrock-mantle.us-gov-west-1.api.aws" = "allow"
"api.openai.com" = "deny"
"chat.openai.com" = "deny"
"chatgpt.com" = "deny"
"ab.chatgpt.com" = "deny"
"platform.openai.com" = "deny"
"auth.openai.com" = "deny"
"gov.api.openai.com" = "deny"
"gov.chatgpt.com" = "deny"
"sdfedpreastus2.oaiusercontent.com" = "deny"
"o33249.ingest.us.sentry.io" = "deny"
"persistent.oaistatic.com" = "deny"
"oaisidekickupdates.blob.core.windows.net" = "deny"

[windows]
allowed_sandbox_implementations = ["elevated"]
sandbox_private_desktop = true

Em seguida, configure o arquivo config.toml, que instrui o app sobre como operar: qual provedor de modelo usar (amazon-bedrock), qual modelo selecionar e configurações como permissões e limites de contexto. Substitua o ID do modelo e o perfil nomeado (por exemplo, codex-il5) pelos valores aprovados pela sua organização:

model = "REPLACE_WITH_APPROVED_MODEL_ID"
model_provider = "amazon-bedrock"
forced_login_method = "api"
approval_policy = { granular = { sandbox_approval = false, rules = true, mcp_elicitations = false, request_permissions = false, skill_approval = true } }
approvals_reviewer = "user"
sandbox_mode = "workspace-write"
web_search = "cached"
allow_login_shell = false
check_for_update_on_startup = false

[model_providers.amazon-bedrock]
base_url = "https://bedrock-mantle.us-gov-west-1.api.aws/openai/v1"
wire_api = "responses"
requires_openai_auth = false
supports_websockets = false
supports_standalone_web_search = false

[model_providers.amazon-bedrock.aws]
region = "us-gov-west-1"
profile = "codex-il5"

[sandbox_workspace_write]
network_access = false

[features]
network_proxy = true

[analytics]
enabled = false

[feedback]
enabled = false

[otel]
exporter = "none"
trace_exporter = "none"
metrics_exporter = "none"
log_user_prompt = false

[memories]
generate_memories = false
use_memories = false

[skills.bundled]
enabled = false

[apps._default]
enabled = false

[windows]
sandbox = "elevated"

Etapa 3: Iniciar, inicializar e verificar

Baixe o app no site do ChatGPT e instale-o. Deixe o app fechado após a instalação. Se ele abrir automaticamente ou já tiver sido iniciado anteriormente, encerre completamente o ChatGPT e finalize quaisquer processos remanescentes do ChatGPT ou do Codex.

Certifique-se de que os arquivos requirements.toml e config.toml estejam nos locais corretos antes do primeiro lançamento. Ao iniciar o app, ele carregará as configurações desses arquivos. Verifique se o provedor de modelo exibido é amazon-bedrock. Na CLI do Codex, uma aba /status confirmará o provedor. No app desktop do ChatGPT, as configurações também exibirão amazon-bedrock como provedor de modelo.

Solução de problemas comuns

  • O app solicita uma conta OpenAI: verifique se os arquivos requirements.toml e config.toml estão nos locais exatos indicados na tabela, encerre todos os processos do ChatGPT e do Codex e reinicie. Os arquivos devem existir antes do lançamento do app.
  • O endpoint do AWS GovCloud (US) é reportado como não suportado: confirme a versão exata do desktop ou do app-server, o endpoint e o modelo diretamente com a OpenAI. Alterar apenas a URL não estabelece o suporte.
  • A identidade AWS incorreta está sendo usada: inspecione a fonte de credencial efetiva e o perfil nomeado. Verifique se uma chave de API do Amazon Bedrock está tendo precedência sobre o perfil.
  • As restrições de capacidade estão ausentes: inspecione as configurações efetivas completas após a reinicialização. A configuração de login apenas por API não aplica a política de capacidades automaticamente.

Rollback e limpeza

Se uma verificação de validação falhar, interrompa o rollout. Retorne os dispositivos afetados às configurações de política e provedor previamente aprovadas e reinicie o app desktop do ChatGPT. Revogue quaisquer credenciais AWS temporárias ou chaves de API e confirme que esses dispositivos não conseguem mais se conectar ao Amazon Bedrock. Mantenha um registro do teste e documente claramente o que falhou antes de tentar novamente.

Conclusão

O app desktop do ChatGPT no Amazon Bedrock no AWS GovCloud (US) oferece uma forma controlada de utilizar os modelos de fronteira da OpenAI e assistência de codificação, mantendo a inferência dentro das regiões do AWS GovCloud (US). Ao validar a configuração, confirmar a identidade AWS aprovada e o endpoint, e verificar os controles de segurança, as equipes podem preparar o deployment com confiança para uma adoção mais ampla. A abordagem equilibra inovação e conformidade, alinhando as decisões de deployment com os requisitos de segurança, autorização e tratamento de dados de cada organização.

Recursos relacionados

Fonte

Configure the ChatGPT desktop app with Amazon Bedrock in AWS GovCloud (US) (https://aws.amazon.com/blogs/machine-learning/configure-the-chatgpt-desktop-app-with-amazon-bedrock-in-aws-govcloud-us/)

Comments

Leave a Reply

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