🤖HermesBlog
Hermes 功能详解 · 第29篇2026/8/9· Easy Understand Hermes Agent

第29篇:备用提供商——AI 不宕机

Hermes 功能详解第29篇:Fallback Providers。主模型挂了自动切换备用。

这篇讲的是:当你的主力 AI 服务突然“罢工”时,Hermes Agent 如何自动切换到备用提供商,让你的对话不中断。


为什么需要“备用提供商”?

想象一下:你正在用主力 AI 写一份重要报告,突然它返回“服务器繁忙”或“API 密钥无效”。如果没有备用方案,对话就卡住了。

Hermes 的解决方案是三层保险

  1. 密钥池:同一家服务换多个 API 密钥(比如你有 3 个 OpenRouter 密钥)
  2. 主力模型回退:换到另一家服务商(比如从 Anthropic 切到 OpenRouter)
  3. 辅助任务回退:处理图片识别、压缩等小任务时独立选择提供商

本篇重点讲第 2 层——跨服务商自动切换


第1步:配置备用提供商

最简单的办法是运行交互式命令:

hermes fallback

它会像 hermes model 一样让你选提供商、填密钥,然后自动写入配置。管理子命令:

hermes fallback add       # 添加备用
hermes fallback list      # 查看列表(ls 也行)
hermes fallback remove    # 删除某个(rm 也行)
hermes fallback clear     # 清空全部

如果你喜欢手动改配置文件,打开 ~/.hermes/config.yaml,添加:

fallback_providers:
  - provider: openrouter
    model: anthropic/claude-sonnet-4

注意:每条必须同时写 providermodel,缺一不可。旧的 fallback_model 配置仍然兼容,但建议用新的 fallback_providers(支持多个备用,按顺序尝试)。


第2步:支持的提供商

Hermes 支持 30+ 家服务商,包括 OpenRouter、Anthropic、DeepSeek、Google Gemini、xAI(Grok)、本地模型(LM Studio)等。配置时只需填对应的 API 密钥环境变量即可。

自定义本地模型示例:

fallback_providers:
  - provider: custom
    model: llama-3.1-70b
    base_url: http://localhost:8000/v1
    key_env: LOCAL_API_KEY   # 本地模型可省略

第3步:什么时候会触发切换?

当主力模型遇到以下错误时,Hermes 会自动切换:

  • 限流(HTTP 429)——重试几次后仍失败
  • 服务器错误(500/502/503)——同样先重试
  • 认证失败(401/403)——立即切换,不重试
  • 无效响应——返回乱码或空内容

切换过程无缝进行:对话历史、工具调用、上下文全部保留,你甚至感觉不到换了模型。


重要提醒:切换有“成本”

备用切换会重置提示词缓存。因为缓存是按模型+账号区分的,切到新模型后,下一次请求要按全价重新读取整个对话历史(而不是享受 75%~90% 的缓存折扣)。切回主力模型时也一样。这是为了“活着”付出的代价——长会话频繁切换会更贵。

另外,切换是“按轮次”的:每轮新对话都从主力模型开始,只有主力失败时才启用备用,且每轮最多切换一次。如果备用也失败,就正常报错。


总结

备用提供商就像汽车的备胎——平时用不上,关键时刻能救命。配置一次,以后 AI 服务商出问题时,你的对话依然稳如泰山。

下篇预告:第30篇——辅助任务回退:当“小任务”也有自己的备用方案时,会发生什么?

📖 官方文档

本文根据 Hermes Agent 官方文档编写,原文见:官方文档 › user-guide/configuring-models