Claude Code через Bedrock або Vertex AI: налаштування
Дізнайтеся, як підключити Claude Code до Amazon Bedrock або Google Vertex AI, які змінні середовища й облікові дані потрібні, хто платить і які функції недоступні.
Що змінюється, коли Claude Code працює у вашому власному хмарному обліковому записі
Claude Code можна запускати через Amazon Bedrock або Google Vertex AI. Для цього достатньо змінити дві або три змінні середовища та використати облікові дані хмари, які ваша команда вже має. Усе локальне працює так само: CLI, субагенти, hooks, skills, MCP servers і ваші файли CLAUDE.md. Змінюється лише виклик моделі. Разом із ним змінюються чотири речі: мережа, через яку проходить запит, обліковий запис, з якого стягується плата, моделі Claude, які вам дозволено викликати, і серверні функції, що взагалі доступні.
Питання зазвичай не в тому, чи це працює. Працює. Питання в тому, яка з цих чотирьох характеристик для вас найважливіша.
Три способи маршрутизації та вартість кожного
Пряме підключення до Anthropic за підпискою. Ви входите за допомогою облікового запису claude.ai з планом Pro, Max, Team або Enterprise. Запити надходять до API Anthropic. Ви платите за кожне місце, а використання обмежується лімітами плану, а не тарифікується за кількістю токенів. Це єдиний спосіб маршрутизації, який надає доступ до інтерфейсів, побудованих поверх облікового запису, зокрема Claude Code у вебі, мобільного застосунку, Desktop і Remote Control. Для команди план Claude Enterprise додатково надає єдиний вхід і централізовані налаштування політик.
Пряме підключення до Anthropic за API key. Ви створюєте ключ в Anthropic Console і платите за кількість токенів. Використовуються та сама інфраструктура і ті самі регіони, що й для підписки, але без плати за місця. Використання відображається у власній панелі Anthropic. Який із двох варіантів дешевший, залежить від того, скільки годин на день агент фактично працює. Саме цьому присвячено порівняння вартості API та підписки і матеріал про фактичну вартість Claude Code.
Стороння кінцева точка в Bedrock або Vertex. Модель обслуговує ваш власний обліковий запис AWS або Google Cloud. Під час виконання запитів Anthropic не бере участі в маршруті. Токени відображаються в рахунку, який ви вже отримуєте, а доступ контролюється наявними у вас політиками IAM (керування ідентифікацією та доступом) і журналами аудиту. Є ще два сторонні варіанти: Microsoft Foundry і Claude Platform on AWS. Вони працюють за тією самою схемою: одна змінна середовища вибирає провайдера, а витрати сплачує обліковий запис хмарної платформи.
Примітка щодо назв станом на August 2026: Google перейменувала Vertex AI на Google Cloud's Agent Platform. У документації Anthropic використовується нова назва, у запиті Claude Code для входу й досі зазначено Google Vertex AI, а змінні середовища й далі містять VERTEX.
Резиденція даних — справжня причина, чому команди так роблять
У Bedrock запит надходить до кінцевої точки Bedrock у вибраному вами регіоні AWS, у межах вашого облікового запису. Дані в стані спокою шифруються за допомогою AES-256 ключами під керуванням AWS. Ви також можете передати власний ключ через AWS KMS (сервіс керування ключами). У Vertex еквівалентом є ключі шифрування під керуванням Google; також доступні CMEK (ключі шифрування під керуванням клієнта). Доступ регулюється ролями IAM, які ви вже використовуєте, а виклики відображаються в CloudTrail або Cloud Audit Logs, як і будь-які інші виклики API. Для команди, яка працює в регульованій сфері, цього достатньо як обґрунтування, і це вагомий аргумент.
Два нюанси роблять цю гарантію менш абсолютною, ніж це випливає з маркетингових матеріалів.
Профіль міжрегіонального виведення не обмежується одним регіоном. У Bedrock Claude Code зіставляє вбудовані моделі за замовчуванням з ідентифікаторами профілів міжрегіонального виведення, а префікс визначається регіоном, який було вибрано: us. у регіоні us-*, eu. у регіоні eu-*, apac. у регіоні ap-* і us-gov. у GovCloud. Профіль міжрегіонального виведення може обробити запит з іншого регіону в межах відповідної географічної зони. Отже, гарантується географічна зона, а не конкретне місто. Якщо ваша вимога стосується одного регіону, спрямовуйте запити через профіль виведення застосунку, яким ви керуєте, і встановіть ANTHROPIC_MODEL на його ARN.
Частина трафіку все одно надходить до Anthropic, але ваш код до нього не належить. Телеметрію, звіти про помилки та команду /feedback за замовчуванням вимкнено і в Bedrock, і у Vertex, а /feedback записує архів у ~/.claude/feedback-bundles/ на вашому комп’ютері замість завантаження будь-яких даних. У кожного постачальника є два винятки. Перед отриманням URL інструмент WebFetch надсилає до api.anthropic.com ім’я хоста, і лише ім’я хоста, щоб перевірити його за списком блокування з міркувань безпеки. Опитування щодо якості сеансу також і надалі відображаються. Перше можна вимкнути за допомогою skipWebFetchPreflight у файлі налаштувань, а друге — за допомогою CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1. Щоб одразу вимкнути весь необов’язковий трафік, використайте CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC.
Щодо навчання моделей: за комерційними умовами Anthropic не навчає моделі на коді або промптах, надісланих через Claude Code, а використання сторонніх платформ є комерційним. Development Partner Program — програма згоди, яка дозволяє таке навчання, — взагалі недоступна користувачам Bedrock і Vertex. Нульове зберігання даних на цих кінцевих точках визначається вашою угодою з AWS або Google.
Використання Claude Code з Amazon Bedrock
Для кожного AWS-акаунта один раз потрібно виконати дві дії, перш ніж налаштовувати клієнт. Відкрийте консоль Amazon Bedrock, виберіть модель Anthropic у каталозі моделей і надішліть форму з описом сценарію використання: доступ надається одразу після надсилання. Потім додайте політику IAM, яка дозволяє виклики, що виконує Claude Code.
bedrock:InvokeModelbedrock:InvokeModelWithResponseStreambedrock:ListInferenceProfilesbedrock:GetInferenceProfile
ListInferenceProfiles дає Claude Code змогу під час запуску перевірити, які моделі ваш акаунт дійсно може викликати. GetInferenceProfile дає змогу зіставити ARN профілю inference для застосунку з базовою моделлю, яка за ним стоїть, щоб вибрати правильний формат запиту. Без цього запити все одно виконуються успішно, оскільки Claude Code один раз повторює спробу з іншим форматом. Симптомом є додатковий мережевий обмін для кожної нової моделі, а не помилка.
Найшвидше налаштувати клієнт можна за допомогою майстра. Виконайте claude, виберіть сторонню платформу, а потім Amazon Bedrock, або введіть /setup-bedrock у сеансі, де вже виконано вхід. Майстер читає профілі з каталогу ~/.aws, перевіряє, які моделі можна викликати, і записує результат у блок env файлу ~/.claude/settings.json, тому налаштування не залежить від профілю оболонки.
Для розгортання за сценарієм задайте змінні самостійно.
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1Облікові дані надходять зі стандартного ланцюжка облікових даних AWS SDK, тому тут працює все, що вже працює для CLI aws: aws configure, профіль SSO, роль, яку припущено, або ключ API Bedrock.
aws sso login --profile=your-profile-name
export AWS_PROFILE=your-profile-nameexport AWS_BEARER_TOKEN_BEDROCK=your-bedrock-api-keyBearer-токен є найпростішим варіантом, але поводитися з ним потрібно обережно, оскільки це довготривалий секрет, що зберігається у змінній середовища. На спільному сервері для складання надавайте перевагу ролі з обмеженим строком дії. Це саме міркування стосується будь-яких інших облікових даних, які може прочитати агент; цьому присвячено розділ як не допустити доступу AI-агента до секретів.
Проблема з регіоном. Claude Code визначає регіон у такому порядку: AWS_REGION, потім AWS_DEFAULT_REGION, потім region в активному профілі AWS, а потім us-east-1. Останній крок є значенням за замовчуванням, а не помилкою. Тому команда, яка ніде не вказала регіон і очікувала маршрутизацію через Європу, без попередження надсилає запити до регіону у США. Виконайте /status у Claude Code, щоб переглянути визначений регіон і джерело цього значення. Щоб перевірити, які виклики може виконувати ваш акаунт у певному регіоні, виконайте aws bedrock list-inference-profiles --region your-region.
Запуск Claude Code у Google Vertex AI
Увімкніть API та підготуйте облікові дані.
gcloud config set project YOUR-PROJECT-ID
gcloud services enable aiplatform.googleapis.com
gcloud auth application-default loginЗапросіть доступ до потрібних моделей Claude у Model Garden. Схвалення не відбувається миттєво, тому очікуйте від 24 до 48 годин. Надайте roles/aiplatform.user, яке містить дозвіл aiplatform.endpoints.predict, потрібний і для виклику моделей, і для підрахунку токенів.
Потім виберіть провайдера.
export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=global
export ANTHROPIC_VERTEX_PROJECT_ID=YOUR-PROJECT-IDCLOUD_ML_REGION приймає global, багаторегіональну локацію, наприклад eu або us, або окремий регіон. Глобальна кінцева точка забезпечує найкращу доступність, але дає найменше контролю над місцем обробки запиту. Тому вимога щодо локалізації даних зазвичай означає, що потрібно явно вказати локацію. Набір доступних моделей відрізняється для цих трьох варіантів. Якщо потрібна модель відсутня в глобальній кінцевій точці, зафіксуйте лише цю модель на певній локації за допомогою змінної VERTEX_REGION_CLAUDE_*, а для всіх інших залиште глобальну кінцеву точку. Перевіряйте актуальну сторінку локацій Vertex AI, а не застарілий список.
Пастка з проєктом. ANTHROPIC_VERTEX_PROJECT_ID має найнижчий пріоритет серед джерел ідентифікатора проєкту. GCLOUD_PROJECT, GOOGLE_CLOUD_PROJECT і файл облікових даних, указаний у GOOGLE_APPLICATION_CREDENTIALS, мають вищий пріоритет. Якщо на комп’ютері вже експортовано одну з цих змінних, витрати буде віднесено до іншого проєкту, а в поточному сеансі це ніяк не відображається.
Перевіряйте налаштування після кожної зміни провайдера. Виконайте /status: у рядку API provider указано Google Vertex AI, а рядки GCP project, Default region і Model показують, які значення фактично визначив Claude Code. Якщо рядок із провайдером відсутній, змінні не передаються процесу, оскільки їх експортовано в іншій оболонці, ніж та, з якої запущено claude. Перемістіть їх у блок env файлу налаштувань. Так ви також не передаватимете значення на кшталт AWS_PROFILE кожному іншому процесу, який запускаєте.
Які моделі ви отримуєте і наскільки пізно вони стають доступними
Такі псевдоніми, як sonnet і opus, не означають найновішу модель. На сторонньому endpoint вони розгортаються до вбудованої моделі за замовчуванням Claude Code для цього провайдера. Вона може відставати від поточного релізу й узагалі бути недоступною у вашому обліковому записі. Якщо модель за замовчуванням недоступна, Claude Code для цього сеансу переходить на старішу модель або модель нижчого класу та виводить повідомлення. Цей fallback не зберігається, тому наступний сеанс знову виконує спробу й знову виводить це повідомлення.
Для розгортання в команді зафіксуйте версії.
# Copy the exact IDs from your provider's own model catalog.
export ANTHROPIC_DEFAULT_OPUS_MODEL='<provider model id>'
export ANTHROPIC_DEFAULT_SONNET_MODEL='<provider model id>'
export ANTHROPIC_DEFAULT_HAIKU_MODEL='<provider model id>'Беріть ідентифікатори з огляду моделей і каталогу вашого провайдера, оскільки формат залежить від провайдера: Bedrock очікує ID профілю inference або ARN, а Vertex — просте ім’я моделі. Не копіюйте їх зі статті, зокрема з цієї. Фіксація версії також дає змогу контролювати витрати, оскільки основною моделлю за замовчуванням є модель класу Opus, а Opus коштує дорожче за токен, ніж Sonnet. Тому розгортання без зафіксованої моделі тарифікується за вищою ставкою. Щоб натомість зафіксувати одну модель як модель за замовчуванням для сеансу, задайте ANTHROPIC_MODEL її повним ID.
Доступність моделі є найочевиднішою відмінністю в цьому порівнянні. У власному API Anthropic модель працює в день релізу. У Bedrock і Vertex вона працює після того, як ваш хмарний провайдер увімкне її у вашому регіоні та надасть доступ вашому обліковому запису. У найкращому разі це відбувається через кілька днів, а іноді значно пізніше. Якщо частину роботи потрібно виконувати на найновішій моделі, залиште один маршрут, через який можна отримати до неї доступ. Саме це є практичною причиною для маршрутизації різних моделей до різних завдань.
Що недоступно в Bedrock і Vertex
Усе локальне працює з обома провайдерами: subagents, hooks, slash commands, skills, plugins, checkpoints, sandboxing, managed settings file і метрики OpenTelemetry. Обмеження стосуються лише серверної частини.
На обох endpoint недоступні: fast mode, Advisor, Channels, обмін повідомленнями між сесіями, аналітична панель і server-managed settings. Також недоступні всі функції, яким потрібен обліковий запис claude.ai. До них належать Claude Code on the web, мобільний застосунок, Desktop, Remote Control, routines і artifacts.
Лише в Bedrock: інструмента WebSearch там немає, тому Claude не може виконати пошук із сесії, спрямованої до Bedrock. Якщо надати URL, він усе одно може прочитати сторінку за допомогою WebFetch. У Vertex вебпошук працює для generation models Claude 4 і новіших.
Частково доступні в обох: auto mode працює лише з обмеженим набором новіших моделей, а /loop потребує явного інтервалу, оскільки не може вибрати його самостійно. Перш ніж обіцяти команді певну функцію, перевірте сторінку Anthropic доступності функцій, оскільки цей перелік змінюється.
На чий рахунок це нараховується
Підписка та endpoint стороннього постачальника — це окремі покупки. Жодна з них не замінює іншу.
Це важливо чітко зазначити, оскільки помилку легко не помітити. Якщо встановити CLAUDE_CODE_USE_BEDROCK=1 на машині, де ви також увійшли в обліковий запис із місцем Max, AWS тарифікуватиме кожен токен за ставками Bedrock. Щомісячна плата за місце продовжить нараховуватися, але не покриватиме жодного з цих запитів. Єдиного подання витрат також немає: витрати відображаються в AWS Cost Explorer або Google Cloud Billing, а панель аналітики Anthropic недоступна в обох постачальників. Команда /logout також зникає, оскільки сеансу Anthropic немає, який можна завершити. Облікові дані належать хмарному постачальнику.
Тарифи наведено на окремих сторінках постачальників, і вони змінюються. Тому переглядайте ціни Amazon Bedrock або ціни Vertex AI, а не покладайтеся на цифри зі статті. Один принцип залишається незмінним: у цих endpoint ви платите за інференс за кількістю токенів. Тому агент, який працює весь день, коштує відповідно до фактичного використання, без ліміту плану, який міг би зупинити витрати.
Ліміти швидкості та квоти працюють по-різному для кожного способу маршрутизації
У підписці ліміти належать обліковому запису, скидаються за розкладом, а після досягнення ліміту потрібно зачекати. Цю поведінку описано в принципі роботи лімітів використання.
Для ключа Anthropic API ліміти належать організації, визначаються кількістю запитів і токенів за хвилину та збільшуються відповідно до вашого рівня використання.
У Bedrock і Vertex ліміти є хмарними квотами. Вони визначаються на рівні облікового запису або проєкту, моделі та регіону й не пов’язані з жодним планом Anthropic. Код 429 означає, що обліковий запис досяг квоти для цієї моделі в цьому регіоні. Тому виправлення потрібно виконувати в консолі провайдера: подайте запит на збільшення квоти або перенесіть навантаження в регіон із доступним ресурсом. У Bedrock квота списується за правилом token burndown, а не за фіксованою кількістю запитів. Зарезервована ємність купується як provisioned throughput. У Vertex код 429 часто означає, що endpoint в одному регіоні не обслуговує одночасно основну модель і малу швидку модель. Саме тому CLOUD_ML_REGION=global є документованою початковою точкою. На сторінці Google про квоти описано подання запиту на збільшення.
Типові причини помилок і повідомлення, які ви побачите
Could not load the default credentials у Vertex. Application Default Credentials відсутні або термін їхньої дії минув. Виконайте gcloud auth application-default login або вкажіть у GOOGLE_APPLICATION_CREDENTIALS шлях до файлу ключа service account.
Помилка 404 із назвою моделі у Vertex. Модель не ввімкнена в Model Garden для цього проєкту або недоступна в указаній локації. Деякі моделі обслуговуються лише через глобальну кінцеву точку або multi-region локацію, наприклад eu, і ніколи не доступні в конкретному регіоні.
on-demand throughput isn't supported у Bedrock. Ви передали звичайний ID foundation model для моделі, яка обслуговується лише через inference profile. Використовуйте ID inference profile.
AWS default-chain credential resolve timed out. Один із кроків у ланцюжку облікових даних AWS завис. Найчастіше це credential_process helper, який очікує на введення, що не може бути отримане. Кожна спроба визначити облікові дані в ланцюжку завершується тайм-аутом через 60 секунд. Якщо ланцюжку справді потрібно більше часу, наприклад для браузерного SSO із MFA (багатофакторною автентифікацією) через wrapper, збільште ліміт у мілісекундах за допомогою CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS.
Помилка під час запуску Bedrock streaming response has content-type. Щось між Claude Code і Bedrock змінює потік даних. Bedrock передає потоки у двійковому форматі event-stream із типом вмісту application/vnd.amazon.eventstream, тому gateway, який повторно передає його як server-sent events, повертає тіло відповіді, яке Claude Code не може декодувати. Налаштуйте gateway так, щоб він передавав тіло відповіді та його заголовок Content-Type без змін.
Вкладки браузера відкриваються в циклі під час AWS SSO. Корпоративний VPN або проксі з TLS inspection перериває вхід, Claude Code сприймає розірване з’єднання як помилку автентифікації, повторно запускає команду awsAuthRefresh, і цикл триває без кінця. Видаліть awsAuthRefresh із файлу налаштувань і вручну виконайте aws sso login перед запуском Claude Code.
Вибір маршрутизації
Оберіть пряме підключення до Anthropic, якщо вам потрібні нові моделі в день їхнього запуску та повний набір функцій. Використовуйте API key, якщо вам потрібна оплата за кожен токен без придбання місць. Оберіть Bedrock або Vertex, якщо інференс має виконуватися в хмарному акаунті, яким ви вже керуєте, і ви готові прийняти повільніший цикл випуску моделей та коротший список функцій як компроміс. Варто додати в закладки власні сторінки Anthropic для Amazon Bedrock і Google Vertex AI, а також список AWS із моделями за регіонами.
Жоден із цих трьох варіантів не змінює місце виконання самого агента. Claude Code — це локальний процес, який читає ваші файли та виконує ваші команди, незалежно від того, який endpoint відповідає на його запити. Тому команди, яким потрібно запускати його не на ноутбуці, розміщують агента для написання коду на VPS і експортують там ці самі змінні.
FAQ
Чи оплачує моя підписка Claude використання Claude Code у Bedrock або Vertex?
Ні. Підписка Pro, Max, Team або Enterprise і стороння кінцева точка — це окремі покупки, і жодна з них не покриває іншу. Якщо встановлено CLAUDE_CODE_USE_BEDROCK=1 або CLAUDE_CODE_USE_VERTEX=1, кожен токен тарифікує AWS або Google Cloud за власними ставками, і витрати потрапляють до рахунку відповідної хмарної платформи, тоді як плата за підписку продовжує щомісяця стягуватися за доступні в її межах інтерфейси. Відстеження витрат також переноситься до AWS Cost Explorer або Google Cloud Billing, оскільки аналітична панель Anthropic недоступна в обох провайдерів.
До якого регіону Claude Code надсилає мої запити в Amazon Bedrock?
До регіону, який він визначив. Його покаже /status. Claude Code спочатку перевіряє AWS_REGION, потім AWS_DEFAULT_REGION, а потім region в активному профілі AWS. Якщо жодне з них не задано, використовується us-east-1. Вбудовані моделі за замовчуванням після цього перетворюються на профілі міжрегіонального виведення з префіксом, що відповідає цьому регіону, наприклад us. або eu.. Профіль міжрегіонального виведення може обробити запит з іншого регіону в межах тієї самої географічної зони. Якщо обов’язково потрібно використовувати один визначений регіон, створіть власний профіль виведення застосунку та задайте ANTHROPIC_MODEL його ARN.
Чому в моєму обліковому записі Bedrock або Vertex немає найновішої моделі Claude?
Тому що кожен хмарний провайдер відкриває доступ до моделей за власним графіком, а ваш обліковий запис додатково має отримати відповідний дозвіл. У Vertex доступ запитується в Model Garden, і схвалення може тривати від 24 до 48 годин. До цього моменту псевдоніми на кшталт sonnet і opus посилаються на вбудовану модель Claude Code за замовчуванням для цього провайдера. Якщо ця модель недоступна у вашому обліковому записі, Claude Code для поточного сеансу переходить на старішу модель або модель нижчого рівня та показує повідомлення. Зафіксуйте ANTHROPIC_DEFAULT_SONNET_MODEL і пов’язані з ним параметри на ідентифікаторах, доступність яких ви підтвердили.
Чи доступний вебпошук у Claude Code на Amazon Bedrock?
Ні. Інструмент WebSearch недоступний у Bedrock, тому Claude не може виконати пошук із сеансу, маршрутизованого туди. Він усе ще може прочитати конкретну сторінку за допомогою WebFetch, якщо ви надасте URL. У Google Vertex AI вебпошук працює для моделей покоління Claude 4 і новіших. Це одна з небагатьох відмінностей у можливостях на користь Vertex.
Чи потрібен обліковий запис Anthropic для запуску Claude Code у Bedrock або Vertex?
Ні. Для автентифікації використовується обліковий запис AWS або облікові дані Google Cloud, тому /logout недоступний в обох провайдерів. Незалежно від вибраного провайдера, з Anthropic залишається одне з’єднання: перед отриманням URL інструмент WebFetch надсилає hostname, і лише hostname, до api.anthropic.com, щоб перевірити його за списком блокування з міркувань безпеки. Щоб вимкнути цю перевірку, задайте skipWebFetchPreflight у файлі налаштувань. Якщо ви все одно хочете обмежити домени, до яких Claude може звертатися, поєднайте це з правилами дозволів WebFetch.