Langsung ke konten utama
OpenClaw dapat menggunakan model Amazon Bedrock melalui penyedia streaming Bedrock Converse-nya. Autentikasi Bedrock menggunakan rantai kredensial default AWS SDK, bukan kunci API.
PropertiNilai
Penyediaamazon-bedrock
APIbedrock-converse-stream
AutentikasiKredensial AWS (variabel env, konfigurasi bersama, atau peran instans)
WilayahAWS_REGION atau AWS_DEFAULT_REGION (default: us-east-1)

Memulai

Pilih metode autentikasi yang Anda inginkan dan ikuti langkah-langkah penyiapannya.
Paling cocok untuk: mesin pengembang, CI, atau host tempat Anda mengelola kredensial AWS secara langsung.
1

Tetapkan kredensial AWS pada host gateway

export AWS_ACCESS_KEY_ID="EXAMPLE_AWS_ACCESS_KEY_ID"
export AWS_SECRET_ACCESS_KEY="..."
export AWS_REGION="us-east-1"
# Optional:
export AWS_SESSION_TOKEN="..."
export AWS_PROFILE="your-profile"
# Optional (Bedrock API key/bearer token):
export AWS_BEARER_TOKEN_BEDROCK="..."
2

Tambahkan penyedia dan model Bedrock ke konfigurasi Anda

Tidak diperlukan apiKey. Konfigurasikan penyedia dengan auth: "aws-sdk":
{
  models: {
    providers: {
      "amazon-bedrock": {
        baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
        api: "bedrock-converse-stream",
        auth: "aws-sdk",
        models: [
          {
            id: "us.anthropic.claude-opus-4-6-v1:0",
            name: "Claude Opus 4.6 (Bedrock)",
            reasoning: true,
            input: ["text", "image"],
            cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
            contextWindow: 200000,
            maxTokens: 8192,
          },
        ],
      },
    },
  },
  agents: {
    defaults: {
      model: { primary: "amazon-bedrock/us.anthropic.claude-opus-4-6-v1:0" },
    },
  },
}
3

Verifikasi bahwa model tersedia

openclaw models list
Dengan autentikasi penanda env (AWS_ACCESS_KEY_ID, AWS_PROFILE, atau AWS_BEARER_TOKEN_BEDROCK), OpenClaw otomatis mengaktifkan penyedia Bedrock implisit untuk penemuan model tanpa konfigurasi tambahan.

Penemuan model otomatis

OpenClaw dapat secara otomatis menemukan model Bedrock yang mendukung streaming dan keluaran teks. Penemuan menggunakan bedrock:ListFoundationModels dan bedrock:ListInferenceProfiles, dan hasilnya di-cache (default: 1 jam). Cara penyedia implisit diaktifkan:
  • Jika plugins.entries.amazon-bedrock.config.discovery.enabled bernilai true, OpenClaw akan mencoba penemuan bahkan ketika tidak ada penanda env AWS.
  • Jika plugins.entries.amazon-bedrock.config.discovery.enabled belum ditetapkan, OpenClaw hanya menambahkan otomatis penyedia Bedrock implisit ketika melihat salah satu penanda autentikasi AWS berikut: AWS_BEARER_TOKEN_BEDROCK, AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY, atau AWS_PROFILE.
  • Jalur autentikasi runtime Bedrock yang sebenarnya tetap menggunakan rantai default AWS SDK, sehingga konfigurasi bersama, SSO, dan autentikasi peran instans IMDS dapat berfungsi bahkan ketika penemuan memerlukan enabled: true untuk ikut serta.
Untuk entri eksplisit models.providers["amazon-bedrock"], OpenClaw masih dapat menyelesaikan autentikasi penanda env Bedrock lebih awal dari penanda env AWS seperti AWS_BEARER_TOKEN_BEDROCK tanpa memaksa pemuatan autentikasi runtime penuh. Jalur autentikasi panggilan model yang sebenarnya tetap menggunakan rantai default AWS SDK.
Opsi konfigurasi berada di bawah plugins.entries.amazon-bedrock.config.discovery:
{
  plugins: {
    entries: {
      "amazon-bedrock": {
        config: {
          discovery: {
            enabled: true,
            region: "us-east-1",
            providerFilter: ["anthropic", "amazon"],
            refreshInterval: 3600,
            defaultContextWindow: 32000,
            defaultMaxTokens: 4096,
          },
        },
      },
    },
  },
}
OpsiDefaultDeskripsi
enabledotomatisDalam mode otomatis, OpenClaw hanya mengaktifkan penyedia Bedrock implisit ketika melihat penanda env AWS yang didukung. Tetapkan true untuk memaksa penemuan.
regionAWS_REGION / AWS_DEFAULT_REGION / us-east-1Wilayah AWS yang digunakan untuk panggilan API penemuan.
providerFilter(semua)Mencocokkan nama penyedia Bedrock (misalnya anthropic, amazon).
refreshInterval3600Durasi cache dalam detik. Tetapkan ke 0 untuk menonaktifkan caching.
defaultContextWindow32000Jendela konteks yang digunakan untuk model yang ditemukan (timpa jika Anda mengetahui batas model Anda).
defaultMaxTokens4096Token keluaran maksimum yang digunakan untuk model yang ditemukan (timpa jika Anda mengetahui batas model Anda).

