Hermes Agent 怎么接入 AWS Bedrock:Converse API、Anthropic SDK 路由与 IAM 认证

发布时间:2026/9/12 5:24:52

Hermes Agent 怎么接入 AWS Bedrock:Converse API、Anthropic SDK 路由与 IAM 认证 Hermes Agent 怎么接入 AWS BedrockConverse API、Anthropic SDK 路由与 IAM 认证【免费下载链接】hermes-agentThe agent that grows with you项目地址: https://gitcode.com/GitHub_Trending/he/hermes-agent这篇文章解决一个具体任务把 Hermes Agent 的模型提供方切换成 Amazon Bedrock让它通过 AWS 凭证IAM 角色或环境变量调用 Claude、Nova、DeepSeek、Llama 等 Bedrock 上的模型并跑通第一次hermes chat。完成后你会得到一条可核对的验证路径hermes doctor报告凭证可用、Bedrock API 可达、并列出你区域内可用的模型数量。三条 API 路由同一个提供方不同的底层协议Hermes 把 Bedrock 作为原生 provider 接入但并非所有模型都走同一个 API。按模型家族路由如下AWS Bedrock 指南模型家族API 路由原因Anthropic ClaudeAnthropic SDKAnthropicBedrock客户端提示缓存、thinking budgets、adaptive thinking 等特性 Converse 不暴露OpenAI GPT-5.5 / GPT-5.6Sol、Terra、LunaBedrock MantleOpenAI Responses端点bedrock-mantle.region.api.aws/openai/v1这些模型是 Mantle 专属模型卡标注 Converse 不支持其他Nova、DeepSeek、Llama、GPT-OSS 等原生Converse APIbedrock-runtime完整 Bedrock 能力Guardrails、inference profiles、流式三条路由共享同一套 AWS 凭证链和 region 解析不需要为每条路由单独配置。Mantle 端点请求在设置了AWS_BEARER_TOKEN_BEDROCK时用 bearer token 认证否则通过标准 boto3 凭证链做 SigV4 签名。Claude 走 SDK 路由的实现在 agent/anthropic_adapter.pybuild_anthropic_bedrock_client()使用anthropic.AnthropicBedrockboto3 默认凭证链文档说明这是为了让 Claude 获得 Converse 缺失的完整特性。Converse 路径的实现在 agent/bedrock_adapter.py。准备条件凭证、IAM 权限与 boto31. AWS 凭证—— 任一 boto3 凭证链支持的来源均可IAM 实例角色EC2 / ECS / Lambda零配置AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY环境变量AWS_PROFILESSO 或命名 profileaws configure本地开发。2. IAM 权限—— 至少需要bedrock:InvokeModel和bedrock:InvokeModelWithResponseStream推理bedrock:ListFoundationModels和bedrock:ListInferenceProfiles模型发现。在 AWS 计算环境EC2 / ECS / Lambda上给实例挂一个带AmazonBedrockFullAccess的 IAM 角色即可无需 API key 和.env配置Hermes 会自动检测实例角色。3. 安装 boto3 依赖cd ~/.hermes/hermes-agent uv pip install -e .[bedrock].[bedrock]extra 在 pyproject.toml 中固定为boto31.42.89。代码层面还要求 boto3 1.34.59converse_stream()的最低版本见 agent/bedrock_adapter.py 的_MIN_BOTO3_VERSION系统里旧版本的 boto3 会遮蔽 venv 中的版本并触发报错按提示升级即可。执行步骤选择 Bedrock 提供方并启动最短主路径是用交互式选择器# 1. 安装 Bedrock 支持已装过可跳过 cd ~/.hermes/hermes-agent uv pip install -e .[bedrock] # 2. 选择 Bedrock 作为 provider hermes model # → 选 More providers... → AWS Bedrock # → 选择 region 和模型 # 3. 开始对话 hermes chat跳过交互式的替代路径providers 文档 给出# 命名 profile~/.aws/credentials 中已配置 hermes chat --provider bedrock --model us.anthropic.claude-sonnet-4-6 # 或显式指定环境变量 AWS_PROFILEmyprofile AWS_REGIONus-east-1 hermes chat --provider bedrock --model us.anthropic.claude-sonnet-4-6运行hermes model之后~/.hermes/config.yaml会包含如下内容文档示例region 和模型按你的选择而定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如果你偏好直接编辑配置providers 文档 中的写法等价model: provider: bedrock default: us.anthropic.claude-sonnet-4-6 bedrock: region: us-east-1 # 或设置 AWS_REGION # profile: myprofile # 或设置 AWS_PROFILE # discovery: true # 自动发现 region 模型 # guardrail: # 可选的 Bedrock Guardrails # guardrail_identifier: your-guardrail-id # guardrail_version: DRAFTRegion 解析优先级Region 按以下优先级解析从高到低指南config.yaml中的bedrock.regionAWS_REGION环境变量AWS_DEFAULT_REGION环境变量默认值us-east-1BEDROCK_BASE_URL环境变量可用于覆盖 Bedrock runtime base URL默认https://bedrock-runtime.us-east-1.amazonaws.com指南建议通常保持未设置用AWS_REGION切换区域即可见 环境变量参考。选择模型使用 inference profile IDBedrock 按需调用on-demand invocation使用inference profile ID。hermes model选择器会自动展示这些 ID推荐模型排在前面。文档列出的常用模型指南模型ID备注Claude Sonnet 4.6us.anthropic.claude-sonnet-4-6推荐速度与能力平衡Claude Opus 4.6us.anthropic.claude-opus-4-6-v1能力最强Claude Haiku 4.5us.anthropic.claude-haiku-4-5-20251001-v1:0最快的 ClaudeOpenAI GPT-5.6 Solopenai.gpt-5.6-sol经 Bedrock MantleAmazon Nova Prous.amazon.nova-pro-v1:0Amazon 旗舰Amazon Nova Microus.amazon.nova-micro-v1:0最快、最便宜DeepSeek V3.2deepseek.v3.2强开源模型Llama 4 Scout 17Bus.meta.llama4-scout-17b-instruct-v1:0Meta 最新注意前缀含义us.前缀是跨 region inference profile提供更好的容量和跨 region 自动故障转移global.前缀在全球所有可用 region 间路由openai.*的模型 ID 由 Bedrock Mantle 在配置的 region 提供服务不使用 inference profile 前缀。对话中可以随时用/model命令切换/model us.amazon.nova-pro-v1:0 /model deepseek.v3.2 /model us.anthropic.claude-opus-4-6-v1可选Guardrails 与模型发现要对所有模型调用应用 Amazon Bedrock Guardrails在config.yaml中加入指南 的配置示例bedrock: region: us-east-2 guardrail: guardrail_identifier: abc123def456 # 从 Bedrock 控制台获取 guardrail_version: 1 # 版本号或 DRAFT stream_processing_mode: async # sync 或 async trace: disabled # enabled、disabled 或 enabled_full模型默认通过 Bedrock 控制平面自动发现。可用bedrock.discovery定制enabled、provider_filter只列出指定提供方、refresh_interval缓存时长例如 3600 秒。另外两条文档提到的行为无需配置Converse 路径上 Hermes 会按 allowlistAnthropic Claude 和 Amazon Nova 的模型 ID自动插入cachePoint提示缓存标记对不在静态上下文窗口表中的模型Hermes 会通过发送超量请求探测真实窗口上限。结果验证hermes doctorhermes doctordoctor 会依次检查指南 列出的四项AWS 凭证是否可用env vars、IAM 角色、SSOboto3是否已安装Bedrock API 是否可达调用ListFoundationModels你所在 region 内可用模型的数量。这四项都通过后说明凭证链、网络与权限配置完成hermes chat即可按上文路由表正常工作。排查与限制No API key found / No AWS credentialsHermes 按以下顺序查找凭证指南 的排查顺序AWS_BEARER_TOKEN_BEDROCKAWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_PROFILEEC2 实例元数据IMDSECS 容器凭证Lambda 执行角色都找不到时运行aws configure或给你的计算实例挂 IAM 角色。Invocation of model ID ... with on-demand throughput isnt supported模型 ID 用错了要用 inference profile IDus.或global.前缀不能用裸 foundation model ID。文档示例❌anthropic.claude-sonnet-4-6✅us.anthropic.claude-sonnet-4-6ThrottlingException命中了 Bedrock 的单模型速率限制。Hermes 会自动带 backoff 重试需要更高限额时在 AWS Service Quotas 控制台申请配额提升。两条需要留意的边界Claude 走的是 AnthropicBedrock SDK 路径而非 Converse所以extra_headers只对 OpenAI 兼容路由生效anthropic_messages和bedrock_converse两种 API 模式不使用它见 providers 文档。输出 token 上限的处理两条协议不同Anthropic Messages 路径含 Bedrock 原生路径要求max_tokensHermes 会供给内部值Converse 的inferenceConfig.maxTokens默认省略由 AWS 按模型最大值处理。可选延伸接入 Gateway 消息平台Bedrock 提供方配置完成后Hermes 的所有 gateway 平台Telegram、Discord、Slack、Feishu 等都可以直接用它——gateway 读取同一个config.yamlhermes gateway setup hermes gateway start这是指南中 Bedrock 之外的唯一延伸入口如果你的目标只是本机hermes chat到这里为止。【免费下载链接】hermes-agentThe agent that grows with you项目地址: https://gitcode.com/GitHub_Trending/he/hermes-agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/9/12 5:19:52

