Usar ChatGPT Work y Codex con Amazon Bedrock

Configura las interfaces locales de ChatGPT Work y Codex para usar los modelos de OpenAI disponibles mediante Amazon Bedrock.

Configura las interfaces locales de ChatGPT Work y Codex para usar los modelos de OpenAI disponibles mediante Amazon Bedrock. En esta configuración, el cliente local envía solicitudes del modelo a Bedrock mediante la autenticación y los controles de acceso administrados por AWS.

Cómo funciona

Cuando configuras una interfaz local de ChatGPT Work o Codex con Amazon Bedrock como proveedor del modelo, la Responses API alojada por OpenAI no forma parte de la ruta de la solicitud. El cliente local envía solicitudes del modelo a Amazon Bedrock, y Bedrock proporciona una implementación compatible con la Responses API de OpenAI para los modelos de OpenAI compatibles.

Antes de comenzar

Asegúrate de tener:

  • Credenciales de la cuenta de AWS que quieras usar.
  • Acceso a modelos de OpenAI compatibles en Amazon Bedrock.
  • Acceso a una región de AWS en la que esté disponible el modelo seleccionado.
  • Permiso de AWS para invocar el modelo o perfil de inferencia seleccionado.

Comprueba los requisitos de IAM específicos del modelo. Por ejemplo, GPT-6 Sol a través de Runtime también requiere bedrock:InvokeModel en el proyecto predeterminado de la cuenta. Consulta las instrucciones de configuración de GPT-6 Sol de AWS.

Configurar el proveedor

Codex te permite configurar el proveedor estableciendo model_provider en ~/.codex/config.toml. La aplicación de escritorio de ChatGPT, Codex CLI, la extensión del IDE y el SDK leen las mismas capas de configuración local.

Elige el proveedor del endpoint de Amazon Bedrock que quieras usar: Bedrock Runtime para la inferencia entre regiones (CRIS) o Bedrock Mantle para la inferencia dentro de una región.

Usa Bedrock Runtime para las configuraciones nuevas:

model_provider = "amazon-bedrock-runtime"
web_search = "disabled"

Usa Mantle para la búsqueda web alojada

Para el endpoint de Bedrock Mantle:

model_provider = "amazon-bedrock"
web_search = "cached"

Elegir un modelo

Codex usa el model_provider configurado para elegir qué modelos aparecen en el selector de modelos: los modelos compatibles a través del endpoint de Bedrock Runtime para amazon-bedrock-runtime o a través del endpoint de Bedrock Mantle para amazon-bedrock.

De forma opcional, puedes especificar un modelo compatible en el archivo de configuración. El proveedor integrado proporciona su propio catálogo de modelos. Al cambiar de endpoint, cambia a la vez el proveedor y cualquier ID de modelo especificado explícitamente.

Opciones de autenticación

Las interfaces locales de ChatGPT Work y Codex admiten dos rutas de autenticación de Bedrock. Las comprueban en este orden:

  1. Bedrock API key.
  2. Cadena de credenciales de AWS SDK.

Opción 1: Bedrock API key

Configura la Bedrock API key en el entorno que lee el cliente local. Debes especificar una región cuando uses la autenticación mediante API key.

export AWS_BEARER_TOKEN_BEDROCK=<your-bedrock-api-key>
export AWS_REGION=us-east-2

En Windows PowerShell:

$env:AWS_BEARER_TOKEN_BEDROCK = "<your-bedrock-api-key>"
$env:AWS_REGION = "us-east-2"

Opción 2: credenciales de AWS SDK

Usa esta ruta cuando tu organización administre el acceso a Bedrock mediante la cadena de credenciales de AWS SDK. El cliente local puede usar estas fuentes estándar de credenciales de AWS SDK:

Archivos de configuración compartidos de AWS

Configura los archivos compartidos de AWS config y credentials:

aws configure

Variables de entorno

Configura las variables de entorno estándar de credenciales de AWS SDK:

export AWS_ACCESS_KEY_ID=<your-access-key-id>
export AWS_SECRET_ACCESS_KEY=<your-secret-access-key>
export AWS_SESSION_TOKEN=<your-session-token>

Credenciales de AWS Management Console

Inicia sesión con las credenciales de AWS Management Console:

aws login

AWS SSO o un perfil con nombre

Inicia sesión con AWS SSO y selecciona el perfil con nombre:

aws sso login --profile codex-bedrock
export AWS_PROFILE=codex-bedrock

Identidad federada

Para SSO corporativo o federación OIDC, configura una identidad federada con credential_process fuera del cliente local y permite que AWS SDK resuelva las credenciales. Coloca el inicio de sesión en el navegador, el intercambio de tokens, el almacenamiento en caché y la actualización en el asistente credential_process de tu perfil de AWS.

Aplicación de escritorio y extensión de IDE

Es posible que las aplicaciones de escritorio y las extensiones para IDE no hereden las variables de entorno del shell. Incluye los valores necesarios en ~/.codex/.env y luego reinicia la aplicación o la extensión. En Windows, la ruta predeterminada es %USERPROFILE%\.codex\.env.