Penyiapan cepat (jalur AWS)

Panduan ini membuat peran IAM, melampirkan izin Bedrock, mengaitkan profil instans, dan mengaktifkan penemuan OpenClaw pada host EC2.
# 1. Create IAM role and instance profile
aws iam create-role --role-name EC2-Bedrock-Access \
  --assume-role-policy-document '{
    "Version": "2012-10-17",
    "Statement": [{
      "Effect": "Allow",
      "Principal": {"Service": "ec2.amazonaws.com"},
      "Action": "sts:AssumeRole"
    }]
  }'

aws iam attach-role-policy --role-name EC2-Bedrock-Access \
  --policy-arn arn:aws:iam::aws:policy/AmazonBedrockFullAccess

aws iam create-instance-profile --instance-profile-name EC2-Bedrock-Access
aws iam add-role-to-instance-profile \
  --instance-profile-name EC2-Bedrock-Access \
  --role-name EC2-Bedrock-Access

# 2. Attach to your EC2 instance
aws ec2 associate-iam-instance-profile \
  --instance-id i-xxxxx \
  --iam-instance-profile Name=EC2-Bedrock-Access

# 3. On the EC2 instance, enable discovery explicitly
openclaw config set plugins.entries.amazon-bedrock.config.discovery.enabled true
openclaw config set plugins.entries.amazon-bedrock.config.discovery.region us-east-1

# 4. Optional: add an env marker if you want auto mode without explicit enable
echo 'export AWS_PROFILE=default' >> ~/.bashrc
echo 'export AWS_REGION=us-east-1' >> ~/.bashrc
source ~/.bashrc

# 5. Verify models are discovered
openclaw models list

Konfigurasi lanjutan

