Amazon Bedrock
OpenClawは、pi‑aiのBedrock Converseストリーミングプロバイダー経由でAmazon Bedrockモデルを使用できます。Bedrock認証は、APIキーではなくAWS SDKのデフォルト認証情報チェーンを使用します。pi-aiがサポートする内容
- プロバイダー:
amazon-bedrock - API:
bedrock-converse-stream - 認証: AWS認証情報(環境変数、共有設定、またはinstance role)
- リージョン:
AWS_REGIONまたはAWS_DEFAULT_REGION(デフォルト:us-east-1)
自動モデル検出
OpenClawは、ストリーミングとテキスト出力をサポートするBedrockモデルを自動検出できます。検出にはbedrock:ListFoundationModelsとbedrock:ListInferenceProfilesを使用し、結果はキャッシュされます(デフォルト: 1時間)。
暗黙のプロバイダーが有効になる方法:
plugins.entries.amazon-bedrock.config.discovery.enabledがtrueの場合、 OpenClawはAWS環境マーカーがなくても検出を試みます。plugins.entries.amazon-bedrock.config.discovery.enabledが未設定の場合、 OpenClawは、次のAWS認証マーカーのいずれかを検出したときにのみ、 暗黙のBedrockプロバイダーを自動追加します:AWS_BEARER_TOKEN_BEDROCK、AWS_ACCESS_KEY_ID+AWS_SECRET_ACCESS_KEY、またはAWS_PROFILE。- 実際のBedrockランタイム認証パスは引き続きAWS SDKのデフォルトチェーンを使用するため、
検出時にオプトインのため
enabled: trueが必要であっても、 共有設定、SSO、およびIMDS instance-role認証は機能します。
plugins.entries.amazon-bedrock.config.discovery配下にあります:
enabledのデフォルトはauto modeです。auto modeでは、OpenClawは サポートされているAWS環境マーカーを検出したときにのみ、暗黙の Bedrockプロバイダーを有効化します。regionのデフォルトはAWS_REGIONまたはAWS_DEFAULT_REGION、その後us-east-1です。providerFilterはBedrockプロバイダー名(たとえばanthropic)に一致します。refreshIntervalは秒です。キャッシュを無効化するには0に設定してください。defaultContextWindow(デフォルト:32000)およびdefaultMaxTokens(デフォルト:4096) は検出されたモデルに使用されます(モデル上限がわかっている場合は上書きしてください)。- 明示的な
models.providers["amazon-bedrock"]エントリでは、OpenClawは 依然としてAWS_BEARER_TOKEN_BEDROCKのようなAWS環境マーカーから Bedrockのenv-marker認証を早期に解決できますが、完全なランタイム認証読み込みを強制しません。 実際のモデル呼び出し認証パスは引き続きAWS SDKのデフォルトチェーンを使用します。
オンボーディング
- gateway host上でAWS認証情報が利用可能であることを確認します:
- 設定にBedrockプロバイダーとモデルを追加します(
apiKeyは不要):
EC2 Instance Roles
IAM roleがアタッチされたEC2インスタンス上でOpenClawを実行している場合、AWS SDK は認証にinstance metadata service(IMDS)を使用できます。Bedrock モデル検出では、OpenClawはAWS環境 マーカーからのみ暗黙のプロバイダーを自動有効化します。明示的にplugins.entries.amazon-bedrock.config.discovery.enabled: trueを設定した場合はこの限りではありません。
IMDSベースのホスト向け推奨セットアップ:
plugins.entries.amazon-bedrock.config.discovery.enabledをtrueに設定する。plugins.entries.amazon-bedrock.config.discovery.regionを設定する(またはAWS_REGIONをexportする)。- ダミーのAPIキーは不要です。
- auto modeまたはstatus surface用に環境マーカーが必要な場合にのみ、
AWS_PROFILE=defaultが必要です。
bedrock:InvokeModelbedrock:InvokeModelWithResponseStreambedrock:ListFoundationModels(自動検出用)bedrock:ListInferenceProfiles(inference profile検出用)
AmazonBedrockFullAccessをアタッチしてください。
クイックセットアップ(AWSパス)
Inference profiles
OpenClawは、foundation modelと並んでregionalおよびglobal inference profileを検出します。profileが既知のfoundation modelに対応付けられている場合、その profileはそのモデルの機能(context window、max tokens、 reasoning、vision)を継承し、正しいBedrockリクエストリージョンが自動的に注入されます。これにより、クロスリージョンのClaude profileは手動の プロバイダー上書きなしで動作します。 Inference profile IDは、us.anthropic.claude-opus-4-6-v1:0(regional)
またはanthropic.claude-opus-4-6-v1:0(global)のような形です。基盤モデルがすでに
検出結果内にある場合、そのprofileはその完全な機能セットを継承します。
それ以外の場合は安全なデフォルトが適用されます。
追加設定は不要です。検出が有効で、IAM
プリンシパルにbedrock:ListInferenceProfilesがある限り、profileは
openclaw models listでfoundation modelと並んで表示されます。
注記
- Bedrockでは、AWSアカウント/リージョンでモデルアクセスを有効にする必要があります。
- 自動検出には
bedrock:ListFoundationModelsおよびbedrock:ListInferenceProfiles権限が必要です。 - auto modeに依存する場合は、サポートされているAWS認証環境マーカーのいずれかを
gateway host上に設定してください。環境マーカーなしでIMDS/共有設定認証を使いたい場合は、
plugins.entries.amazon-bedrock.config.discovery.enabled: trueを設定してください。 - OpenClawは認証情報ソースを次の順序で表示します:
AWS_BEARER_TOKEN_BEDROCK、 次にAWS_ACCESS_KEY_ID+AWS_SECRET_ACCESS_KEY、次にAWS_PROFILE、その後に デフォルトのAWS SDKチェーン。 - reasoningサポートはモデルに依存します。現在の機能については Bedrockモデルカードを確認してください。
- 管理されたキー方式を使いたい場合は、Bedrockの前段にOpenAI互換の proxyを置き、代わりにそれをOpenAIプロバイダーとして設定することもできます。
Guardrails
amazon-bedrock plugin設定に
guardrailオブジェクトを追加することで、すべてのBedrockモデル呼び出しにAmazon Bedrock Guardrails
を適用できます。Guardrailsにより、コンテンツフィルタリング、
トピック拒否、単語フィルター、機微情報フィルター、および文脈的
グラウンディングチェックを強制できます。
guardrailIdentifier(必須)は、guardrail ID(例:abc123)または 完全なARN(例:arn:aws:bedrock:us-east-1:123456789012:guardrail/abc123)を受け付けます。guardrailVersion(必須)は、使用する公開バージョン、または 作業ドラフトに対して"DRAFT"を指定します。streamProcessingMode(任意)は、guardrail評価を ストリーミング中に同期的("sync")または非同期的("async")に実行するかを制御します。省略した場合、 Bedrockはデフォルト動作を使用します。trace(任意)は、APIレスポンスでguardrailトレース出力を有効にします。 デバッグには"enabled"または"enabled_full"を設定し、本番では 省略するか"disabled"を設定してください。
bedrock:ApplyGuardrail権限が必要です。