Providers
Amazon Bedrock
OpenClaw pode usar modelos da Amazon Bedrock por meio do provedor de streaming Bedrock Converse do pi-ai. A autenticação do Bedrock usa a cadeia de credenciais padrão do AWS SDK, não uma chave de API.
| Propriedade | Valor |
|---|---|
| Provedor | amazon-bedrock |
| API | bedrock-converse-stream |
| Autenticação | credenciais da AWS (variáveis de ambiente, configuração compartilhada ou função de instância) |
| Região | AWS_REGION ou AWS_DEFAULT_REGION (padrão: us-east-1) |
Primeiros passos
Escolha seu método de autenticação preferido e siga as etapas de configuração.
Access keys / env vars
Melhor para: máquinas de desenvolvimento, CI ou hosts em que você gerencia credenciais da AWS diretamente.
Set AWS credentials on the gateway host
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 key/bearer token):export AWS_BEARER_TOKEN_BEDROCK="..."Add a Bedrock provider and model to your config
Nenhum apiKey é necessário. Configure o provedor com 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" }, }, },}Verify models are available
openclaw models listEC2 instance roles (IMDS)
Melhor para: instâncias EC2 com uma função IAM anexada, usando o serviço de metadados da instância para autenticação.
Enable discovery explicitly
Ao usar IMDS, o OpenClaw não consegue detectar a autenticação da AWS apenas por marcadores de ambiente, então você deve aderir explicitamente:
openclaw config set plugins.entries.amazon-bedrock.config.discovery.enabled trueopenclaw config set plugins.entries.amazon-bedrock.config.discovery.region us-east-1Optionally add an env marker for auto mode
Se você também quiser que o caminho de detecção automática por marcador de ambiente funcione (por exemplo, para superfícies de openclaw status):
export AWS_PROFILE=defaultexport AWS_REGION=us-east-1Você não precisa de uma chave de API falsa.
Verify models are discovered
openclaw models listDescoberta automática de modelos
O OpenClaw pode descobrir automaticamente modelos Bedrock que oferecem suporte a streaming
e saída de texto. A descoberta usa bedrock:ListFoundationModels e
bedrock:ListInferenceProfiles, e os resultados são armazenados em cache (padrão: 1 hora).
Como o provedor implícito é habilitado:
- Se
plugins.entries.amazon-bedrock.config.discovery.enabledfortrue, o OpenClaw tentará a descoberta mesmo quando nenhum marcador de ambiente da AWS estiver presente. - Se
plugins.entries.amazon-bedrock.config.discovery.enablednão estiver definido, o OpenClaw só adicionará automaticamente o provedor Bedrock implícito quando vir um destes marcadores de autenticação da AWS:AWS_BEARER_TOKEN_BEDROCK,AWS_ACCESS_KEY_ID+AWS_SECRET_ACCESS_KEYouAWS_PROFILE. - O caminho real de autenticação do runtime do Bedrock ainda usa a cadeia padrão do AWS SDK, então
configuração compartilhada, SSO e autenticação por função de instância IMDS podem funcionar mesmo quando a descoberta
precisar de
enabled: truepara aderir explicitamente.
Discovery config options
As opções de configuração ficam em 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, }, }, }, }, },}| Opção | Padrão | Descrição |
|---|---|---|
enabled |
automático | No modo automático, o OpenClaw só habilita o provedor Bedrock implícito quando vê um marcador de ambiente da AWS compatível. Defina como true para forçar a descoberta. |
region |
AWS_REGION / AWS_DEFAULT_REGION / us-east-1 |
Região da AWS usada para chamadas à API de descoberta. |
providerFilter |
(todos) | Corresponde aos nomes de provedores do Bedrock (por exemplo, anthropic, amazon). |
refreshInterval |
3600 |
Duração do cache em segundos. Defina como 0 para desabilitar o cache. |
defaultContextWindow |
32000 |
Janela de contexto usada para modelos descobertos (sobrescreva se você conhecer os limites do seu modelo). |
defaultMaxTokens |
4096 |
Máximo de tokens de saída usado para modelos descobertos (sobrescreva se você conhecer os limites do seu modelo). |
Configuração rápida (caminho da AWS)
Este passo a passo cria uma função IAM, anexa permissões do Bedrock, associa o perfil de instância e habilita a descoberta do OpenClaw no host EC2.
# 1. Create IAM role and instance profileaws 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-Accessaws iam add-role-to-instance-profile \ --instance-profile-name EC2-Bedrock-Access \ --role-name EC2-Bedrock-Access # 2. Attach to your EC2 instanceaws ec2 associate-iam-instance-profile \ --instance-id i-xxxxx \ --iam-instance-profile Name=EC2-Bedrock-Access # 3. On the EC2 instance, enable discovery explicitlyopenclaw config set plugins.entries.amazon-bedrock.config.discovery.enabled trueopenclaw 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 enableecho 'export AWS_PROFILE=default' >> ~/.bashrcecho 'export AWS_REGION=us-east-1' >> ~/.bashrcsource ~/.bashrc # 5. Verify models are discoveredopenclaw models listConfiguração avançada
Inference profiles
O OpenClaw descobre perfis de inferência regionais e globais junto com modelos de base. Quando um perfil mapeia para um modelo de base conhecido, o perfil herda as capacidades desse modelo (janela de contexto, máximo de tokens, raciocínio, visão), e a região correta de solicitação do Bedrock é injetada automaticamente. Isso significa que perfis Claude entre regiões funcionam sem substituições manuais de provedor.
IDs de perfil de inferência se parecem com us.anthropic.claude-opus-4-6-v1:0 (regional)
ou anthropic.claude-opus-4-6-v1:0 (global). Se o modelo subjacente já estiver
nos resultados da descoberta, o perfil herdará seu conjunto completo de capacidades;
caso contrário, padrões seguros serão aplicados.
Nenhuma configuração extra é necessária. Desde que a descoberta esteja habilitada e o principal IAM
tenha bedrock:ListInferenceProfiles, os perfis aparecerão junto com
modelos de base em openclaw models list.
Service tier
Alguns modelos Bedrock oferecem suporte a um parâmetro service_tier para otimizar custo
ou latência. Os seguintes níveis estão disponíveis:
| Nível | Descrição |
|---|---|
default |
Nível padrão do Bedrock |
flex |
Processamento com desconto para cargas de trabalho que podem tolerar maior latência |
priority |
Processamento priorizado para cargas de trabalho sensíveis à latência |
reserved |
Capacidade reservada para cargas de trabalho estáveis |
Defina serviceTier (ou service_tier) por meio de agents.defaults.params para
solicitações de modelo Bedrock, ou por modelo em
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 }, }, }, }, },}Os valores válidos são default, flex, priority e reserved. Nem todos os
modelos oferecem suporte a todos os níveis — se um nível incompatível for solicitado, o Bedrock
retornará um erro de validação. Observação: a mensagem de erro é um tanto enganosa;
ela pode dizer "The provided model identifier is invalid" em vez de indicar
um nível de serviço incompatível. Se você vir esse erro, verifique se o modelo
oferece suporte ao nível solicitado.
Claude Opus 4.7 temperature
O Bedrock rejeita o parâmetro temperature para Claude Opus 4.7. O OpenClaw
omite temperature automaticamente para qualquer referência Bedrock do Opus 4.7, incluindo
IDs de modelo de base, perfis de inferência nomeados, perfis de inferência de aplicação
cujo modelo subjacente é resolvido como Opus 4.7 via
bedrock:GetInferenceProfile, e variantes pontuadas opus-4.7 com
prefixos regionais opcionais (us., eu., ap., apac., au., jp.,
global.). Nenhum controle de configuração é necessário, e a omissão se aplica tanto ao
objeto de opções da solicitação quanto ao campo de payload inferenceConfig.
Guardrails
Você pode aplicar Amazon Bedrock Guardrails
a todas as invocações de modelos Bedrock adicionando um objeto guardrail à configuração do Plugin
amazon-bedrock. Guardrails permitem impor filtragem de conteúdo,
negação de tópicos, filtros de palavras, filtros de informações sensíveis e verificações de
fundamentação contextual.
{ 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" }, }, }, }, },}| Opção | Obrigatório | Descrição |
|---|---|---|
guardrailIdentifier |
Sim | ID do Guardrail (por exemplo, abc123) ou ARN completo (por exemplo, arn:aws:bedrock:us-east-1:123456789012:guardrail/abc123). |
guardrailVersion |
Sim | Número da versão publicada, ou "DRAFT" para o rascunho de trabalho. |
streamProcessingMode |
Não | "sync" ou "async" para avaliação de guardrail durante streaming. Se omitido, o Bedrock usa seu padrão. |
trace |
Não | "enabled" ou "enabled_full" para depuração; omita ou defina como "disabled" para produção. |
Embeddings para busca de memória
O Bedrock também pode servir como provedor de embedding para
busca de memória. Isso é configurado separadamente do
provedor de inferência -- defina agents.defaults.memorySearch.provider como "bedrock":
{ agents: { defaults: { memorySearch: { provider: "bedrock", model: "amazon.titan-embed-text-v2:0", // default }, }, },}Os embeddings do Bedrock usam a mesma cadeia de credenciais do AWS SDK que a inferência (funções de instância,
SSO, chaves de acesso, configuração compartilhada e identidade web). Nenhuma chave de API é
necessária. Quando provider é "auto", o Bedrock é detectado automaticamente se essa
cadeia de credenciais for resolvida com sucesso.
Os modelos de embedding compatíveis incluem Amazon Titan Embed (v1, v2), Amazon Nova Embed, Cohere Embed (v3, v4) e TwelveLabs Marengo. Consulte Referência de configuração de memória -- Bedrock para a lista completa de modelos e opções de dimensão.
Observações e ressalvas
- O Bedrock requer acesso ao modelo habilitado na sua conta/região da AWS.
- A descoberta automática precisa das permissões
bedrock:ListFoundationModelsebedrock:ListInferenceProfiles. - Se você depender do modo automático, defina um dos marcadores de ambiente de autenticação AWS compatíveis no
host do gateway. Se preferir autenticação IMDS/configuração compartilhada sem marcadores de ambiente, defina
plugins.entries.amazon-bedrock.config.discovery.enabled: true. - O OpenClaw expõe a origem das credenciais nesta ordem:
AWS_BEARER_TOKEN_BEDROCK, depoisAWS_ACCESS_KEY_ID+AWS_SECRET_ACCESS_KEY, depoisAWS_PROFILE, depois a cadeia padrão do AWS SDK. - O suporte a raciocínio depende do modelo; consulte o cartão do modelo Bedrock para ver os recursos atuais.
- Se preferir um fluxo de chave gerenciada, você também pode colocar um proxy compatível com OpenAI na frente do Bedrock e configurá-lo como um provedor OpenAI.
Relacionados
Escolha de provedores, refs de modelo e comportamento de failover.
Embeddings do Bedrock para configuração de busca de memória.
Lista completa de modelos de embedding do Bedrock e opções de dimensão.
Solução de problemas geral e perguntas frequentes.