OpenClaw menemukan profil inferensi regional dan global bersama model dasar. Ketika sebuah profil dipetakan ke model dasar yang dikenal, profil tersebut mewarisi kapabilitas model itu (jendela konteks, token maksimum, reasoning, vision) dan wilayah permintaan Bedrock yang benar disuntikkan secara otomatis. Ini berarti profil Claude lintas wilayah berfungsi tanpa penimpaan penyedia manual.ID profil inferensi terlihat seperti us.anthropic.claude-opus-4-6-v1:0 (regional) atau anthropic.claude-opus-4-6-v1:0 (global). Jika model pendukungnya sudah ada dalam hasil penemuan, profil mewarisi rangkaian kapabilitas lengkapnya; jika tidak, default aman diterapkan.Tidak diperlukan konfigurasi tambahan. Selama penemuan diaktifkan dan principal IAM memiliki bedrock:ListInferenceProfiles, profil muncul bersama model dasar di openclaw models list.
Beberapa model Bedrock mendukung parameter service_tier untuk mengoptimalkan biaya atau latensi. Tingkat berikut tersedia:
TingkatDeskripsi
defaultTingkat Bedrock standar
flexPemrosesan berdiskon untuk beban kerja yang dapat menoleransi latensi lebih panjang
priorityPemrosesan diprioritaskan untuk beban kerja yang sensitif terhadap latensi
reservedKapasitas tercadangkan untuk beban kerja kondisi stabil
Tetapkan serviceTier (atau service_tier) melalui agents.defaults.params untuk permintaan model Bedrock, atau per model di agents.defaults.models["<model-key>"].params:
{
  agents: {
    defaults: {
      params: {
        serviceTier: "flex", // applies to all models
      },
      models: {
        "amazon-bedrock/mistral.mistral-large-3-675b-instruct": {
          params: {
            serviceTier: "priority", // per-model override
          },
        },
      },
    },
  },
}
Nilai yang valid adalah default, flex, priority, dan reserved. Tidak semua model mendukung semua tingkat — jika tingkat yang tidak didukung diminta, Bedrock akan mengembalikan kesalahan validasi. Catatan: pesan kesalahannya agak menyesatkan; mungkin berbunyi “The provided model identifier is invalid” alih-alih menunjukkan tingkat layanan yang tidak didukung. Jika Anda melihat kesalahan ini, periksa apakah model mendukung tingkat yang diminta.
Bedrock menolak parameter temperature untuk Claude Opus 4.7. OpenClaw menghilangkan temperature secara otomatis untuk referensi Bedrock Opus 4.7 apa pun, termasuk ID model dasar, profil inferensi bernama, profil inferensi aplikasi yang model dasarnya diselesaikan ke Opus 4.7 melalui bedrock:GetInferenceProfile, dan varian bertitik opus-4.7 dengan prefiks wilayah opsional (us., eu., ap., apac., au., jp., global.). Tidak diperlukan kenop konfigurasi, dan penghilangan ini berlaku untuk objek opsi permintaan maupun bidang payload inferenceConfig.
Gunakan amazon-bedrock/anthropic.claude-fable-5 di us-east-1, atau id inferensi regional seperti us.anthropic.claude-fable-5. OpenClaw menerapkan jendela konteks 1M Fable, batas output 128K, pemikiran adaptif yang selalu aktif, dan pemetaan effort yang didukung. /think off dan /think minimal dipetakan ke low; kontrol temperature yang tidak didukung dan pemilihan tool paksa dihilangkan. Output streaming ditahan hingga Bedrock mengembalikan status terminal sehingga penolakan di tengah stream tidak mengekspos teks parsial. Fable hanya mendukung tingkat layanan standar; OpenClaw mengabaikan tingkat flex, priority, dan reserved yang dikonfigurasi untuk model ini.AWS memerlukan opt-in retensi data provider_data_share yang eksplisit sebelum Fable tersedia. Prompt dan completion dibagikan dengan Anthropic dan disimpan hingga 30 hari untuk kepercayaan dan keamanan. Tinjau dan konfigurasikan retensi data Bedrock sebelum mengaktifkan model.
Anda dapat menerapkan Amazon Bedrock Guardrails ke semua pemanggilan model Bedrock dengan menambahkan objek guardrail ke config plugin amazon-bedrock. Guardrails memungkinkan Anda menerapkan pemfilteran konten, penolakan topik, filter kata, filter informasi sensitif, dan pemeriksaan grounding kontekstual.
{
  plugins: {
    entries: {
      "amazon-bedrock": {
        config: {
          guardrail: {
            guardrailIdentifier: "abc123", // guardrail ID or full ARN
            guardrailVersion: "1", // version number or "DRAFT"
            streamProcessingMode: "sync", // optional: "sync" or "async"
            trace: "enabled", // optional: "enabled", "disabled", or "enabled_full"
          },
        },
      },
    },
  },
}
OpsiWajibDeskripsi
guardrailIdentifierYaID guardrail (mis. abc123) atau ARN lengkap (mis. arn:aws:bedrock:us-east-1:123456789012:guardrail/abc123).
guardrailVersionYaNomor versi yang dipublikasikan, atau "DRAFT" untuk draf kerja.
streamProcessingModeTidak"sync" atau "async" untuk evaluasi guardrail selama streaming. Jika dihilangkan, Bedrock menggunakan default-nya.
traceTidak"enabled" atau "enabled_full" untuk debugging; hilangkan atau atur ke "disabled" untuk produksi.
Principal IAM yang digunakan oleh Gateway harus memiliki izin bedrock:ApplyGuardrail selain izin invoke standar.
Bedrock juga dapat berfungsi sebagai penyedia embedding untuk pencarian memori. Ini dikonfigurasi terpisah dari penyedia inferensi — atur agents.defaults.memorySearch.provider ke "bedrock":
{
  agents: {
    defaults: {
      memorySearch: {
        provider: "bedrock",
        model: "amazon.titan-embed-text-v2:0", // default
      },
    },
  },
}
Embedding Bedrock menggunakan rantai kredensial AWS SDK yang sama seperti inferensi (role instance, SSO, access key, config bersama, dan identitas web). Tidak diperlukan API key. Atur memorySearch.provider: "bedrock" secara eksplisit untuk menggunakan embedding Bedrock.Model embedding yang didukung mencakup Amazon Titan Embed (v1, v2), Amazon Nova Embed, Cohere Embed (v3, v4), dan TwelveLabs Marengo. Lihat Referensi konfigurasi memori — Bedrock untuk daftar model lengkap dan opsi dimensi.
  • Bedrock memerlukan akses model yang diaktifkan di akun/wilayah AWS Anda.
  • Penemuan otomatis memerlukan izin bedrock:ListFoundationModels dan bedrock:ListInferenceProfiles.
  • Jika Anda mengandalkan mode otomatis, atur salah satu penanda env autentikasi AWS yang didukung pada host Gateway. Jika Anda lebih memilih autentikasi IMDS/config bersama tanpa penanda env, atur plugins.entries.amazon-bedrock.config.discovery.enabled: true.
  • OpenClaw menampilkan sumber kredensial dalam urutan ini: AWS_BEARER_TOKEN_BEDROCK, lalu AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY, lalu AWS_PROFILE, lalu rantai AWS SDK default.
  • Dukungan penalaran bergantung pada model; periksa kartu model Bedrock untuk kapabilitas saat ini.
  • Jika Anda lebih memilih alur key terkelola, Anda juga dapat menempatkan proxy yang kompatibel dengan OpenAI di depan Bedrock dan mengonfigurasikannya sebagai penyedia OpenAI.

Terkait

Pemilihan model

Memilih penyedia, ref model, dan perilaku failover.

Pencarian memori

Embedding Bedrock untuk konfigurasi pencarian memori.

Referensi config memori

Daftar lengkap model embedding Bedrock dan opsi dimensi.

Pemecahan masalah

Pemecahan masalah umum dan FAQ.