export AWS_BEARER_TOKEN_BEDROCK=<your-bedrock-api-key>
export AWS_REGION=us-east-2

Verificar la configuración

  • En Codex CLI, abre /status y confirma que el proveedor del modelo coincida con tu endpoint: amazon-bedrock para la inferencia de Mantle dentro de una región o amazon-bedrock-runtime para la inferencia entre regiones Runtime Global o Geo.
  • En la aplicación de escritorio de ChatGPT, selecciona Work o Codex e inicia una tarea nueva después de reiniciar la aplicación.
  • En la extensión del IDE, inicia una sesión nueva después de reiniciar la extensión.
  • Confirma que el modelo seleccionado esté disponible en la región de AWS configurada y que la identidad de AWS tenga permiso para acceder a él.

Luego envía un prompt breve en una tarea nueva:

Reply with exactly: bedrock-ok

La respuesta esperada es bedrock-ok. Confirma el proveedor y el modelo en el cliente; la respuesta por sí sola no identifica la ruta. Para validar el despliegue, usa una carpeta desechable con permisos de solo lectura y verifica una tarea inofensiva que use una herramienta local y un turno posterior.

Modelos compatibles

Usa un ID de perfil de inferencia para el proveedor Bedrock Runtime o un ID de modelo para el proveedor Bedrock Mantle. El modelo o perfil seleccionado debe estar disponible en tu región de AWS y ser accesible para tu identidad de AWS.

Inferencia entre regiones Global y Geo mediante el endpoint de Bedrock Runtime

Global CRIS puede dirigir las solicitudes a regiones comerciales de AWS compatibles en todo el mundo, mientras que Geo CRIS las dirige dentro del área geográfica del perfil. Elige un ámbito de enrutamiento que cumpla con tus permisos de AWS y tus requisitos de residencia de datos.

Usa model_provider = "amazon-bedrock-runtime" con la configuración opcional model establecida en un ID de perfil de inferencia de las listas siguientes. El proveedor usa https://bedrock-runtime.{region}.amazonaws.com/openai/v1, donde {region} es la región de AWS de origen compatible desde la que envías las solicitudes. Tanto Global CRIS como Geo CRIS usan esta dirección de endpoint.

Global CRIS

Modelos e ID de perfil de inferencia admitidos:

  • GPT-6 Astra: global.openai.gpt-6-astra
  • GPT-6 Sol: global.openai.gpt-6-sol
  • GPT-6 Luna: global.openai.gpt-6-luna

Por ejemplo, configura Astra con Global CRIS en ~/.codex/config.toml:

model_provider = "amazon-bedrock-runtime"
model = "global.openai.gpt-6-astra"

CRIS geográfico de Estados Unidos

Modelos e ID de perfil de inferencia admitidos:

  • GPT-6 Astra: us.openai.gpt-6-astra
  • GPT-6 Sol: us.openai.gpt-6-sol
  • GPT-6 Luna: us.openai.gpt-6-luna

El selector de modelos de Runtime integrado en Codex muestra las variantes Geo de Estados Unidos y Global.

La disponibilidad de los modelos y de CRIS varía según la región de AWS de origen. Consulta Regiones y modelos compatibles con los perfiles de inferencia de AWS, que contiene enlaces a los identificadores exactos de los perfiles de inferencia de cada modelo y a su disponibilidad regional, y Disponibilidad regional por modelo de AWS antes de seleccionar un proveedor y un modelo.

Inferencia dentro de la región mediante el endpoint de Bedrock Mantle

Usa model_provider = "amazon-bedrock" con un identificador de modelo opcional. El proveedor usa https://bedrock-mantle.{region}.api.aws/openai/v1.

Modelos e identificadores de modelo compatibles:

  • GPT-6 Astra: openai.gpt-6-astra
  • GPT-6 Sol: openai.gpt-6-sol
  • GPT-6 Luna: openai.gpt-6-luna

GPT-6 Sol y Luna están disponibles a través de Mantle en us-east-1 (N. Virginia). La disponibilidad de los modelos varía según la región de AWS. Consulta la disponibilidad regional por modelo de AWS antes de seleccionar un proveedor y un modelo. Para GPT-6 Astra, consulta la página del modelo Bedrock para GPT-6 Astra.

Disponibilidad de funciones

Esta configuración admite flujos de trabajo locales de ChatGPT Work y Codex. Las versiones alojadas de ChatGPT Work en la web, Codex cloud y las funciones que dependen de servicios en la nube alojados por OpenAI o del descubrimiento gestionado en la nube no están disponibles actualmente. La búsqueda web alojada no está disponible en Runtime; usa Mantle si la necesitas.

Codex Security CLI usa su propia configuración de proveedor. Sigue las instrucciones de configuración de Amazon Bedrock en lugar de la configuración del cliente nativo indicada anteriormente.

