Prasyarat

Sebelum mengonfigurasi Claude Code dengan Bedrock, pastikan Anda memiliki:

  • Akun AWS dengan akses Bedrock yang diaktifkan
  • Akses ke model Claude yang diinginkan (misalnya, Claude Sonnet 4) di Bedrock
  • AWS CLI terinstal dan dikonfigurasi (opsional - hanya diperlukan jika Anda tidak memiliki mekanisme lain untuk mendapatkan kredensial)
  • Izin IAM yang sesuai

Pengaturan

1. Aktifkan akses model

Pertama, pastikan Anda memiliki akses ke model Claude yang diperlukan di akun AWS Anda:

  1. Navigasi ke konsol Amazon Bedrock
  2. Pergi ke Model access di navigasi kiri
  3. Minta akses ke model Claude yang diinginkan (misalnya, Claude Sonnet 4)
  4. Tunggu persetujuan (biasanya instan untuk sebagian besar wilayah)

2. Konfigurasi kredensial AWS

Claude Code menggunakan rantai kredensial AWS SDK 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)

aws sso login --profile=<your-profile-name>

export AWS_PROFILE=your-profile-name

Opsi D: Kunci API Bedrock

export AWS_BEARER_TOKEN_BEDROCK=your-bedrock-api-key

Kunci API Bedrock menyediakan metode autentikasi yang lebih sederhana tanpa memerlukan kredensial AWS lengkap. Pelajari lebih lanjut tentang kunci API Bedrock.

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).

Ketika Claude Code mendeteksi bahwa kredensial AWS Anda telah kedaluwarsa (baik secara lokal berdasarkan timestamp mereka atau ketika Bedrock mengembalikan kesalahan kredensial), secara otomatis akan menjalankan perintah awsAuthRefresh dan/atau awsCredentialExport yang dikonfigurasi untuk mendapatkan kredensial baru sebelum mencoba ulang permintaan.

Contoh konfigurasi
{
  "awsAuthRefresh": "aws sso login --profile myprofile",
  "env": {
    "AWS_PROFILE": "myprofile"
  }
}
Penjelasan pengaturan konfigurasi

awsAuthRefresh: Gunakan ini untuk perintah yang memodifikasi direktori .aws (misalnya, memperbarui kredensial, cache SSO, atau file konfigurasi). Output ditampilkan kepada pengguna (tetapi input pengguna tidak didukung), membuatnya cocok untuk alur autentikasi berbasis browser di mana CLI menampilkan kode untuk dimasukkan di browser.

awsCredentialExport: Hanya gunakan ini jika Anda tidak dapat memodifikasi .aws dan harus langsung mengembalikan kredensial. Output ditangkap secara diam-diam (tidak ditampilkan kepada pengguna). Perintah harus mengeluarkan JSON dalam format ini:

{
  "Credentials": {
    "AccessKeyId": "value",
    "SecretAccessKey": "value",
    "SessionToken": "value"
  }
}

3. Konfigurasi Claude Code

Atur variabel lingkungan berikut untuk mengaktifkan Bedrock:

# Aktifkan integrasi Bedrock
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1  # atau wilayah pilihan Anda

# Opsional: Timpa wilayah untuk model kecil/cepat (Haiku)
export ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION=us-west-2

Saat mengaktifkan Bedrock untuk Claude Code, ingatlah hal-hal berikut:

  • AWS_REGION adalah variabel lingkungan yang diperlukan. Claude Code tidak membaca dari file konfigurasi .aws untuk pengaturan ini.
  • Saat menggunakan Bedrock, perintah /login dan /logout dinonaktifkan karena autentikasi ditangani melalui kredensial AWS.
  • Anda dapat menggunakan file pengaturan untuk variabel lingkungan seperti AWS_PROFILE yang tidak ingin Anda bocorkan ke proses lain. Lihat Settings untuk informasi lebih lanjut.

4. Konfigurasi model

Claude Code menggunakan model default ini untuk Bedrock:

Jenis modelNilai default
Model utamaus.anthropic.claude-3-7-sonnet-20250219-v1:0
Model kecil/cepatus.anthropic.claude-3-5-haiku-20241022-v1:0

Untuk menyesuaikan model, gunakan salah satu metode berikut:

# Menggunakan ID profil inferensi
export ANTHROPIC_MODEL='us.anthropic.claude-opus-4-1-20250805-v1:0'
export ANTHROPIC_SMALL_FAST_MODEL='us.anthropic.claude-3-5-haiku-20241022-v1:0'

# Menggunakan ARN profil inferensi aplikasi
export ANTHROPIC_MODEL='arn:aws:bedrock:us-east-2:your-account-id:application-inference-profile/your-model-id'

# Opsional: Nonaktifkan caching prompt jika diperlukan
export DISABLE_PROMPT_CACHING=1

Prompt caching mungkin tidak tersedia di semua wilayah

5. Konfigurasi token output

Saat menggunakan Claude Code dengan Amazon Bedrock, kami merekomendasikan pengaturan token berikut:

# Pengaturan token output yang direkomendasikan untuk Bedrock
export CLAUDE_CODE_MAX_OUTPUT_TOKENS=4096
export MAX_THINKING_TOKENS=1024

Mengapa nilai-nilai ini:

  • CLAUDE_CODE_MAX_OUTPUT_TOKENS=4096: Logika throttling burndown Bedrock menetapkan minimum 4096 token sebagai penalti max_token. Mengatur ini lebih rendah tidak akan mengurangi biaya tetapi dapat memotong penggunaan alat yang panjang, menyebabkan loop agen Claude Code gagal secara persisten. Claude Code biasanya menggunakan kurang dari 4096 token output tanpa pemikiran yang diperpanjang, tetapi mungkin memerlukan ruang gerak ini untuk tugas yang melibatkan pembuatan file yang signifikan atau penggunaan alat Write.

  • MAX_THINKING_TOKENS=1024: Ini menyediakan ruang untuk pemikiran yang diperpanjang tanpa memotong respons penggunaan alat, sambil tetap mempertahankan rantai penalaran yang terfokus. Keseimbangan ini membantu mencegah perubahan lintasan yang tidak selalu membantu untuk tugas coding secara khusus.

Konfigurasi IAM

Buat kebijakan IAM dengan izin yang diperlukan untuk Claude Code:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "bedrock:InvokeModel",
        "bedrock:InvokeModelWithResponseStream",
        "bedrock:ListInferenceProfiles"
      ],
      "Resource": [
        "arn:aws:bedrock:*:*:inference-profile/*",
        "arn:aws:bedrock:*:*:application-inference-profile/*"
      ]
    }
  ]
}

Untuk izin yang lebih ketat, Anda dapat membatasi Resource ke ARN profil inferensi tertentu.

Untuk detail, lihat dokumentasi IAM Bedrock.

Kami merekomendasikan membuat akun AWS khusus untuk Claude Code untuk menyederhanakan pelacakan biaya dan kontrol akses.

Pemecahan Masalah

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”:

Claude Code menggunakan Invoke API Bedrock dan tidak mendukung Converse API.

Sumber daya tambahan