Zum Hauptinhalt springen

Amazon Bedrock

OpenClaw kann Amazon Bedrock-Modelle über den Bedrock-Converse-Streaming-Provider von pi-ai verwenden. Die Bedrock-Authentifizierung nutzt die AWS-SDK-Standard-Credential-Chain, nicht einen API-Schlüssel.
EigenschaftWert
Provideramazon-bedrock
APIbedrock-converse-stream
AuthAWS-Anmeldedaten (Umgebungsvariablen, Shared Config oder Instance Role)
RegionAWS_REGION oder AWS_DEFAULT_REGION (Standard: us-east-1)

Erste Schritte

Wählen Sie Ihre bevorzugte Authentifizierungsmethode und folgen Sie den Einrichtungsschritten.
Am besten geeignet für: Entwicklerrechner, CI oder Hosts, auf denen Sie AWS-Anmeldedaten direkt verwalten.
1

AWS-Anmeldedaten auf dem Gateway-Host setzen

export AWS_ACCESS_KEY_ID="AKIA..."
export AWS_SECRET_ACCESS_KEY="..."
export AWS_REGION="us-east-1"
# Optional:
export AWS_SESSION_TOKEN="..."
export AWS_PROFILE="your-profile"
# Optional (Bedrock-API-Schlüssel/Bearer-Token):
export AWS_BEARER_TOKEN_BEDROCK="..."
2

Einen Bedrock-Provider und ein Modell zu Ihrer Konfiguration hinzufügen

Es ist kein apiKey erforderlich. Konfigurieren Sie den Provider mit 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

Prüfen, ob Modelle verfügbar sind

openclaw models list
Bei Authentifizierung über Umgebungsmarker (AWS_ACCESS_KEY_ID, AWS_PROFILE oder AWS_BEARER_TOKEN_BEDROCK) aktiviert OpenClaw den impliziten Bedrock-Provider für die Modellermittlung automatisch, ohne zusätzliche Konfiguration.

Automatische Modellerkennung

OpenClaw kann Bedrock-Modelle, die Streaming und Textausgabe unterstützen, automatisch erkennen. Die Ermittlung verwendet bedrock:ListFoundationModels und bedrock:ListInferenceProfiles, und die Ergebnisse werden zwischengespeichert (Standard: 1 Stunde). So wird der implizite Provider aktiviert:
  • Wenn plugins.entries.amazon-bedrock.config.discovery.enabled auf true gesetzt ist, versucht OpenClaw die Ermittlung auch dann, wenn kein AWS-Umgebungsmarker vorhanden ist.
  • Wenn plugins.entries.amazon-bedrock.config.discovery.enabled nicht gesetzt ist, fügt OpenClaw den impliziten Bedrock-Provider nur automatisch hinzu, wenn einer dieser AWS-Authentifizierungsmarker erkannt wird: AWS_BEARER_TOKEN_BEDROCK, AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY oder AWS_PROFILE.
  • Der tatsächliche Authentifizierungspfad der Bedrock-Laufzeit verwendet weiterhin die AWS-SDK-Standardkette, daher können Shared Config, SSO und IMDS-Instance-Role-Authentifizierung auch dann funktionieren, wenn für die Ermittlung enabled: true explizit gesetzt werden musste.
Für explizite models.providers["amazon-bedrock"]-Einträge kann OpenClaw die Bedrock-Authentifizierung über Umgebungsmarker weiterhin früh aus AWS-Umgebungsmarkern wie AWS_BEARER_TOKEN_BEDROCK auflösen, ohne das vollständige Laden der Laufzeit-Authentifizierung zu erzwingen. Der tatsächliche Authentifizierungspfad für Modellaufrufe verwendet weiterhin die AWS-SDK-Standardkette.
Konfigurationsoptionen befinden sich unter 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,
          },
        },
      },
    },
  },
}
OptionStandardBeschreibung
enabledautoIm Auto-Modus aktiviert OpenClaw den impliziten Bedrock-Provider nur, wenn ein unterstützter AWS-Umgebungsmarker erkannt wird. Setzen Sie true, um die Ermittlung zu erzwingen.
regionAWS_REGION / AWS_DEFAULT_REGION / us-east-1AWS-Region, die für API-Aufrufe zur Ermittlung verwendet wird.
providerFilter(alle)Entspricht Bedrock-Providernamen (zum Beispiel anthropic, amazon).
refreshInterval3600Cache-Dauer in Sekunden. Setzen Sie 0, um den Cache zu deaktivieren.
defaultContextWindow32000Kontextfenster, das für erkannte Modelle verwendet wird (überschreiben Sie es, wenn Sie die Modelllimits kennen).
defaultMaxTokens4096Maximale Ausgabetokens, die für erkannte Modelle verwendet werden (überschreiben Sie es, wenn Sie die Modelllimits kennen).

Schnelleinrichtung (AWS-Pfad)

Diese Anleitung erstellt eine IAM-Rolle, hängt Bedrock-Berechtigungen an, ordnet das Instance Profile zu und aktiviert die OpenClaw-Ermittlung auf dem EC2-Host.
# 1. IAM-Rolle und Instance Profile erstellen
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. Ihrer EC2-Instanz zuordnen
aws ec2 associate-iam-instance-profile \
  --instance-id i-xxxxx \
  --iam-instance-profile Name=EC2-Bedrock-Access

