Claude Code di Amazon Bedrock
Pelajari tentang mengonfigurasi Claude Code melalui Amazon Bedrock, termasuk pengaturan, konfigurasi IAM, dan pemecahan masalah.
export const ContactSalesCard = ({surface}) => {
const utm = content => utm_source=claude_code&utm_medium=docs&utm_content=${surface}_${content};
const iconArrowRight = (size = 13) => ;
const STYLES = .cc-cs { --cs-slate: #141413; --cs-clay: #d97757; --cs-clay-deep: #c6613f; --cs-gray-000: #ffffff; --cs-gray-700: #3d3d3a; --cs-border-default: rgba(31, 30, 29, 0.15); font-family: inherit; } .dark .cc-cs { --cs-slate: #f0eee6; --cs-gray-000: #262624; --cs-gray-700: #bfbdb4; --cs-border-default: rgba(240, 238, 230, 0.14); } .cc-cs-card { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 16px; margin: 0; background: var(--cs-gray-000); border: 0.5px solid var(--cs-border-default); border-radius: 8px; flex-wrap: wrap; } .cc-cs-text { font-size: 13px; color: var(--cs-gray-700); line-height: 1.5; flex: 1; min-width: 240px; } .cc-cs-text strong { font-weight: 550; color: var(--cs-slate); } .cc-cs-actions { display: flex; align-items: center; gap: 8px; flex-shrink: 0; } .cc-cs-btn-clay { display: inline-flex; align-items: center; gap: 8px; background: var(--cs-clay-deep); color: #fff; border: none; border-radius: 8px; padding: 8px 14px; font-size: 13px; font-weight: 500; transition: background-color 0.15s; white-space: nowrap; } .cc-cs-btn-clay:hover { background: var(--cs-clay); } .cc-cs-btn-ghost { display: inline-flex; align-items: center; gap: 8px; background: transparent; color: var(--cs-gray-700); border: 0.5px solid var(--cs-border-default); border-radius: 8px; padding: 8px 14px; font-size: 13px; font-weight: 500; } .cc-cs-btn-ghost:hover { background: rgba(0, 0, 0, 0.04); } .dark .cc-cs-btn-ghost:hover { background: rgba(255, 255, 255, 0.04); } @media (max-width: 720px) { .cc-cs-actions { width: 100%; } };
return
https://claude.com/pricing?${utm('view_plans')}#plans-business} className="cc-cs-btn-ghost">
View plans
<a href={https://claude.com/contact-sales?${utm('contact_sales')}} className="cc-cs-btn-clay">
Contact sales {iconArrowRight()}
Prasyarat
Sebelum mengonfigurasi Claude Code dengan Amazon Bedrock, pastikan Anda memiliki:
- Akun AWS dengan akses Amazon Bedrock yang diaktifkan
- Akses ke model Claude yang diinginkan (misalnya, Claude Sonnet 4.6) di Amazon Bedrock
- AWS CLI terinstal dan dikonfigurasi (opsional - hanya diperlukan jika Anda tidak memiliki mekanisme lain untuk mendapatkan kredensial)
- Izin IAM yang sesuai
Untuk masuk dengan kredensial Amazon Bedrock Anda sendiri, ikuti Masuk dengan Amazon Bedrock di bawah ini. Untuk menerapkan Claude Code di seluruh tim, gunakan langkah pengaturan manual dan pin versi model Anda sebelum melakukan peluncuran.
Masuk dengan Bedrock
Jika Anda memiliki kredensial AWS dan ingin mulai menggunakan Claude Code melalui Amazon Bedrock, wizard login akan memandu Anda melaluinya. Anda menyelesaikan prasyarat sisi AWS sekali per akun; wizard menangani sisi Claude Code.
Aktifkan model Anthropic di akun AWS Anda
Di konsol Amazon Bedrock, buka katalog Model, pilih model Anthropic, dan kirimkan formulir kasus penggunaan. Akses diberikan segera setelah pengiriman. Lihat Kirimkan detail kasus penggunaan untuk AWS Organizations dan konfigurasi IAM untuk izin yang dibutuhkan peran Anda.
Mulai Claude Code dan pilih Amazon Bedrock
Jalankan claude. Pada prompt login, pilih platform pihak ketiga, kemudian Amazon Bedrock. Jika Anda sudah masuk dan melihat prompt chat sebagai gantinya, jalankan /setup-bedrock untuk membuka wizard. Sampai CLAUDE_CODE_USE_BEDROCK=1 diatur, Claude Code menyembunyikan perintah dari menu perintah; ketikkan secara lengkap.
Ikuti prompt wizard
Pilih cara Anda mengautentikasi ke AWS: profil AWS yang terdeteksi dari direktori ~/.aws Anda, kunci API Amazon Bedrock, kunci akses dan rahasia, atau kredensial yang sudah ada di lingkungan Anda. Wizard menanyakan wilayah Anda, memverifikasi model Claude mana yang dapat dijalankan akun Anda, dan memungkinkan Anda menyematkannya. Ini menyimpan hasilnya ke blok env dari file pengaturan pengguna Anda, sehingga Anda tidak perlu mengekspor variabel lingkungan sendiri.
Setelah Anda masuk, jalankan /setup-bedrock kapan saja untuk membuka kembali wizard dan mengubah kredensial, wilayah, atau pin model Anda. Langkah pin model dimulai dari model yang saat ini disematkan. Wizard menulis ke ~/.claude/settings.json, atau ke $CLAUDE_CONFIG_DIR/settings.json ketika CLAUDE_CONFIG_DIR diatur.
Atur secara manual
Untuk mengonfigurasi Amazon Bedrock melalui variabel lingkungan alih-alih wizard, misalnya dalam CI atau peluncuran perusahaan yang disertakan skrip, ikuti langkah-langkah di bawah ini.
1. Kirimkan detail kasus penggunaan
Sebelum Anda memanggil model Anthropic untuk pertama kalinya, kirimkan detail kasus penggunaan. Anda melakukan ini sekali per akun AWS.
- Pastikan Anda memiliki izin IAM yang tepat seperti dijelaskan di bawah
- Navigasikan ke konsol Amazon Bedrock
- Pilih model Anthropic dari Model catalog
- Lengkapi formulir kasus penggunaan. Akses diberikan segera setelah pengajuan.
Jika Anda menggunakan AWS Organizations, Anda dapat mengirimkan formulir sekali dari akun manajemen menggunakan PutUseCaseForModelAccess API. Panggilan ini memerlukan izin IAM bedrock:PutUseCaseForModelAccess. Persetujuan diperluas ke akun anak secara otomatis.
2. Konfigurasi kredensial AWS
Claude Code menggunakan rantai kredensial SDK AWS default. Atur kredensial Anda menggunakan salah satu metode berikut:
Opsi A: Konfigurasi AWS CLI
aws configure
Opsi B: Variabel lingkungan (kunci akses)
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
Opsi C: Variabel lingkungan (profil SSO)
Ganti your-profile-name dengan nama profil AWS Anda sebelum menjalankan perintah ini.
aws sso login --profile=your-profile-name
export AWS_PROFILE=your-profile-name
Claude Code meminta kredensial peran dari wilayah IAM Identity Center yang dinamai oleh sso_region profil, yang tidak perlu cocok dengan wilayah tempat Anda menjalankan Amazon Bedrock. Dalam v2.1.207, wilayah Amazon Bedrock menimpa sso_region, jadi profil yang instance IAM Identity Center-nya berada di wilayah berbeda gagal untuk mengautentikasi dengan kesalahan Session token not found or invalid.
Opsi D: Kredensial Konsol Manajemen AWS
aws login
Pelajari lebih lanjut tentang aws login.
Opsi E: Kunci API Amazon Bedrock
export AWS_BEARER_TOKEN_BEDROCK=your-bedrock-api-key
Kunci API Amazon Bedrock menyediakan metode autentikasi yang lebih sederhana tanpa memerlukan kredensial AWS lengkap. Pelajari lebih lanjut tentang kunci API Amazon Bedrock.
Penyimpanan kredensial dan batas waktu resolusi
Claude Code menyelesaikan rantai penyedia kredensial default AWS sekali dan menyimpan kredensial yang diselesaikan dalam memori. Kredensial tersebut digunakan kembali hingga lima menit sebelum kedaluwarsa, atau selama satu jam ketika tidak memiliki kedaluwarsa, jadi profil yang didukung SSO meminta kredensial dari IAM Identity Center sekitar sekali per masa hidup kredensial. Kesalahan kredensial dari API menghapus cache, dan percobaan ulang menyelesaikan kredensial segar. Memerlukan Claude Code v2.1.207 atau lebih baru.
Cache mencakup setiap opsi kredensial di atas kecuali kunci API Amazon Bedrock, yang tidak menggunakan rantai penyedia. Untuk menyelesaikan rantai pada setiap permintaan, atur CLAUDE_CODE_SKIP_AWS_CRED_CACHE=1.
Setiap resolusi rantai habis waktu setelah 60 detik. Jika langkah dalam rantai terhenti, misalnya pembantu credential_process yang menunggu input yang tidak dapat diterima, permintaan gagal dengan AWS default-chain credential resolve timed out. Jika rantai Anda menjalankan masuk interaktif yang secara sah memerlukan waktu lebih lama, seperti SSO berbasis browser dengan MFA melalui pembungkus seperti aws-vault, naikkan batas dalam milidetik dengan CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS. Sebelum v2.1.207, resolusi kredensial yang terhenti membiarkan permintaan menunggu tanpa batas.
Kecuali ketika Anda mengautentikasi dengan kunci API Amazon Bedrock, wizard pengaturan menerapkan batas yang sama untuk setiap panggilan AWS yang dilakukannya saat memverifikasi kredensial Anda, dan untuk pencarian kredensial sebelum setiap pemeriksaan model. Selama verifikasi kredensial, pemeriksaan yang melampaui batas gagal dengan Timed out after 60s waiting for AWS.
Konfigurasi kredensial lanjutan
Claude Code mendukung penyegaran kredensial otomatis untuk AWS SSO dan penyedia identitas perusahaan. Tambahkan pengaturan ini ke file pengaturan Claude Code Anda (lihat Settings untuk lokasi file).
Dua pengaturan ini memiliki kondisi pemicu yang berbeda:
awsAuthRefresh: berjalan hanya ketika Claude Code mendeteksi bahwa kredensial AWS Anda kedaluwarsa, baik secara lokal berdasarkan stempel waktu mereka atau ketika API mengembalikan kesalahan kredensial, kemudian mencoba ulang permintaan dengan kredensial yang disegarkan.awsCredentialExport: berjalan pada awal sesi dan pada setiap pemuatan ulang kredensial, bahkan ketika kredensial dalam rantai penyedia kredensial default AWS Anda masih berlaku. Gunakan ini ketika akun Amazon Bedrock Anda memerlukan kredensial lintas akun yang berbeda dari yang akan diselesaikan oleh rantai penyedia default.
Sebelum menjalankan perintah awsAuthRefresh, Claude Code membuat panggilan STS GetCallerIdentity untuk mengonfirmasi bahwa kredensial Anda benar-benar kedaluwarsa, dan melewati perintah ketika kredensial masih berfungsi. Claude Code mengirim pemeriksaan ini melalui konfigurasi proxy Anda, menghormati HTTPS_PROXY dan NO_PROXY. Sebelum v2.1.239, Claude Code mengirim pemeriksaan ini secara langsung dan tergantung pada startup di jaringan yang hanya memungkinkan keluar melalui proxy.
Contoh konfigurasi
{
"awsAuthRefresh": "aws sso login --profile myprofile",
"env": {
"AWS_PROFILE": "myprofile"
}
}
Pengaturan konfigurasi dijelaskan
awsAuthRefresh: Gunakan ini untuk perintah yang memodifikasi direktori .aws, seperti memperbarui kredensial, cache SSO, atau file konfigurasi. Output perintah ditampilkan kepada pengguna, tetapi input interaktif tidak didukung. Ini bekerja dengan baik untuk alur SSO berbasis browser di mana CLI menampilkan URL atau kode dan Anda menyelesaikan autentikasi di browser.
awsCredentialExport: Hanya gunakan ini jika Anda tidak dapat memodifikasi .aws dan harus secara langsung mengembalikan kredensial. Output ditangkap secara diam-diam dan tidak ditampilkan kepada pengguna. Perintah harus menampilkan JSON dalam format ini:
{
"Credentials": {
"AccessKeyId": "value",
"SecretAccessKey": "value",
"SessionToken": "value",
"Expiration": "2026-01-01T00:00:00Z"
}
}
Mulai dari Claude Code v2.1.181, output datar dari aws configure export-credentials --format process juga diterima, dengan kunci yang sama di tingkat atas alih-alih bersarang di bawah Credentials.
Expiration bersifat opsional. Mulai dari Claude Code v2.1.176, ketika perintah mengembalikan Expiration ISO 8601 yang valid, Claude Code menyimpan kredensial dalam cache hingga lima menit sebelum waktu itu. Tanpanya, atau pada versi sebelumnya, kredensial disimpan dalam cache selama satu jam.
Ketika Anda mengonfigurasi awsCredentialExport tanpa awsAuthRefresh, Claude Code menggunakan kredensial yang diekspor secara langsung dan tidak menyelesaikan kembali rantai penyedia kredensial default AWS pada startup. Memerlukan Claude Code v2.1.206 atau lebih baru.
3. Konfigurasi Claude Code
Atur variabel lingkungan berikut untuk mengaktifkan Amazon Bedrock:
# Enable Bedrock integration
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1 # optional if your AWS profile already sets a region
# Optional: Override the AWS region for the small/fast model (Bedrock and Mantle).
# On Bedrock, has no effect without ANTHROPIC_DEFAULT_HAIKU_MODEL
# or the deprecated ANTHROPIC_SMALL_FAST_MODEL set.
export ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION=us-west-2
# Optional: Override the Bedrock endpoint URL for custom endpoints or gateways
# export ANTHROPIC_BEDROCK_BASE_URL=https://bedrock-runtime.us-east-1.amazonaws.com
Saat mengaktifkan Amazon Bedrock untuk Claude Code, perhatikan hal berikut:
-
Anda hanya perlu mengatur
AWS_REGIONuntuk menimpa wilayah profil AWS Anda atau ketika profil Anda tidak memiliki wilayah. Claude Code menyelesaikan wilayah dalam urutan ini:AWS_REGIONAWS_DEFAULT_REGIONregionyang ditetapkan pada profil AWS aktif Anda, dibaca dari file kredensial bersama AWS terlebih dahulu dan kemudian file konfigurasi bersama, mencocokkan prioritas SDK AWSus-east-1
Jika nilai dari salah satu sumber ini tidak berbentuk seperti nama wilayah, Claude Code memperlakukannya sebagai tidak diatur dan melanjutkan ke bawah urutan. Misalnya, Claude Code memperlakukan nilai yang berisi garis miring, titik, atau spasi sebagai tidak diatur.
Profil aktif adalah
AWS_PROFILEjika diatur, jika tidakdefault. AturAWS_SHARED_CREDENTIALS_FILEatauAWS_CONFIG_FILEuntuk menunjuk ke jalur file non-default.Jalankan
/statusuntuk melihat wilayah yang diselesaikan. Ketika wilayah berasal dari file konfigurasi AWS Anda atau fallback default, Claude Code juga mencatat sumber dalam output/status. -
Saat menggunakan Amazon Bedrock, perintah
/logouttidak tersedia karena autentikasi ditangani melalui kredensial AWS. -
Alat WebSearch tidak tersedia di Amazon Bedrock. Lihat perilaku alat WebSearch.
-
Anda dapat menggunakan file pengaturan untuk variabel lingkungan seperti
AWS_PROFILEyang tidak ingin Anda bocorkan ke proses lain. Lihat Settings untuk informasi lebih lanjut.
4. Pin versi model
Pin versi model spesifik saat menerapkan ke beberapa pengguna. Tanpa pinning, alias model seperti sonnet dan opus diselesaikan ke default bawaan Claude Code untuk Amazon Bedrock, yang dapat tertinggal dari rilis terbaru dan mungkin belum tersedia di akun Anda. Claude Code kembali ke model yang lebih awal atau tingkat lebih rendah pada startup ketika default tidak tersedia, tetapi pinning memungkinkan Anda mengontrol kapan pengguna Anda pindah ke model baru.
Atur variabel lingkungan ini ke ID model Amazon Bedrock spesifik.
Tanpa ANTHROPIC_DEFAULT_OPUS_MODEL, alias opus di Amazon Bedrock diselesaikan ke Opus 5, dan tanpa ANTHROPIC_DEFAULT_SONNET_MODEL, alias sonnet diselesaikan ke Sonnet 4.5. Contoh ini pin setiap alias ke versi spesifik:
export ANTHROPIC_DEFAULT_OPUS_MODEL='us.anthropic.claude-opus-4-8'
export ANTHROPIC_DEFAULT_SONNET_MODEL='us.anthropic.claude-sonnet-4-6'
export ANTHROPIC_DEFAULT_HAIKU_MODEL='us.anthropic.claude-haiku-4-5-20251001-v1:0'
ID ini menggunakan awalan profil inferensi lintas wilayah us.. Jika Anda menggunakan awalan wilayah berbeda atau profil inferensi aplikasi, sesuaikan sesuai kebutuhan. Di wilayah AWS GovCloud, gunakan awalan us-gov..
Untuk menyimpan model default bawaan dan mengubah hanya awalan pilihan mereka, atur ANTHROPIC_BEDROCK_REGION_PREFIX alih-alih pinning. Perbedaannya ditunjukkan dalam apa yang alias opus diselesaikan ke:
| Anda atur | Alias opus diselesaikan ke |
|---|---|
ANTHROPIC_DEFAULT_OPUS_MODEL='us.anthropic.claude-opus-4-8' |
us.anthropic.claude-opus-4-8, ID tepat yang Anda pin |
ANTHROPIC_BEDROCK_REGION_PREFIX=eu |
eu.anthropic.claude-opus-5, default bawaan dengan awalan pilihan Anda |
Untuk ID model saat ini dan warisan, lihat Models overview. Untuk daftar lengkap variabel lingkungan pinning, lihat Model configuration.
Claude Code menggunakan model default ini ketika tidak ada variabel pinning yang diatur:
| Jenis model | Model default |
|---|---|
| Model utama | Opus 5, misalnya us.anthropic.claude-opus-5 di wilayah us-* |
| Model kecil/cepat | Sonnet 4.5, misalnya us.anthropic.claude-sonnet-4-5-20250929-v1:0 di wilayah us-* |
Tugas latar belakang seperti pembuatan judul sesi menggunakan model kecil/cepat, biasanya model kelas Haiku. Di Amazon Bedrock, Claude Code menggunakan model Sonnet default untuk tugas latar belakang karena Haiku mungkin tidak diaktifkan di setiap akun atau wilayah. Dua pilihan mengubah model mana yang membawanya:
- Ketika Anda memilih model utama dengan
--model,ANTHROPIC_MODEL, atau pengaturanmodel, tugas latar belakang menggunakan model itu. Ketika Claude Code memulai sesi pada model yang Anda atur denganANTHROPIC_DEFAULT_MODEL, tugas latar belakang juga menggunakan model itu. PengaturanANTHROPIC_DEFAULT_OPUS_MODELtanpaANTHROPIC_DEFAULT_SONNET_MODELjuga dihitung sebagai pilihan, karena model Sonnet bawaan mungkin tidak diaktifkan di akun yang mengarahkan Opus-nya sendiri. - Untuk menggunakan Haiku untuk tugas latar belakang, atur
ANTHROPIC_DEFAULT_HAIKU_MODELke ID model yang tersedia di akun Anda.
Model Opus memiliki harga per-token yang lebih tinggi daripada model Sonnet, jadi penerapan yang tidak pin model utama ditagih dengan tarif Opus setelah diperbarui ke v2.1.207 atau lebih baru. Untuk menyimpan Sonnet 4.5 sebagai model utama, atur ANTHROPIC_MODEL ke ID model lengkapnya. Penerapan yang mengarahkan default dengan ANTHROPIC_DEFAULT_SONNET_MODEL dan tidak mengatur ANTHROPIC_DEFAULT_OPUS_MODEL menyimpan model Sonnet yang diarahkan sebagai default.
Pada v2.1.207 melalui v2.1.218, model utama di Amazon Bedrock default ke Opus 4.8 dan alias opus diselesaikan ke Opus 4.8. Sebelum v2.1.207, model utama default ke Sonnet 4.5, alias opus diselesaikan ke Opus 4.6, dan tugas latar belakang selalu menggunakan model utama.
Untuk menyesuaikan model lebih lanjut, gunakan salah satu metode ini:
# Using inference profile ID
export ANTHROPIC_MODEL='us.anthropic.claude-sonnet-4-6'
export ANTHROPIC_DEFAULT_HAIKU_MODEL='us.anthropic.claude-haiku-4-5-20251001-v1:0'
# Using application inference profile ARN
export ANTHROPIC_MODEL='arn:aws:bedrock:us-east-2:your-account-id:application-inference-profile/your-model-id'
# Optional: Disable prompt caching if needed
# export DISABLE_PROMPT_CACHING=1
# Optional: Request 1-hour prompt cache TTL instead of the 5-minute default
# export ENABLE_PROMPT_CACHING_1H=1
TTL cache 1 jam ditagih dengan tarif lebih tinggi daripada default 5 menit. Lihat cache lifetime. Untuk menetapkan TTL berbeda untuk percakapan utama Anda dan untuk permintaan yang Claude Code buat di luar itu, pilih TTL sendiri.
Prompt caching mungkin tidak tersedia di semua wilayah Amazon Bedrock. Jika hitungan token cache tetap di nol, periksa model, wilayah, dan batas yang didukung dalam dokumentasi Amazon Bedrock.
Petakan setiap versi model ke profil inferensi
Variabel lingkungan ANTHROPIC_DEFAULT_*_MODEL mengonfigurasi satu profil inferensi per keluarga model. Jika organisasi Anda perlu mengekspos beberapa versi keluarga yang sama di pemilih /model, masing-masing dirutekan ke ARN profil inferensi aplikasi sendiri, gunakan pengaturan modelOverrides dalam file pengaturan Anda.
Contoh ini memetakan empat versi Opus ke ARN yang berbeda sehingga pengguna dapat beralih di antara mereka tanpa melewati profil inferensi organisasi Anda:
{
"modelOverrides": {
"claude-opus-4-7": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-47-prod",
"claude-opus-4-6": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-46-prod",
"claude-opus-4-5-20251101": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-45-prod",
"claude-opus-4-1-20250805": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-41-prod"
}
}
Ketika pengguna memilih salah satu versi ini di /model, Claude Code memanggil Amazon Bedrock dengan ARN yang dipetakan. Pemetaan yang sama berlaku ketika Anda meneruskan ID model Anthropic secara langsung melalui --model atau ANTHROPIC_MODEL. Versi tanpa override kembali ke ID model Amazon Bedrock bawaan atau profil inferensi yang cocok yang ditemukan pada startup. Sebelum v2.1.200, nilai --model dan ANTHROPIC_MODEL mencapai Amazon Bedrock apa adanya tanpa melewati peta override. Lihat Override model IDs per version untuk detail tentang bagaimana override berinteraksi dengan availableModels dan pengaturan model lainnya.
Pemeriksaan model startup
Ketika Claude Code dimulai dengan Amazon Bedrock yang dikonfigurasi, Claude Code memverifikasi bahwa model yang dimaksudkan untuk digunakan dapat diakses di akun Anda.
Jika Anda telah menyematkan versi model yang lebih lama dari default Claude Code saat ini, dan akun Anda dapat memanggil versi yang lebih baru, Claude Code akan meminta Anda untuk memperbarui pin. Menerima akan menulis ID model baru ke file pengaturan pengguna Anda dan memulai ulang Claude Code. Menolak akan diingat hingga perubahan versi default berikutnya. Pin yang menunjuk ke profil inferensi aplikasi ARN dilewati, karena dikelola oleh administrator Anda.
Jika Anda belum menyematkan model dan default saat ini tidak tersedia di akun Anda, Claude Code akan kembali untuk sesi saat ini dan menampilkan pemberitahuan. Claude Code mencoba versi sebelumnya dari model default terlebih dahulu dan, ketika default adalah model Opus dan tidak ada versi Opus yang tersedia, kembali ke model Sonnet default. Fallback tidak disimpan. Aktifkan model yang lebih baru di akun Amazon Bedrock Anda atau sematkan versi untuk membuat pilihan permanen.
Ketika Anda memulai sesi pada versi Sonnet atau Opus tertentu, misalnya dengan --model, ANTHROPIC_MODEL, atau pengaturan model, versi tersebut bertindak sebagai default yang disematkan sesi untuk alias sonnet atau opus yang cocok. Claude Code melewati pemeriksaan ketersediaan untuk default bawaan yang diganti model Anda dan dimulai pada model yang Anda konfigurasi, tanpa pemberitahuan fallback.
Alias model seperti opus tidak bertindak sebagai pin, begitu juga ID model yang tidak dikenali Claude Code, seperti profil inferensi aplikasi ARN.
Prefiks profil inferensi lintas wilayah
Pada Amazon Bedrock Invoke API, Claude Code menyelesaikan model default bawaan ke ID profil inferensi lintas wilayah; untuk merutekan versi model melalui profil inferensi Anda sendiri, lihat Petakan setiap versi model ke profil inferensi. Tabel ini menunjukkan prefiks yang disukai Claude Code untuk setiap wilayah AWS yang diselesaikan:
| Wilayah AWS | Prefiks |
|---|---|
us-gov-* (AWS GovCloud) |
us-gov. |
us-* |
us. |
eu-* |
eu. |
ap-* |
apac. |
| Semua wilayah lainnya | global. |
Atur ANTHROPIC_BEDROCK_REGION_PREFIX untuk memilih prefiks yang dicoba Claude Code terlebih dahulu; ketika Claude Code dapat memeriksa ketersediaan profil dan menemukan tidak ada profil yang cocok untuk model, Claude Code kembali seperti yang dijelaskan dalam urutan resolusi di bawah. Nilai yang valid adalah us, eu, apac, jp, au, dan global. Misalnya, atur ke global ketika akun Anda memiliki profil global. diaktifkan tetapi Claude Code akan menurunkan satu yang spesifik geografis dari wilayah AWS Anda. Memerlukan Claude Code v2.1.224 atau lebih baru.
Contoh ini merutekan model default melalui profil global.:
export ANTHROPIC_BEDROCK_REGION_PREFIX=global
# Di wilayah us-*, model utama sekarang diselesaikan ke
# global.anthropic.claude-opus-5 bukan us.anthropic.claude-opus-5
Prefiks yang disukai adalah preferensi, bukan jaminan, baik itu berasal dari wilayah Anda atau dari variabel. Bagaimana Claude Code menerapkannya tergantung pada apakah Claude Code dapat memeriksa ketersediaan profil di akun Anda:
- Ketika Claude Code dapat mencantumkan profil inferensi di akun Anda, Claude Code menyelesaikan setiap model dalam urutan ini:
- Profil dengan prefiks pilihan Anda.
- Profil yang cocok, untuk model yang tidak memiliki profil dengan prefiks tersebut.
- ID model bawaan dengan prefiks pilihan Anda, untuk model yang tidak memiliki profil yang cocok sama sekali. Claude Code menerapkan ID ini tanpa memeriksa ketersediaan pada langkah ini; pemeriksaan model startup masih mencakup model default sesi.
- Ketika penemuan profil tidak tersedia, Claude Code menerapkan prefiks tanpa memeriksa ketersediaan. Jika akun Anda tidak memiliki profil inferensi dengan prefiks tersebut diaktifkan, permintaan gagal dengan kesalahan 400.
Claude Code tidak menulis ulang ID profil inferensi Amazon Bedrock atau ARN yang Anda konfigurasi sendiri, atau nilai modelOverrides; ID model format Anthropic diselesaikan melalui pemetaan yang sama seperti pemilih /model. Claude Code juga mengabaikan variabel dalam dua kasus:
- Di wilayah AWS GovCloud, Claude Code selalu menggunakan
us-gov., satu-satunya prefiks yang merutekan dalam partisi GovCloud. - Ketika Anda menetapkan nilai yang bukan salah satu dari nilai yang valid, Claude Code kembali ke prefiks pilihan yang diturunkan dari wilayah.
Konfigurasi IAM
Buat kebijakan IAM dengan izin yang diperlukan untuk Claude Code:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowModelAndInferenceProfileAccess",
"Effect": "Allow",
"Action": [
"bedrock:InvokeModel",
"bedrock:InvokeModelWithResponseStream",
"bedrock:ListInferenceProfiles",
"bedrock:GetInferenceProfile"
],
"Resource": [
"arn:aws:bedrock:*:*:inference-profile/*",
"arn:aws:bedrock:*:*:application-inference-profile/*",
"arn:aws:bedrock:*:*:foundation-model/*"
]
},
{
"Sid": "AllowMarketplaceSubscription",
"Effect": "Allow",
"Action": [
"aws-marketplace:ViewSubscriptions",
"aws-marketplace:Subscribe"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:CalledViaLast": "bedrock.amazonaws.com"
}
}
}
]
}
Untuk izin yang lebih ketat, Anda dapat membatasi Resource ke ARN profil inferensi spesifik.
bedrock:GetInferenceProfile memungkinkan Claude Code menyelesaikan ARN profil inferensi aplikasi ke model fondasi pendukungnya, yang digunakan untuk memilih bentuk permintaan yang benar untuk model tersebut.
Jika token tidak memiliki izin ini, Claude Code pulih secara otomatis dengan mencoba ulang sekali dengan bentuk alternatif, sehingga permintaan tetap berhasil tetapi setiap model baru menambahkan perjalanan bolak-balik ekstra. Memberikan izin menghindari percobaan ulang. Ini paling sering berlaku untuk penyebaran AWS_BEARER_TOKEN_BEDROCK, di mana kebijakan token biasanya lebih sempit daripada peran IAM penuh.
Untuk detail, lihat dokumentasi IAM Bedrock.
Buat akun AWS khusus untuk Claude Code untuk menyederhanakan pelacakan biaya dan kontrol akses.
Jendela konteks token 1M
Claude Sonnet 5, Opus 4.6 dan yang lebih baru, serta Sonnet 4.6 mendukung jendela konteks token 1M di Amazon Bedrock. Sonnet 5 selalu berjalan dengan jendela 1M di kedua API Invoke dan endpoint Mantle, tanpa varian [1m] untuk dipilih. Untuk model lainnya di API Invoke, Claude Code secara otomatis mengaktifkan jendela konteks yang diperluas ketika Anda memilih varian model 1M.
Wizard pengaturan menawarkan opsi konteks 1M ketika mempin model. Untuk mengaktifkannya untuk model yang dipinnya secara manual, tambahkan [1m] ke ID model. Lihat Pin models for third-party deployments untuk detail.
Tingkat layanan
Tingkat layanan Amazon Bedrock memungkinkan Anda menukar biaya terhadap latensi. Atur ANTHROPIC_BEDROCK_SERVICE_TIER ke default, flex, atau priority:
export ANTHROPIC_BEDROCK_SERVICE_TIER=priority
Claude Code mengirimkan ini sebagai header X-Amzn-Bedrock-Service-Tier pada setiap permintaan. Ketersediaan tingkat bervariasi menurut model dan wilayah. Kapasitas yang dicadangkan menggunakan throughput yang disediakan ARN sebagai ID model alih-alih pengaturan ini.
AWS Guardrails
Amazon Bedrock Guardrails memungkinkan Anda menerapkan penyaringan konten untuk Claude Code. Buat Guardrail di konsol Amazon Bedrock, publikasikan versi, kemudian tambahkan header Guardrail ke file pengaturan Anda. Aktifkan inferensi Cross-Region pada Guardrail Anda jika Anda menggunakan profil inferensi lintas wilayah.
Contoh konfigurasi:
{
"env": {
"ANTHROPIC_CUSTOM_HEADERS": "X-Amzn-Bedrock-GuardrailIdentifier: your-guardrail-id\nX-Amzn-Bedrock-GuardrailVersion: 1"
}
}
Jika organisasi Anda mengirimkan header guardrail melalui kebijakan gateway aplikasi Claude sebagai gantinya, mereka dihitung sebagai pengaturan yang memerlukan persetujuan.
Gunakan endpoint Mantle
Mantle adalah endpoint Amazon Bedrock yang melayani model Claude melalui bentuk API Anthropic asli daripada Amazon Bedrock Invoke API. Ini menggunakan kredensial AWS yang sama, izin IAM, dan konfigurasi awsAuthRefresh yang dijelaskan sebelumnya di halaman ini.
Aktifkan Mantle
Dengan kredensial AWS sudah dikonfigurasi, atur CLAUDE_CODE_USE_MANTLE untuk merutekan permintaan ke endpoint Mantle:
export CLAUDE_CODE_USE_MANTLE=1
export AWS_REGION=us-east-1
Claude Code membuat URL endpoint dari wilayah AWS, diselesaikan dengan prioritas yang sama seperti Amazon Bedrock di atas. Untuk mengganti URL untuk endpoint khusus atau gateway, atur ANTHROPIC_BEDROCK_MANTLE_BASE_URL.
Jalankan /status di dalam Claude Code untuk mengonfirmasi. Baris penyedia menunjukkan Amazon Bedrock (Mantle) ketika Mantle aktif.
Pilih model Mantle
Mantle menggunakan ID model dengan awalan anthropic. dan tanpa akhiran versi, misalnya anthropic.claude-sonnet-5 atau anthropic.claude-haiku-4-5. Model yang tersedia untuk akun Anda tergantung pada apa yang telah diberikan organisasi Anda; ID model tambahan tercantum dalam materi onboarding Anda dari AWS. Hubungi tim akun AWS Anda untuk meminta akses ke model yang diizinkan.
Atur model dengan flag --model atau dengan /model di dalam Claude Code:
claude --model anthropic.claude-haiku-4-5
Jalankan Mantle bersama Invoke API
Model yang tersedia untuk Anda di Mantle mungkin tidak mencakup setiap model yang Anda gunakan hari ini. Menetapkan CLAUDE_CODE_USE_BEDROCK dan CLAUDE_CODE_USE_MANTLE memungkinkan Claude Code memanggil kedua endpoint dari sesi yang sama. ID model yang cocok dengan format Mantle dirutekan ke Mantle, dan semua ID model lainnya pergi ke Amazon Bedrock Invoke API.
export CLAUDE_CODE_USE_BEDROCK=1
export CLAUDE_CODE_USE_MANTLE=1
Untuk menampilkan model Mantle di pemilih /model, daftarkan ID-nya di availableModels di file pengaturan Anda. Pengaturan ini juga membatasi pemilih ke entri yang terdaftar. Mendaftarkan anthropic.claude-haiku-4-5 menghapus alias haiku biasa dari pemilih, jadi juga daftarkan awalan versi atau ID lengkap untuk versi yang ingin Anda tetap dapat dipilih. ID Mantle dan alias haiku diselesaikan ke keluarga model yang sama, jadi penggabungan hanya menyimpan entri yang lebih spesifik. Lihat Merge behavior:
{
"availableModels": ["opus", "sonnet", "claude-haiku-4-5", "anthropic.claude-haiku-4-5"]
}
Entri dengan awalan anthropic. ditambahkan sebagai opsi pemilih khusus dan dirutekan ke Mantle. Ganti anthropic.claude-haiku-4-5 dengan ID model yang telah diberikan akun Anda. Lihat Restrict model selection untuk cara availableModels berinteraksi dengan pengaturan model lainnya.
Ketika kedua penyedia aktif, /status menunjukkan Amazon Bedrock + Amazon Bedrock (Mantle).
Rutekan Mantle melalui gateway
Jika organisasi Anda merutekan lalu lintas model melalui LLM gateway terpusat yang menyuntikkan kredensial AWS sisi server, nonaktifkan autentikasi sisi klien sehingga Claude Code mengirim permintaan tanpa tanda tangan SigV4 atau header x-api-key:
export CLAUDE_CODE_USE_MANTLE=1
export CLAUDE_CODE_SKIP_MANTLE_AUTH=1
export ANTHROPIC_BEDROCK_MANTLE_BASE_URL=https://your-gateway.example.com
Variabel lingkungan Mantle
Variabel ini khusus untuk endpoint Mantle. Lihat Environment variables untuk daftar lengkap.
| Variabel | Tujuan |
|---|---|
CLAUDE_CODE_USE_MANTLE |
Aktifkan endpoint Mantle. Atur ke 1 atau true. |
ANTHROPIC_BEDROCK_MANTLE_BASE_URL |
Ganti URL endpoint Mantle default |
CLAUDE_CODE_SKIP_MANTLE_AUTH |
Lewati autentikasi sisi klien untuk pengaturan proxy |
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION |
Ganti wilayah AWS untuk model kelas Haiku (dibagikan dengan Amazon Bedrock) |
Pemecahan Masalah
Loop autentikasi dengan SSO dan proxy perusahaan
Jika tab browser muncul berulang kali saat menggunakan AWS SSO, hapus pengaturan awsAuthRefresh dari file pengaturan Anda. Ini dapat terjadi ketika VPN perusahaan atau proxy inspeksi TLS mengganggu alur browser SSO. Claude Code memperlakukan koneksi yang terputus sebagai kegagalan autentikasi, menjalankan kembali awsAuthRefresh, dan loop tanpa batas.
Jika lingkungan jaringan Anda mengganggu alur SSO berbasis browser otomatis, gunakan aws sso login secara manual sebelum memulai Claude Code alih-alih mengandalkan awsAuthRefresh.
Kesalahan sertifikat di belakang proxy yang melakukan inspeksi TLS
Claude Code menerapkan konfigurasi penyimpanan sertifikat CA Anda ke permintaannya ke AWS, termasuk:
- Penemuan model
- Penghitungan token
- Panggilan kredensial peran STS dan SSO yang menyelesaikan kredensial AWS Anda
- Verifikasi kredensial dan pemeriksaan model wizard penyiapan
Untuk permintaan ini, sertifikat akar perusahaan di penyimpanan kepercayaan OS Anda atau bundel NODE_EXTRA_CA_CERTS tidak memerlukan penyiapan khusus Amazon Bedrock.
Sebelum v2.1.260, Claude Code menerapkan konfigurasi CA Anda ke permintaan ini hanya ketika mereka melewati proxy yang dikonfigurasi, dan pada koneksi langsung mereka hanya mempercayai penyimpanan sertifikat default runtime.
Sebelum v2.1.261, pencarian kredensial di belakang pemeriksaan model wizard penyiapan dengan opsi Use credentials already in my environment masih hanya mempercayai penyimpanan sertifikat default runtime. Di belakang proxy yang melakukan inspeksi TLS yang sertifikat akarnya hanya ada di penyimpanan OS, permintaan yang terpengaruh gagal dengan unable to get local issuer certificate, atau wizard menunjukkan model sebagai unreachable, sementara permintaan inferensi berhasil. Perbarui ke v2.1.261 atau lebih baru.
Masalah wilayah
Jika Anda mengalami masalah wilayah:
- Periksa ketersediaan model:
aws bedrock list-inference-profiles --region your-region - Beralih ke wilayah yang didukung:
export AWS_REGION=us-east-1 - Pertimbangkan menggunakan profil inferensi untuk akses lintas wilayah
Jika Anda menerima kesalahan "on-demand throughput isn't supported":
- Tentukan model sebagai ID profil inferensi
Claude Code menggunakan Amazon Bedrock Invoke API dan tidak mendukung Converse API.
Kesalahan streaming di belakang gateway atau proxy
Amazon Bedrock melakukan streaming respons InvokeModelWithResponseStream dalam format event-stream biner dengan header Content-Type: application/vnd.amazon.eventstream. Gateway atau proxy antara Claude Code dan Amazon Bedrock harus meneruskan badan respons dan headernya, termasuk Content-Type, seperti yang dikirim Amazon Bedrock.
Jika gateway menulis ulang Content-Type ke nilai lain, Claude Code menolak respons dengan kesalahan yang dimulai dengan Bedrock streaming response has content-type, menyebutkan nilai yang diterima. Penulisan ulang umum adalah text/event-stream, dari integrasi yang memancarkan kembali aliran sebagai server-sent events.
Jika gateway menghapus atau mengosongkan header sebagai gantinya, Claude Code mengasumsikan badan adalah event stream Amazon Bedrock dan mendekodenya, jadi badan yang gateway teruskan tanpa diubah terus melakukan streaming.
Jika gateway yang menghapus header juga memancarkan kembali aliran sebagai server-sent events, Claude Code tidak dapat mendekode badan dan kembali ke jalur non-streaming yang lebih lambat pada setiap giliran: setiap respons muncul hanya setelah selesai alih-alih melakukan streaming. Dalam hal itu, atur CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT=1 sehingga Claude Code membaca badan sebagai server-sent events sebagai gantinya.
Untuk memperbaiki kesalahan atau fallback, konfigurasikan gateway untuk meneruskan badan respons InvokeModelWithResponseStream dan header Content-Type-nya tanpa diubah.
Gateway yang mengonversi aliran ke server-sent events tidak lagi melayani Amazon Bedrock API. Jika juga menerima permintaan Anthropic Messages API, hubungkan sebagai gateway LLM dengan ANTHROPIC_BASE_URL alih-alih CLAUDE_CODE_USE_BEDROCK.
Penghitungan token nol dalam /context
Perintah /context menghitung token untuk setiap grup alat dengan mengirimkan skema alat ke API count-tokens Amazon Bedrock. Pada versi Claude Code sebelum v2.1.196, Amazon Bedrock menolak permintaan itu karena skema membawa bidang yang tidak diterima API count-tokens-nya, jadi setiap grup alat menunjukkan 0 token. Baris lain dalam rincian, seperti pesan dan file memori, tidak terpengaruh.
Perbarui ke v2.1.196 atau lebih baru.
Kesalahan endpoint Mantle
Jika /status tidak menunjukkan Amazon Bedrock (Mantle) setelah Anda menetapkan CLAUDE_CODE_USE_MANTLE, variabel tidak mencapai proses. Konfirmasi bahwa variabel diekspor di shell tempat Anda meluncurkan claude, atau atur di blok env dari file pengaturan Anda.
A 403 dari endpoint Mantle dengan kredensial yang valid berarti akun AWS Anda belum diberikan akses ke model yang Anda minta. Hubungi tim akun AWS Anda untuk meminta akses.
A 400 yang menyebutkan ID model berarti model itu tidak dilayani di Mantle. Mantle memiliki lineup model sendiri yang terpisah dari katalog Bedrock standar, jadi ID profil inferensi seperti us.anthropic.claude-sonnet-4-6 tidak akan berfungsi. Gunakan ID format Mantle, atau aktifkan kedua endpoint sehingga Claude Code merutekan setiap permintaan ke endpoint tempat model tersedia.