Использование ChatGPT Work и Codex с Amazon Bedrock
Настройте локальные интерфейсы ChatGPT Work и Codex для использования моделей OpenAI, доступных через Amazon Bedrock.
Настройте локальные интерфейсы ChatGPT Work и Codex для использования моделей OpenAI, доступных через Amazon Bedrock. При такой конфигурации локальный клиент отправляет запросы к моделям в Bedrock, используя аутентификацию и средства управления доступом AWS.
Принцип работы
Если настроить Amazon Bedrock в качестве поставщика моделей для локального интерфейса ChatGPT Work или Codex, размещённый в OpenAI Responses API не участвует в обработке запросов. Локальный клиент отправляет запросы к моделям в Amazon Bedrock, а Bedrock предоставляет совместимую с OpenAI реализацию Responses API для поддерживаемых моделей OpenAI.
Перед началом работы
Убедитесь, что у вас есть:
- Учётные данные нужной учётной записи AWS.
- Доступ к поддерживаемым моделям OpenAI в Amazon Bedrock.
- Доступ к региону AWS, в котором доступна выбранная модель.
- Разрешение AWS на вызов выбранной модели или профиля инференса.
Проверьте требования IAM для конкретной модели. Например, для GPT-6 Sol через Runtime
также требуется bedrock:InvokeModel для проекта по умолчанию в учётной записи. См. инструкции AWS по настройке GPT-6 Sol.
Настройка поставщика
В Codex можно настроить поставщика, задав model_provider в ~/.codex/config.toml. Приложение ChatGPT для компьютера, Codex CLI, расширение IDE и SDK используют одни и те же уровни локальной конфигурации.
Выберите поставщика для нужной конечной точки Amazon Bedrock: Bedrock Runtime для межрегионального инференса (CRIS) или Bedrock Mantle для внутрирегионального инференса.
Для новых конфигураций используйте Bedrock Runtime:
model_provider = "amazon-bedrock-runtime"
web_search = "disabled"
Используйте Mantle для веб-поиска на стороне сервиса
Для конечной точки Bedrock Mantle:
model_provider = "amazon-bedrock"
web_search = "cached"Выбор модели
Codex использует настроенное значение model_provider, чтобы определить, какие модели отображаются в
списке выбора: модели, поддерживаемые через конечную точку Bedrock Runtime для
amazon-bedrock-runtime, либо через конечную точку Bedrock Mantle для
amazon-bedrock.
При необходимости вы можете указать поддерживаемую модель в файле конфигурации. Встроенный провайдер предоставляет собственный каталог моделей. При переключении конечных точек меняйте провайдера и любой явно указанный идентификатор модели одновременно.
Варианты аутентификации
Локальные интерфейсы ChatGPT Work и Codex поддерживают два способа аутентификации в Bedrock. Они проверяются в следующем порядке:
- API key Bedrock.
- Цепочка учётных данных AWS SDK.
Вариант 1: API key Bedrock
Задайте API key Bedrock в окружении, из которого локальный клиент считывает данные. При аутентификации с помощью API key необходимо указать регион.
export AWS_BEARER_TOKEN_BEDROCK=<your-bedrock-api-key>
export AWS_REGION=us-east-2В Windows PowerShell:
$env:AWS_BEARER_TOKEN_BEDROCK = "<your-bedrock-api-key>"
$env:AWS_REGION = "us-east-2"Вариант 2: учётные данные AWS SDK
Используйте этот способ, если ваша организация управляет доступом к Bedrock через цепочку учётных данных AWS SDK. Локальный клиент может использовать следующие стандартные источники учётных данных AWS SDK:
Общие файлы конфигурации AWS
Настройте общие файлы AWS config и credentials:
aws configureПеременные окружения
Задайте стандартные переменные окружения для учётных данных 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>Учётные данные AWS Management Console
Войдите с помощью учётных данных AWS Management Console:
aws loginAWS SSO или именованный профиль
Войдите с помощью AWS SSO и выберите именованный профиль:
aws sso login --profile codex-bedrock
export AWS_PROFILE=codex-bedrockФедеративное удостоверение
Для корпоративного SSO или федерации OIDC настройте федеративное удостоверение с помощью
credential_process вне локального клиента и позвольте AWS SDK определить
учётные данные. Вынесите вход через браузер, обмен токенами, кеширование и обновление в
вспомогательную программу credential_process профиля AWS.
Приложение для компьютера и расширение IDE
Настольные приложения и расширения IDE могут не наследовать переменные окружения из
оболочки. Укажите необходимые значения в ~/.codex/.env, затем перезапустите приложение или
расширение. В Windows путь по умолчанию — %USERPROFILE%\.codex\.env.
export AWS_BEARER_TOKEN_BEDROCK=<your-bedrock-api-key>
export AWS_REGION=us-east-2Проверка настройки
- В Codex CLI откройте
/statusи убедитесь, что поставщик модели соответствует вашей конечной точке:amazon-bedrockдля внутрирегионального инференса Mantle илиamazon-bedrock-runtimeдля глобального или географического межрегионального инференса Runtime. - В приложении ChatGPT для компьютера выберите Work или Codex и создайте новую задачу после перезапуска приложения.
- В расширении IDE начните новый сеанс после перезапуска расширения.
- Убедитесь, что выбранная модель доступна в настроенном регионе AWS, а удостоверение AWS имеет разрешение на доступ к ней.
Затем отправьте короткий запрос в новой задаче:
Reply with exactly: bedrock-okОжидаемый ответ — bedrock-ok. Проверьте провайдера и модель в клиенте: сам по себе ответ
не позволяет определить маршрут запроса. Для проверки готовности к внедрению используйте временную папку
с правами только на чтение и проверьте выполнение безвредной задачи с локальным инструментом и последующего
хода.
Поддерживаемые модели
Для поставщика Bedrock Runtime используйте ID профиля инференса, а для поставщика Bedrock Mantle — ID модели. Выбранная модель или профиль должны быть доступны в вашем регионе AWS и для вашего удостоверения AWS.
Глобальный и географический межрегиональный инференс через конечную точку Bedrock Runtime
Global CRIS может направлять запросы в поддерживаемые коммерческие регионы AWS по всему миру, а Geo CRIS направляет запросы в пределах географической области профиля. Выберите область маршрутизации, соответствующую вашим разрешениям AWS и требованиям к размещению данных.
Используйте model_provider = "amazon-bedrock-runtime" с необязательным параметром конфигурации model, заданным равным ID профиля инференса из следующих списков. Поставщик использует
https://bedrock-runtime.{region}.amazonaws.com/openai/v1, где {region} —
поддерживаемый исходный регион AWS, из которого вы отправляете запросы. Для глобального и географического CRIS используется один и тот же адрес конечной точки.
Глобальный CRIS
Поддерживаемые модели и ID профилей инференса:
- GPT-6 Astra:
global.openai.gpt-6-astra - GPT-6 Sol:
global.openai.gpt-6-sol - GPT-6 Luna:
global.openai.gpt-6-luna
Например, настройте Astra с глобальным CRIS в ~/.codex/config.toml:
model_provider = "amazon-bedrock-runtime"
model = "global.openai.gpt-6-astra"Географический CRIS для США
Поддерживаемые модели и ID профилей инференса:
- GPT-6 Astra:
us.openai.gpt-6-astra - GPT-6 Sol:
us.openai.gpt-6-sol - GPT-6 Luna:
us.openai.gpt-6-luna
Встроенный в Codex список выбора моделей Runtime содержит варианты Geo для США и Global.
Доступность моделей и CRIS зависит от исходного региона AWS. Перед выбором поставщика и модели ознакомьтесь со страницей AWS Поддерживаемые регионы и модели для профилей инференса, содержащей ссылки на точные ID профилей инференса и сведения о региональной доступности каждой модели, а также со страницей AWS Доступность моделей по регионам.
Внутрирегиональный инференс через конечную точку Bedrock Mantle
Используйте model_provider = "amazon-bedrock" с необязательным ID модели. Поставщик использует
https://bedrock-mantle.{region}.api.aws/openai/v1.
Поддерживаемые модели и ID моделей:
- GPT-6 Astra:
openai.gpt-6-astra - GPT-6 Sol:
openai.gpt-6-sol - GPT-6 Luna:
openai.gpt-6-luna
GPT-6 Sol и Luna доступны через Mantle в us-east-1 (N. Virginia).
Доступность моделей зависит от AWS Region. Перед выбором провайдера и модели см. AWS Regional availability by models. Для GPT-6 Astra см. страницу модели Bedrock для GPT-6 Astra.
Доступность функций
Эта конфигурация поддерживает локальные рабочие процессы ChatGPT Work и Codex. Облачные ChatGPT Work в браузере, Codex cloud и функции, зависящие от облачных сервисов OpenAI или обнаружения ресурсов под управлением облака, сейчас недоступны. Облачный веб-поиск недоступен в Runtime; используйте Mantle, если он вам нужен.
Codex Security CLI использует собственную конфигурацию провайдера. Следуйте инструкциям по настройке Amazon Bedrock для него вместо приведённых выше настроек нативного клиента.
Подробные сведения о доступности функций
* Сейчас функция доступна только в отдельных регионах. Подробнее о региональных ограничениях см. в документации соответствующей функции.
† Доступны локальные пакеты плагинов и отобранные OpenAI плагины, не требующие аутентификации ChatGPT, включая Codex Security. Плагины, требующие аутентификации ChatGPT, коннекторов или общего доступа через облако, недоступны.
Устранение неполадок
Если настройка не работает, проверьте следующее:
- ID модели в точности соответствует поддерживаемой модели.
- Вы используете правильного провайдера моделей для конечной точки:
amazon-bedrock-runtimeдля конечной точки Runtime илиamazon-bedrockдля конечной точки Mantle. - Вы указали регион AWS, в котором доступна модель.
- API key Bedrock или учётные данные AWS действительны, и срок их действия не истёк.
- У субъекта AWS есть разрешение на доступ к выбранной модели Bedrock.
- В
AWS_BEARER_TOKEN_BEDROCKне задан ключ с истёкшим сроком действия или непредусмотренный ключ. - При использовании настольного приложения или расширения для IDE необходимые переменные окружения
присутствуют в
~/.codex/.env.
При аутентификации через профиль AWS SDK выполните aws sts get-caller-identity --profile codex-bedrock,
чтобы подтвердить субъект, связанный с выбранным профилем. Замените codex-bedrock на
имя своего профиля или опустите --profile, если используете цепочку учётных данных по умолчанию.
Эта команда проверяет субъект AWS, а не разрешение на вызов модели Bedrock. Проверьте
AWS_BEARER_TOKEN_BEDROCK отдельно, чтобы непредусмотренный API key не привёл к выбору
другого способа аутентификации.
Границы поддержки
Служба поддержки OpenAI может помочь с настройкой клиента ChatGPT Work и Codex, конфигурацией, локальной работой CLI, работой приложения для компьютера, работой расширения IDE и локальным взаимодействием с продуктом.
По вопросам учётных данных AWS, разрешений IAM, доступа к моделям Bedrock, квот, выставления счетов, региональной доступности, сбоев запросов Bedrock, журналов служб AWS или работы службы Bedrock обращайтесь к администратору AWS клиента или в службу поддержки AWS.