AWS Bedrock
Hermes Agent 通過 Converse API(而非 OpenAI 兼容端點)原生支持 Amazon Bedrock 作為提供商。這使您可以完全訪問 Bedrock 生態系統:IAM 身份驗證、Guardrails(護欄)、跨區域推理配置文件以及所有基礎模型。
前提條件
- AWS 憑證 — boto3 憑證鏈 支持的任何來源:
- IAM 實例角色(EC2、ECS、Lambda — 零配置)
AWS_ACCESS_KEY_ID+AWS_SECRET_ACCESS_KEY環境變量- 用於 SSO 或命名配置文件的
AWS_PROFILE - 用於本地開發的
aws configure
- boto3 — 使用
pip install hermes-agent[bedrock]安裝 - IAM 權限 — 至少需要:
bedrock:InvokeModel和bedrock:InvokeModelWithResponseStream(用於推理)bedrock:ListFoundationModels和bedrock:ListInferenceProfiles(用於模型發現)
在 AWS 計算環境中,附加具有 AmazonBedrockFullAccess 權限的 IAM 角色即可。無需 API 密鑰,無需 .env 配置 — Hermes 會自動檢測實例角色。
快速開始
# Install with Bedrock support
pip install hermes-agent[bedrock]
# Select Bedrock as your provider
hermes model
# → Choose "More providers..." → "AWS Bedrock"
# → Select your region and model
# Start chatting
hermes chat
配置
運行 hermes model 後,您的 ~/.hermes/config.yaml 將包含:
model:
default: us.anthropic.claude-sonnet-4-6
provider: bedrock
base_url: https://bedrock-runtime.us-east-2.amazonaws.com
bedrock:
region: us-east-2
區域 (Region)
通過以下任一方式設置 AWS 區域(優先級從高到低):
config.yaml中的bedrock.regionAWS_REGION環境變量AWS_DEFAULT_REGION環境變量- 默認值:
us-east-1
Guardrails(護欄)
要將 Amazon Bedrock Guardrails 應用於所有模型調用:
bedrock:
region: us-east-2
guardrail:
guardrail_identifier: "abc123def456" # From the Bedrock console
guardrail_version: "1" # Version number or "DRAFT"
stream_processing_mode: "async" # "sync" or "async"
trace: "disabled" # "enabled", "disabled", or "enabled_full"
模型發現
Hermes 通過 Bedrock 控制平面自動發現可用模型。您可以自定義發現行為:
bedrock:
discovery:
enabled: true
provider_filter: ["anthropic", "amazon"] # Only show these providers
refresh_interval: 3600 # Cache for 1 hour
可用模型
Bedrock 模型使用推理配置文件 ID 進行按需調用。hermes model 選擇器會自動顯示這些模型,並將推薦模型置於頂部:
| 模型 | ID | 說明 |
|---|---|---|
| Claude Sonnet 4.6 | us.anthropic.claude-sonnet-4-6 | 推薦 — 速度與能力的最佳平衡 |
| Claude Opus 4.6 | us.anthropic.claude-opus-4-6-v1 | 能力最強 |
| Claude Haiku 4.5 | us.anthropic.claude-haiku-4-5-20251001-v1:0 | 最快的 Claude 模型 |
| Amazon Nova Pro | us.amazon.nova-pro-v1:0 | Amazon 的旗艦模型 |
| Amazon Nova Micro | us.amazon.nova-micro-v1:0 | 最快、最便宜 |
| DeepSeek V3.2 | deepseek.v3.2 | 強大的開源模型 |
| Llama 4 Scout 17B | us.meta.llama4-scout-17b-instruct-v1:0 | Meta 的最新模型 |
以 us. 為前綴的模型使用跨區域推理配置文件,可在 AWS 區域之間提供更好的容量和自動故障轉移。以 global. 為前綴的模型在全球所有可用區域之間路由。
會話中切換模型
在對話期間使用 /model 命令:
/model us.amazon.nova-pro-v1:0
/model deepseek.v3.2
/model us.anthropic.claude-opus-4-6-v1
診斷
hermes doctor
Doctor 檢查以下內容:
- AWS 憑證是否可用(環境變量、IAM 角色、SSO)
- 是否安裝了
boto3 - Bedrock API 是否可達(ListFoundationModels)
- 您所在區域的可用模型數量
網關(消息平臺)
Bedrock 適用於所有 Hermes 網關平臺(Telegram、Discord、Slack、飛書等)。將 Bedrock 配置為您的提供商,然後正常啟動網關:
hermes gateway setup
hermes gateway start
網關讀取 config.yaml 並使用相同的 Bedrock 提供商配置。
故障排除
“No API key found” / “No AWS credentials”
Hermes 按以下順序檢查憑證:
AWS_BEARER_TOKEN_BEDROCKAWS_ACCESS_KEY_ID+AWS_SECRET_ACCESS_KEYAWS_PROFILE- EC2 實例元數據 (IMDS)
- ECS 容器憑證
- Lambda 執行角色
如果未找到任何憑證,請運行 aws configure 或將 IAM 角色附加到您的計算實例。
“Invocation of model ID ... with on-demand throughput isn't supported”
請使用推理配置文件 ID(以 us. 或 global. 為前綴),而不是裸基礎模型 ID。例如:
- ❌
anthropic.claude-sonnet-4-6 - ✅
us.anthropic.claude-sonnet-4-6
“ThrottlingException”
您已達到 Bedrock 每模型的速率限制。Hermes 會自動使用退避策略重試。要提高限制,請在 AWS Service Quotas 控制檯 中請求配額增加。