Utiliser ChatGPT Work et Codex avec Amazon Bedrock
Configurez les interfaces locales ChatGPT Work et Codex afin d’utiliser les modèles OpenAI disponibles via Amazon Bedrock.
Configurez les interfaces locales ChatGPT Work et Codex afin d’utiliser les modèles OpenAI disponibles via Amazon Bedrock. Dans cette configuration, le client local envoie les requêtes de modèle à Bedrock au moyen de l’authentification et des contrôles d’accès gérés par AWS.
Fonctionnement
Lorsque vous configurez une interface locale ChatGPT Work ou Codex avec Amazon Bedrock comme fournisseur de modèles, la Responses API hébergée par OpenAI ne fait pas partie du chemin de la requête. Le client local envoie les requêtes de modèle à Amazon Bedrock, qui fournit une implémentation compatible avec la Responses API d’OpenAI pour les modèles OpenAI pris en charge.
Avant de commencer
Vérifiez que vous disposez des éléments suivants :
- Les identifiants du compte AWS que vous souhaitez utiliser.
- Un accès aux modèles OpenAI pris en charge dans Amazon Bedrock.
- Un accès à une région AWS dans laquelle le modèle sélectionné est disponible.
- L’autorisation AWS d’invoquer le modèle ou le profil d’inférence sélectionné.
Vérifiez les exigences IAM propres au modèle. Par exemple, GPT-6 Sol via Runtime
nécessite également bedrock:InvokeModel sur le projet par défaut du compte. Consultez les instructions de configuration de GPT-6 Sol d’AWS.
Configurer le fournisseur
Codex vous permet de configurer le fournisseur en définissant model_provider dans ~/.codex/config.toml. L’application de bureau ChatGPT, Codex CLI, l’extension IDE et le SDK utilisent les mêmes couches de configuration locale.
Choisissez le fournisseur correspondant au point de terminaison Amazon Bedrock que vous souhaitez utiliser : Bedrock Runtime pour l’inférence interrégionale (CRIS), ou Bedrock Mantle pour l’inférence au sein d’une région.
Utilisez Bedrock Runtime pour les nouvelles configurations :
model_provider = "amazon-bedrock-runtime"
web_search = "disabled"
Utiliser Mantle pour la recherche Web hébergée
Pour le point de terminaison Bedrock Mantle :
model_provider = "amazon-bedrock"
web_search = "cached"Choisir un modèle
Codex utilise le model_provider configuré pour déterminer quels modèles apparaissent dans le
sélecteur de modèle : les modèles pris en charge par le point de terminaison Bedrock Runtime pour
amazon-bedrock-runtime, ou par le point de terminaison Bedrock Mantle pour
amazon-bedrock.
Vous pouvez, si vous le souhaitez, spécifier un modèle pris en charge dans le fichier de configuration. Le fournisseur intégré fournit son propre catalogue de modèles. Lorsque vous changez de point de terminaison, modifiez à la fois le fournisseur et tout identifiant de modèle explicitement défini.
Options d’authentification
Les interfaces locales ChatGPT Work et Codex prennent en charge deux méthodes d’authentification Bedrock. Elles les vérifient dans l’ordre suivant :
- API key Bedrock.
- Chaîne d’identifiants AWS SDK.
Option 1 : API key Bedrock
Définissez l’API key Bedrock dans l’environnement lu par le client local. Vous devez indiquer une région lorsque vous utilisez l’authentification par API key.
export AWS_BEARER_TOKEN_BEDROCK=<your-bedrock-api-key>
export AWS_REGION=us-east-2Dans Windows PowerShell :
$env:AWS_BEARER_TOKEN_BEDROCK = "<your-bedrock-api-key>"
$env:AWS_REGION = "us-east-2"Option 2 : identifiants AWS SDK
Utilisez cette méthode lorsque votre organisation gère l’accès à Bedrock au moyen de la chaîne d’identifiants AWS SDK. Le client local peut utiliser les sources d’identifiants AWS SDK standard suivantes :
Fichiers de configuration AWS partagés
Configurez les fichiers AWS partagés config et credentials :
aws configureVariables d’environnement
Définissez les variables d’environnement standard des identifiants 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>Identifiants AWS Management Console
Connectez-vous avec des identifiants AWS Management Console :
aws loginAWS SSO ou profil nommé
Connectez-vous avec AWS SSO et sélectionnez le profil nommé :
aws sso login --profile codex-bedrock
export AWS_PROFILE=codex-bedrockIdentité fédérée
Pour un SSO d’entreprise ou une fédération OIDC, configurez une identité fédérée avec
credential_process en dehors du client local et laissez AWS SDK résoudre les
identifiants. Confiez à l’assistant credential_process de votre profil AWS la connexion dans le navigateur,
l’échange de tokens, la mise en cache et l’actualisation.
Application de bureau et extension IDE
Les applications de bureau et les extensions IDE n’héritent pas toujours des variables d’environnement du
shell. Placez les valeurs requises dans ~/.codex/.env, puis redémarrez l’application ou
l’extension. Sous Windows, le chemin par défaut est %USERPROFILE%\.codex\.env.
export AWS_BEARER_TOKEN_BEDROCK=<your-bedrock-api-key>
export AWS_REGION=us-east-2Vérifier la configuration
- Dans Codex CLI, ouvrez
/statuset vérifiez que le fournisseur de modèles correspond à votre point de terminaison :amazon-bedrockpour l’inférence Mantle au sein d’une région, ouamazon-bedrock-runtimepour l’inférence interrégionale Runtime Global ou Geo. - Dans l’application de bureau ChatGPT, sélectionnez Work ou Codex et démarrez une nouvelle tâche après avoir redémarré l’application.
- Dans l’extension IDE, démarrez une nouvelle session après avoir redémarré l’extension.
- Vérifiez que le modèle sélectionné est disponible dans la région AWS configurée et que l’identité AWS est autorisée à y accéder.
Envoyez ensuite une courte instruction dans une nouvelle tâche :
Reply with exactly: bedrock-okVous devriez obtenir bedrock-ok. Vérifiez le fournisseur et le modèle dans le client ; la réponse seule
ne permet pas d’identifier le chemin emprunté. Pour valider le déploiement, utilisez un dossier temporaire
avec des autorisations en lecture seule et vérifiez une tâche sans risque utilisant un outil local, ainsi qu’un tour
de suivi.
Modèles pris en charge
Utilisez un ID de profil d’inférence pour le fournisseur Bedrock Runtime ou un ID de modèle pour le fournisseur Bedrock Mantle. Le modèle ou le profil sélectionné doit être disponible dans votre région AWS et accessible à votre identité AWS.
Inférence interrégionale Global et Geo avec le point de terminaison Bedrock Runtime
Global CRIS peut acheminer les requêtes vers les régions AWS commerciales prises en charge dans le monde entier, tandis que Geo CRIS les achemine au sein de la zone géographique du profil. Choisissez un périmètre de routage conforme à vos autorisations AWS et à vos exigences de résidence des données.
Utilisez model_provider = "amazon-bedrock-runtime" avec la configuration facultative model définie sur un ID de profil d’inférence figurant dans les listes suivantes. Le fournisseur utilise
https://bedrock-runtime.{region}.amazonaws.com/openai/v1, où {region} est
la région AWS source prise en charge depuis laquelle vous envoyez les requêtes. Global CRIS et Geo CRIS utilisent tous deux cette adresse de point de terminaison.
Global CRIS
Modèles pris en charge et identifiants de profil d’inférence :
- GPT-6 Astra :
global.openai.gpt-6-astra - GPT-6 Sol :
global.openai.gpt-6-sol - GPT-6 Luna :
global.openai.gpt-6-luna
Par exemple, configurez Astra avec Global CRIS dans ~/.codex/config.toml :
model_provider = "amazon-bedrock-runtime"
model = "global.openai.gpt-6-astra"CRIS géographique pour les États-Unis
Modèles pris en charge et identifiants de profil d’inférence :
- GPT-6 Astra :
us.openai.gpt-6-astra - GPT-6 Sol :
us.openai.gpt-6-sol - GPT-6 Luna :
us.openai.gpt-6-luna
Le sélecteur de modèles Runtime intégré à Codex propose les variantes Geo pour les États-Unis et Global.
La disponibilité des modèles et de CRIS varie selon la région AWS source. Consultez la page AWS Régions et modèles pris en charge pour les profils d’inférence, qui fournit des liens vers les identifiants exacts des profils d’inférence de chaque modèle et leur disponibilité régionale, ainsi que la page AWS Disponibilité régionale par modèle, avant de sélectionner un fournisseur et un modèle.
Inférence dans la région à l’aide du point de terminaison Bedrock Mantle
Utilisez model_provider = "amazon-bedrock" avec un identifiant de modèle facultatif. Le fournisseur utilise
https://bedrock-mantle.{region}.api.aws/openai/v1.
Modèles et identifiants de modèle pris en charge :
- GPT-6 Astra :
openai.gpt-6-astra - GPT-6 Sol :
openai.gpt-6-sol - GPT-6 Luna :
openai.gpt-6-luna
GPT-6 Sol et Luna sont disponibles via Mantle dans us-east-1 (Virginie du Nord).
La disponibilité des modèles varie selon la région AWS. Consultez la page AWS Disponibilité régionale par modèle avant de sélectionner un fournisseur et un modèle. Pour GPT-6 Astra, reportez-vous à la page du modèle Bedrock pour GPT-6 Astra.
Disponibilité des fonctionnalités
Cette configuration prend en charge les workflows locaux de ChatGPT Work et de Codex. Les services hébergés ChatGPT Work sur le Web et Codex cloud, ainsi que les fonctionnalités qui dépendent de services cloud hébergés par OpenAI ou de la découverte gérée dans le cloud, ne sont actuellement pas disponibles. La recherche Web hébergée n’est pas disponible sur Runtime ; utilisez Mantle si vous en avez besoin.
Codex Security CLI utilise sa propre configuration de fournisseur. Suivez ses instructions de configuration pour Amazon Bedrock plutôt que les paramètres du client natif ci-dessus.
Disponibilité détaillée des fonctionnalités
* Cette fonctionnalité est actuellement limitée à certaines régions. Consultez la documentation de chaque fonctionnalité pour en savoir plus sur les restrictions régionales.
† Les bundles de plugins locaux et les plugins sélectionnés par OpenAI qui ne nécessitent pas d’authentification ChatGPT, dont Codex Security, sont disponibles. Les plugins qui nécessitent une authentification ChatGPT, des connecteurs ou un partage hébergé dans le cloud ne sont pas disponibles.
Résolution des problèmes
Si la configuration échoue, vérifiez les points suivants :
- L’identifiant du modèle correspond exactement à un modèle pris en charge.
- Vous utilisez le fournisseur de modèles adapté au point de terminaison :
amazon-bedrock-runtimepour le point de terminaison Runtime ouamazon-bedrockpour le point de terminaison Mantle. - Vous indiquez une région AWS dans laquelle le modèle est disponible.
- L’API key Bedrock ou les identifiants AWS sont valides et n’ont pas expiré.
- L’identité AWS dispose de l’autorisation d’accéder au modèle Bedrock sélectionné.
AWS_BEARER_TOKEN_BEDROCKne contient pas de clé expirée ou autre que celle prévue.- Pour utiliser l’application de bureau ou l’extension IDE, les variables d’environnement requises sont
présentes dans
~/.codex/.env.
Pour l’authentification par profil AWS SDK, exécutez aws sts get-caller-identity --profile codex-bedrock
pour confirmer l’identité du profil sélectionné. Remplacez codex-bedrock par
le nom de votre profil, ou omettez --profile si vous utilisez la chaîne d’identifiants par défaut.
Cette commande vérifie l’identité AWS, mais pas l’autorisation d’appeler un modèle Bedrock. Vérifiez
AWS_BEARER_TOKEN_BEDROCK séparément pour éviter qu’une API key autre que celle prévue ne sélectionne un
mode d’authentification différent.
Périmètre de l’assistance
L’assistance OpenAI peut vous aider à configurer le client ChatGPT Work et Codex, la configuration, le comportement local de CLI, celui de l’application de bureau, celui de l’extension IDE et l’expérience locale du produit.
Pour les identifiants AWS, les autorisations IAM, l’accès aux modèles Bedrock, les quotas, la facturation, la disponibilité régionale, les échecs de requêtes Bedrock, les journaux de service AWS ou le comportement du service Bedrock, contactez l’administrateur AWS du client ou l’assistance AWS.