# 3. Auf der EC2-Instanz die Ermittlung explizit aktivieren
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: einen Umgebungsmarker hinzufügen, wenn Sie den Auto-Modus ohne explizite Aktivierung möchten
echo 'export AWS_PROFILE=default' >> ~/.bashrc
echo 'export AWS_REGION=us-east-1' >> ~/.bashrc
source ~/.bashrc

# 5. Prüfen, ob Modelle erkannt werden
openclaw models list

Erweiterte Konfiguration

OpenClaw erkennt regionale und globale Inference Profiles zusammen mit Foundation-Modellen. Wenn ein Profil einem bekannten Foundation-Modell zugeordnet ist, übernimmt das Profil dessen Fähigkeiten (Kontextfenster, maximale Tokens, Reasoning, Vision), und die korrekte Bedrock-Anfrageregion wird automatisch injiziert. Dadurch funktionieren regionenübergreifende Claude-Profile ohne manuelle Provider-Overrides.Inference-Profile-IDs sehen beispielsweise so aus: us.anthropic.claude-opus-4-6-v1:0 (regional) oder anthropic.claude-opus-4-6-v1:0 (global). Wenn das zugrunde liegende Modell bereits in den Ermittlungsergebnissen vorhanden ist, übernimmt das Profil dessen vollständigen Fähigkeitssatz; andernfalls werden sichere Standardwerte angewendet.Es ist keine zusätzliche Konfiguration erforderlich. Solange die Ermittlung aktiviert ist und der IAM- Principal über bedrock:ListInferenceProfiles verfügt, erscheinen Profile zusammen mit Foundation-Modellen in openclaw models list.
Sie können Amazon Bedrock Guardrails auf alle Bedrock-Modellaufrufe anwenden, indem Sie der amazon-bedrock-Plugin-Konfiguration ein guardrail-Objekt hinzufügen. Guardrails ermöglichen die Durchsetzung von Inhaltsfiltern, Themenablehnung, Wortfiltern, Filtern für sensible Informationen und Prüfungen zur kontextuellen Verankerung.
{
  plugins: {
    entries: {
      "amazon-bedrock": {
        config: {
          guardrail: {
            guardrailIdentifier: "abc123", // Guardrail-ID oder vollständige ARN
            guardrailVersion: "1", // Versionsnummer oder "DRAFT"
            streamProcessingMode: "sync", // optional: "sync" oder "async"
            trace: "enabled", // optional: "enabled", "disabled" oder "enabled_full"
          },
        },
      },
    },
  },
}
OptionErforderlichBeschreibung
guardrailIdentifierJaGuardrail-ID (z. B. abc123) oder vollständige ARN (z. B. arn:aws:bedrock:us-east-1:123456789012:guardrail/abc123).
guardrailVersionJaVeröffentlichte Versionsnummer oder "DRAFT" für den Arbeitsentwurf.
streamProcessingModeNein"sync" oder "async" für die Guardrail-Auswertung während des Streamings. Wenn weggelassen, verwendet Bedrock den Standardwert.
traceNein"enabled" oder "enabled_full" zum Debuggen; für Produktion weglassen oder auf "disabled" setzen.
Der vom Gateway verwendete IAM-Principal muss zusätzlich zu den normalen Aufrufberechtigungen über die Berechtigung bedrock:ApplyGuardrail verfügen.
  • Bedrock erfordert, dass Modellzugriff in Ihrem AWS-Konto/Ihrer AWS-Region aktiviert ist.
  • Die automatische Ermittlung benötigt die Berechtigungen bedrock:ListFoundationModels und bedrock:ListInferenceProfiles.
  • Wenn Sie sich auf den Auto-Modus verlassen, setzen Sie einen der unterstützten AWS-Authentifizierungs-Umgebungsmarker auf dem Gateway-Host. Wenn Sie IMDS-/Shared-Config-Authentifizierung ohne Umgebungsmarker bevorzugen, setzen Sie plugins.entries.amazon-bedrock.config.discovery.enabled: true.
  • OpenClaw zeigt die Quelle der Anmeldedaten in dieser Reihenfolge an: AWS_BEARER_TOKEN_BEDROCK, dann AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY, dann AWS_PROFILE, dann die standardmäßige AWS-SDK-Kette.
  • Die Unterstützung für Reasoning hängt vom Modell ab; prüfen Sie die Bedrock-Modellkarte auf aktuelle Fähigkeiten.
  • Wenn Sie einen verwalteten Schlüsselfluss bevorzugen, können Sie auch einen OpenAI-kompatiblen Proxy vor Bedrock schalten und ihn stattdessen als OpenAI-Provider konfigurieren.

Verwandt

Modellauswahl

Auswahl von Providern, Modell-Refs und Failover-Verhalten.

memory_search

Konfiguration von Bedrock-Embeddings für memory_search.

Memory-Konfigurationsreferenz

Vollständige Bedrock-Embedding-Modellliste und Dimensionsoptionen.

Fehlerbehebung

Allgemeine Fehlerbehebung und FAQ.