图片转PDF合并工具:高效解决文档数字化痛点

1. 项目概述:图片转PDF合并工具的核心价值 这个工具解决了纸质文档数字化过程中的三大痛点:多页扫描件分散存储、图片格式不便于归档、不同来源文件难以统一管理。我在处理合同资料时深有体会——每次用扫描仪生成几十张JPG后,手动合并成PDF要…

2026/9/12 5:19:52

团子翻译器:三步轻松搞定游戏生肉翻译的终极方案

团子翻译器:三步轻松搞定游戏生肉翻译的终极方案 还在为看不懂的外语游戏、漫画、视频而烦恼吗?团子翻译器正是为你量身打造的实时生肉翻译神器!这款基于OCR技术的专业翻译软件能够智能识别屏幕文字并实时翻译,让你彻底告别语言障…

2026/9/12 5:49:55

gpt-image-2 技术解析与工程实践:从 API 接入到提示词调优

1. 为什么 gpt-image-2 值得单独整理一份资源清单 这两年 AI 绘图模型迭代速度快到让人有点追不过来,但 gpt-image-2 发布之后,我明显感觉到它和上一代产品在“可用性”上的差距拉开了。以前我们讨论图像模型,核心关注点是“画得像不像、美不…

2026/9/12 5:49:54

ECharts交互式数据可视化开发与优化实战