Disponibilidad detallada de las funciones
FunciónAmazon Bedrock
Acceso e interfaces
ChatGPT Work en la webNo disponible
Codex cloudNo disponible
ChatGPT Work o Codex en la aplicación de escritorio de ChatGPTDisponible
Codex CLIDisponible
Codex Security CLIDisponible
Extensión para IDEDisponible
Codex SDK, codex exec y flujos de trabajo automatizables mediante scriptsDisponible
Modelos y multimodalidad
Inferencia mediante Bedrock con modelos de OpenAI compatiblesDisponible
Modo rápidoNo disponible
Generación y edición de imágenesNo disponible
Dictado por vozNo disponible
Búsqueda web alojada en RuntimeNo disponible
Funciones locales
Plugin de Codex Security y análisis localesDisponible
Revisión local de código con /reviewDisponible
Revisión automática de solicitudes de aprobaciónDisponible
Aislamiento y controles de permisosDisponible
Tareas programadas de proyectos e independientesDisponible
Tareas programadasDisponible
Árboles de trabajo y herramientas de Git integradasDisponible
Entornos locales y acciones repetiblesDisponible
AppshotsDisponible
Navegador y control remoto
Vistas previas y comentarios en el navegador integradoDisponible
Computer Use en el navegadorLimitado*
Usar ChatGPT con ChromeLimitado*
Computer UseLimitado*
Conexiones remotas SSHDisponible
Control remoto desde dispositivos móvilesNo disponible
Personalización y extensiones
Instrucciones personalizadas con AGENTS.mdDisponible
HabilidadesDisponible
PluginsLimitado†
Uso compartido de pluginsNo disponible
ConectoresNo disponible
MCPDisponible
Subagentes y agentes personalizadosDisponible
MemoriasLimitado*
Computer HistoryNo disponible
Nube e integraciones
Chats de Codex cloudNo disponible
SitesNo disponible
Delegación de incidencias y PR de GitHub con @codexNo disponible
Revisión de código en GitHub y revisiones automáticas de PRNo disponible
Integración de Slack en la nubeNo disponible
Integración de Linear en la nubeNo disponible
Administración, seguridad y analítica
SAML SSO, MFA y gestión de usuarios del espacio de trabajoNo disponible
requirements.toml para la configuración gestionadaDisponible
Políticas de configuración gestionadas en la nubeNo disponible
RBAC del espacio de trabajo de ChatGPT y roles personalizadosNo disponible
SCIM, EKM y verificación de dominiosNo disponible
Controles empresariales de retención y residencia de datosNo disponible
Sin entrenamiento con datos de la API o empresariales de forma predeterminadaDisponible
Panel de analíticaNo disponible
API de analíticaNo disponible
API de cumplimiento y registros de auditoríaNo disponible
Codex Security en la nube para repositorios de GitHub conectadosNo disponible

* La función está limitada actualmente a determinadas regiones. Consulta la documentación de cada función para obtener más información sobre las restricciones regionales.

† Están disponibles los paquetes de plugins locales y los plugins seleccionados por OpenAI que no requieren autenticación de ChatGPT, incluido Codex Security. No están disponibles los plugins que requieren autenticación de ChatGPT, conectores o uso compartido alojado en la nube.

Solución de problemas

Si la configuración falla, comprueba lo siguiente:

  • El ID del modelo coincide exactamente con un modelo compatible.
  • Usas el proveedor de modelos correcto para el endpoint: amazon-bedrock-runtime para el endpoint de Runtime o amazon-bedrock para el endpoint de Mantle.
  • Especificas una región de AWS donde el modelo está disponible.
  • La API key de Bedrock o las credenciales de AWS son válidas y no han caducado.
  • La identidad de AWS tiene permiso para acceder al modelo de Bedrock seleccionado.
  • AWS_BEARER_TOKEN_BEDROCK no tiene asignada una clave caducada o no deseada.
  • Para usar la aplicación de escritorio o la extensión para IDE, las variables de entorno necesarias están presentes en ~/.codex/.env.

Para la autenticación mediante perfiles del SDK de AWS, ejecuta aws sts get-caller-identity --profile codex-bedrock para confirmar la identidad del perfil seleccionado. Sustituye codex-bedrock por el nombre de tu perfil, u omite --profile si usas la cadena de credenciales predeterminada. Esto comprueba la identidad de AWS, no el permiso para invocar un modelo de Bedrock. Comprueba AWS_BEARER_TOKEN_BEDROCK por separado para que una API key no deseada no seleccione una vía de autenticación diferente.

Límites del soporte

El soporte de OpenAI puede ayudar con la configuración del cliente de ChatGPT Work y Codex, la configuración, el comportamiento local de CLI, el comportamiento de la aplicación de escritorio, el comportamiento de la extensión de IDE y la experiencia local del producto.

Para obtener ayuda con credenciales de AWS, permisos de IAM, acceso a modelos de Bedrock, cuotas, facturación, disponibilidad regional, errores de solicitudes de Bedrock, registros de servicios de AWS o comportamiento del servicio Bedrock, ponte en contacto con el administrador de AWS del cliente o con el soporte de AWS.