需通过五步完成:第一步确认主模型归属服务商;第二步在.env中严格按格式添加各api密钥;第三步在config.yaml的providers区块配置多服务商入口;第四步设置default模型及fallback链或场景路由;第五步用hermes config check和dashboard验证连通性与切换功能。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

想让Hermes同时用上国内GLM-5.1、Kimi-K2.6和国外OpenRouter上的Claude-3.5,又不想每次手动改配置或重启?你需要的不是单个模型设置,而是让不同服务商模型在同一个界面里随时调用、自动兜底、按需切换的完整管理路径。
第一步:确认主模型服务类型
打开终端,运行hermes config show,重点看model和provider字段。如果显示为unknown或空值,说明主模型未生效——这通常是因为config.yaml里只写了模型名但没配provider,或者.env里缺对应API密钥。
主模型必须明确归属某一个服务商,不能裸写glm-5.1。正确写法是z-ai/glm-5.1(z-ai是GLM官方provider标识),否则Hermes无法定位到该模型所属的API入口。
第二步:添加国内模型API密钥
国内模型如GLM、Kimi、Minimax,密钥必须存入~/.hermes/.env文件,且变量名要严格匹配官方要求:
用文本编辑器打开~/.hermes/.env,在文件末尾新增一行:
GLM_API_KEY=sk-glm-xxx
如果是Kimi,写KIMI_API_KEY=sk-kimi-xxx;Minimax则写MINIMAX_API_KEY=sk-minimax-xxx。注意大小写和下划线,【错一个字符会导致模型完全不可用】。
保存后无需重启,Hermes会在下次请求时自动读取新密钥。
第三步:配置多服务商模型列表
进入~/.hermes/config.yaml,找到providers区块。这里不是填主模型的地方,而是建“服务商通讯录”——每个服务商一条记录,含base_url、api_mode和key_env。
以GLM为例,添加如下结构(缩进必须是两个空格):
z-ai:
base_url: https://api.majiabin.com/v1
api_mode: chat_completions
key_env: GLM_API_KEY
key_env值必须和.env里定义的变量名完全一致,否则密钥不会被加载。Ollama本地模型可直接写base_url: http://127.0.0.1:11434/v1,无需key_env。
第四步:设置主模型与Fallback链
在config.yaml顶部修改default区块:
方法一:单主模型+双降级
default:
model: z-ai/glm-5.1
provider: z-ai
fallback_providers:
- kimi/kimi-k2.6
- openrouter/anthropic/claude-3.5-sonnet
方法二:按场景路由(需启用全局路由)
在config.yaml中添加routing:区块,定义关键词触发规则,例如“写Python代码”自动切到openrouter/openai/gpt-4o,“总结会议纪要”走z-ai/glm-5-turbo。
两种方式不冲突,Fallback链是兜底,路由规则是主动调度。启用路由前需确保hermes gateway restart已执行。
第五步:验证模型是否就位
运行hermes config check,检查输出中是否有红色报错。若提示Missing API key for provider 'z-ai',说明.env里GLM_API_KEY未生效或拼写错误。
接着执行hermes dashboard,打开浏览器访问http://127.0.0.1:9119,在模型选择器下拉菜单中应能看到所有已配置的模型名称,包括z-ai/glm-5.1、kimi/kimi-k2.6、openrouter/claude-3.5-sonnet等。
点击任意模型右侧的测试按钮,发送一句“你好”,观察响应头中X-Model-Used字段返回的实际模型ID。如果返回glm-5.1,说明国内模型已通;如果返回claude-3-5-sonnet-20240620,说明OpenRouter链路也已激活。