1. ECharts 交互式数据可视化实战指南第一次接触ECharts是在2015年的一个企业级数据监控项目,当时客户需要实时展示服务器集群的运行状态。当我用十几行代码实现动态刷新的折线图时,整个会议室都沸腾了——这就是数据可视化的魔力。如今ECharts已成为国内…

2026/9/12 5:44:54

Sunshine 自托管游戏串流 30 分钟跑通:从安装到第一帧画面

Sunshine 自托管游戏串流 30 分钟跑通:从安装到第一帧画面 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine Sunshine 是开源免费、自托管的 Moonlight 串流主机&#xf…

2026/9/12 2:05:33

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/12 3:55:12

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/9 16:31:09

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/12 0:04:17

MATLAB仿生优化框架:长鼻浣熊算法多策略融合实现

简介:本资源是一份面向智能优化算法研究者与MATLAB初学者的仿生智能算法实践代码包,聚焦于长鼻浣熊优化算法(COA)的多策略改进与性能验证。针对传统COA易陷局部最优、收敛精度不足等问题,作者融合Circle映射初始化提升…

2026/9/12 0:04:17

【JAVA毕设源码分享】基于 JavaWeb 的校园一卡通管理系统的设计与实现 基于 JavaWeb 的校园卡业务管理系统(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/9/12 0:04:17

【JAVA毕设源码分享】基于 Java 的图书馆借阅管理平台的搭建与实现 基于 Java 的图书馆综合管理系统(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/9/10 12:32:02

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/10 15:19:50

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/10 15:49:53

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码