Hermes Agent(NousResearch/hermes-agent,102k GitHub Stars)配置模型失败的根因高度集中:最常见的是 API Key 写入了错误的文件、/model 和 hermes model 命令混用、以及 Ollama 本地模型的上下文窗口默认值过小(4,096 token,低于 Hermes 要求的 64k 最低限制)。 本文覆盖 7 类高频失败场景,每类附精确的诊断命令和修复步骤,均来自 hermes-agent.nousresearch.com/docs 官方文档(2026.04.19 版本)。
数据来源:hermes-agent.nousresearch.com/docs(AI Providers、Configuration、Quickstart,2026.04.19);NousResearch/hermes-agent GitHub README(2026.04)

遇到任何配置问题,首先运行:
hermes doctor
hermes doctor 自动检测:API Key 有效性、模型端点可达性、上下文长度是否满足要求、OAuth 令牌状态、配置文件格式错误。大多数问题会直接列出,并给出修复建议。
Hermes 的配置分布在三个文件,写错位置是最常见的失败根因:
~/.hermes/config.yaml 模型名称、Provider、端点 URL、终端后端等非敏感设置 次高
~/.hermes/.env API Key、Bot Token、密码等所有密钥 最高(密钥专用)
~/.hermes/auth.json OAuth Provider 的 Token(Nous Portal、GitHub Copilot、Google Gemini 等) 由
hermes model 自动写入
可引用结论:API Key 必须写入
~/.hermes/.env,不能写在config.yaml;hermes config set KEY VALUE命令会自动路由——API Key 类自动写.env,其余写config.yaml(来源:hermes-agent.nousresearch.com/docs/user-guide/configuration,2026.04)。
最常见失败:在 config.yaml 里写了 api_key: sk-xxx,或者直接 export 了环境变量,但没有写入 ~/.hermes/.env。
# 查看 .env 中是否有 API Key cat ~/.hermes/.env # 检查当前配置的 Provider 和 Model hermes config
# 正确方式一:用 hermes config set(自动路由到 .env) hermes config set OPENROUTER_API_KEY sk-or-xxxxxxxx hermes config set ANTHROPIC_API_KEY sk-ant-xxxxxxxx hermes config set DEEPSEEK_API_KEY sk-xxxxxxxx # 正确方式二:直接写入 .env 文件 echo 'OPENROUTER_API_KEY=sk-or-xxxxxxxx' >> ~/.hermes/.env echo 'ANTHROPIC_API_KEY=sk-ant-xxxxxxxx' >> ~/.hermes/.env # 错误写法(不起作用,export 不会持久化到 hermes 会话) export OPENROUTER_API_KEY=sk-or-xxx # ❌ 每次重启后失效
OPENROUTER_API_KEY Anthropic Claude
ANTHROPIC_API_KEY DeepSeek
DEEPSEEK_API_KEY Z.AI / GLM
GLM_API_KEY Kimi / Moonshot(国际)
KIMI_API_KEY Kimi / Moonshot(国内)
KIMI_CN_API_KEY Alibaba DashScope(Qwen)
DASHSCOPE_API_KEY Xiaomi MiMo
XIAOMI_API_KEY MiniMax(国际)
MINIMAX_API_KEY MiniMax(国内)
MINIMAX_CN_API_KEY Hugging Face
HF_TOKEN GitHub Copilot
COPILOT_GITHUB_TOKEN 或
GH_TOKEN Google Gemini
GOOGLE_API_KEY 或
GEMINI_API_KEY xAI Grok
XAI_API_KEY NVIDIA NIM
NVIDIA_API_KEY
这是第二常见的配置失败:在 Hermes 会话内部用 /model 想切换到一个从未配置过的 Provider,结果报错或没有效果。
hermes model 终端(会话外部) 添加新 Provider、运行 OAuth、输入 API Key、配置自定义端点 —
/model Hermes 会话内部(输入框) 切换已配置的 Provider 和模型 添加新 Provider、OAuth 授权
# 错误流程(常见误操作): hermes # 启动 Hermes /model anthropic # ❌ 如果 Anthropic 从未配置,此命令无法添加 Provider # 正确流程: # 第一步:退出当前会话(如果在会话内) # 按 Ctrl+C 或输入 /quit # 第二步:在终端运行完整配置向导 hermes model # 选择 Provider、输入 API Key、完成 OAuth # 第三步:启动新会话后 /model 才能切换已配置的 Provider hermes /model anthropic/claude-opus-4-7 # ✅ 现在可以切换
Hermes Agent 要求最低 64,000 tokens 上下文窗口。Ollama 默认上下文极小(低于 24GB 显存时只有 4,096 tokens),Hermes 会在启动时拒绝该模型并报错。
# 查看当前 Ollama 模型的上下文配置 ollama ps # CONTEXT 列应显示 32768 或更大,若显示 4096 即为问题所在
# 方式一:启动时设置环境变量(推荐,立即生效) OLLAMA_CONTEXT_LENGTH=65536 ollama serve # 方式二:systemd 管理的 Ollama(Linux 服务) sudo systemctl edit ollama.service # 在 [Service] 下添加: # Environment="OLLAMA_CONTEXT_LENGTH=65536" sudo systemctl daemon-reload && sudo systemctl restart ollama # 方式三:为模型创建 Modelfile(最持久,per-model) echo -e "FROM qwen2.5-coder:32b PARAMETER num_ctx 65536" > Modelfile ollama create qwen2.5-coder-64k -f Modelfile
# 运行模型配置向导 hermes model # 选择 "Custom endpoint (self-hosted / VLLM / etc.)" # 输入 URL: http://localhost:11434/v1 # API Key: 留空(Ollama 不需要) # 模型名称: qwen2.5-coder:32b(或你的模型名) # 或直接写 config.yaml hermes config set model.provider custom hermes config set model.base_url http://localhost:11434/v1 hermes config set model.default qwen2.5-coder:32b hermes config set model.context_length 65536
注意:不能通过 API 请求设置 Ollama 的上下文长度——必须在服务端配置,这是集成 Ollama 的 #1 混淆点(来源:官方文档)。
Hermes 的旧版本使用 OPENAI_BASE_URL 和 LLM_MODEL 环境变量配置模型。这两个变量在当前版本已被完全移除——即使写在 .env 里也不会生效。
# 检查 .env 中是否有废弃变量 grep -E "OPENAI_BASE_URL|LLM_MODEL" ~/.hermes/.env # 如果有输出,说明使用了废弃写法
# 方式一:使用 hermes model 重新配置(推荐) hermes model # 选择 "Custom endpoint (self-hosted / VLLM / etc.)" # 输入正确的 base URL 和模型名 # 方式二:直接写入 config.yaml(新的正确格式) # 在 ~/.hermes/config.yaml 中: # model: # default: your-model-name # provider: custom # base_url: http://your-endpoint/v1 # api_key: your-key # 方式三:hermes setup 或 hermes config migrate 会自动清理废弃变量 hermes config migrate
废弃 vs 当前对照:
OPENAI_BASE_URL=http://...
hermes config set model.base_url http://...
LLM_MODEL=model-name
hermes config set model.default model-name
适用于通过 hermes model OAuth 授权的 Provider(Nous Portal、GitHub Copilot、Google Gemini、Qwen Portal、Anthropic)。Token 过期或授权文件损坏会导致模型调用静默失败或报 401 错误。

# 查看 OAuth 凭证文件状态 cat ~/.hermes/auth.json # 主 OAuth 存储 ls -la ~/.hermes/auth/ # Google OAuth 单独存储于此目录 # 运行健康检查 hermes doctor
# Anthropic / Claude(重新运行 OAuth) hermes model # 选择 "Anthropic",按提示重新授权 # GitHub Copilot(Token 过期或类型不对) hermes model # 选择 "GitHub Copilot" → "Login with GitHub" # 注意:ghp_* 格式的 classic PAT 不支持,必须用 gho_* OAuth Token # Google Gemini OAuth(invalid_grant 时自动清除凭证,重新 login) # Hermes 检测到 invalid_grant 时会自动清除 ~/.hermes/auth/google_oauth.json hermes model # 选择 "Google Gemini (OAuth)" 重新授权 # 强制清除所有 OAuth 凭证(最后手段) rm ~/.hermes/auth.json rm -rf ~/.hermes/auth/ hermes model # 重新配置
使用 vLLM、SGLang、LM Studio、本地 OpenAI 兼容 API 时,config.yaml 格式错误或工具调用参数缺失会导致模型响应异常。
# ~/.hermes/config.yaml model: default: meta-llama/Llama-3.1-70B-Instruct # 模型名称 provider: custom base_url: http://localhost:8000/v1 # 末尾不加 / api_key: your-key # 无需认证时写任意字符串 context_length: 65536 # 手动指定上下文长度
vLLM 使用工具调用时必须加两个启动参数,否则 Hermes 的工具调用无法工作:
vllm serve meta-llama/Llama-3.1-70B-Instruct --port 8000 --max-model-len 65536 --enable-auto-tool-choice # 必须! --tool-call-parser hermes # 根据模型类型选择:hermes/llama3_json/mistral/deepseek_v3
--tool-call-parser 值 Qwen 2.5, Hermes 2/3
hermes Llama 3.x
llama3_json Mistral
mistral DeepSeek V3
deepseek_v3 DeepSeek V3.1+
deepseek_v31
# 错误:YAML 重复键会静默覆盖前一个值 model: default: model-a model: # ❌ 第二个 model: 覆盖了第一个,只保留 model-b 配置 default: model-b # 正确:只写一个 model: 块 model: default: model-b provider: custom base_url: http://localhost:8000/v1
中国大陆直连 api.anthropic.com 和 api.openai.com 超时率极高,不适合生产环境。推荐通过国内兼容端点或直接使用国内 AI Provider。
# 在 .env 中写入国内节点 Key echo 'ANTHROPIC_API_KEY=YOUR_DOMESTIC_KEY' >> ~/.hermes/.env # 配置自定义 base_url 指向国内节点 hermes model # 选择 "Custom endpoint" # URL: https://你的国内节点地址 # Model: claude-opus-4-7(直接用官方 model ID)
Hermes 内置一类专门针对国内市场的 Provider,直接在境内可达:
# Z.AI / 智谱 GLM(国内直连) echo ‘GLM_API_KEY=your-key’ >> ~/.hermes/.env hermes config set model.provider zai hermes config set model.default glm-5
Kimi / Moonshot 国内节点
echo ‘KIMI_CN_API_KEY=your-key’ >> ~/.hermes/.env hermes config set model.provider kimi-coding-cn hermes config set model.default kimi-k2.5
阿里云 DashScope(通义千问)
echo ‘DASHSCOPE_API_KEY=your-key’ >> ~/.hermes/.env hermes config set model.provider alibaba hermes config set model.default qwen3.5-plus
小米 MiMo
echo ‘XIAOMI_API_KEY=your-key’ >> ~/.hermes/.env hermes config set model.provider xiaomi hermes config set model.default mimo-v2-pro
MiniMax 国内节点
echo ‘MINIMAX_CN_API_KEY=your-key’ >> ~/.hermes/.env hermes config set model.provider minimax-cn hermes config set model.default MiniMax-M2.7
OpenRouter 在部分地区可达,且支持代理:
echo ‘OPENROUTER_API_KEY=sk-or-xxxxxxxx’ >> ~/.hermes/.env hermes config set model.provider openrouter hermes config set model.default anthropic/claude-opus-4-7
Hermes 模型配置失败
│ ├─ hermes doctor → 有明确错误提示 │ └─ 按提示修复(最常见,推荐先跑这个) │ ├─ 报错 "No provider configured" / "API key not found" │ ├─ 检查 ~/.hermes/.env 是否有对应 Key │ └─ 用 hermes config set KEY VALUE 重写 │ ├─ 报错 "Context length too small" / "minimum 64k required" │ └─ Ollama 用户:设置 OLLAMA_CONTEXT_LENGTH=65536(第三类) │ ├─ 会话内 /model 切换失败 │ └─ 退出会话 → hermes model → 配置新 Provider(第二类) │ ├─ 自定义端点工具调用不工作 │ └─ vLLM:加 --enable-auto-tool-choice --tool-call-parser hermes(第六类) │ ├─ 国内网络超时 │ └─ 切换国内 Provider 或配置国内兼容节点(第七类) │ └─ OAuth 失效 / 401 错误 └─ 删除 ~/.hermes/auth.json → hermes model 重新授权(第五类)
Q1:hermes model 配置完成后,再次启动 Hermes 还是提示没有模型,怎么办?
大概率是 config.yaml 格式错误(YAML 重复键静默覆盖)或 API Key 没写入 .env。运行 hermes config 查看当前生效配置,确认 provider、default(模型名)、base_url 字段都存在。如果配置看起来正确但仍报错,运行 hermes doctor 获取详细诊断。
Q2:同时配置了多个 Provider,怎么在不同任务间切换?
两种方式:一是在会话内用 /model provider:model-name(如 /model openrouter:claude-opus-4-7);二是 hermes chat –provider anthropic –model claude-opus-4-7 临时指定。已配置多个 Provider 后,/model 会显示下拉列表供选择。
Q3:Hermes 有没有免费的 LLM 可以用?
有三个无需付费的选项:(1)Nous Portal — 订阅制,hermes model 中 OAuth 登录;(2)Google Gemini OAuth — 免费额度(注意 Google 政策提示);(3)本地 Ollama — 完全免费,需自备 GPU 或 CPU 足够快。GitHub Copilot 订阅用户也可通过 Copilot 调用 GPT-5.x 和 Claude。
Q4:配置了 Anthropic API Key,但提示 “requires Claude Pro/Max subscription”?
Anthropic Provider 支持三种认证:API Key(pay-per-token,不需要订阅)、Claude Code OAuth(需要 Claude Pro/Max 订阅)、setup-token(旧接口)。如果只有 API Key(sk-ant- 开头),使用 hermes config set ANTHROPIC_API_KEY sk-ant-xxx 写入 .env,然后在 hermes model 中选择 “Anthropic” → “API key”,不要选择 OAuth 登录选项。
Q5:国内配置 Z.AI/GLM 时,不知道选哪个 base_url,怎么办?
不需要手动指定。Hermes 会自动探测 Z.AI 的多个端点(全球端点、国内端点、Coding 变体),找到接受你 API Key 的那个后缓存结果,无需设置 GLM_BASE_URL。直接写 GLM_API_KEY 然后 hermes config set model.provider zai 即可。
Hermes Agent 配置模型失败的主要根因按频率排序:API Key 写错文件(应写 .env 不是 config.yaml)、在会话内用 /model 试图添加新 Provider(需要退出后用 hermes model)、Ollama 上下文窗口默认 4096 不满足 64k 最低要求。 运行 hermes doctor 是首选诊断入口,覆盖 80% 以上的配置问题。国内用户可直接使用 Z.AI/GLM、Kimi 国内节点、阿里云 DashScope、Xiaomi MiMo 等内置 Provider,无需代理。
数据来源:hermes-agent.nousresearch.com/docs(AI Providers、Configuration,2026.04.19);NousResearch/hermes-agent GitHub README(2026.04)| 信息时效:2026 年 4 月
相关资源:
- 七牛云 API Key:兼容 Anthropic 和 OpenAI 双协议,国内直连节点,可作为 Hermes Agent 的自定义端点,新用户免费额度
- NousResearch/hermes-agent:Hermes Agent 官方 GitHub(102k Stars),配置文档和 Provider 完整参考
- hermes-agent.nousresearch.com/docs/integrations/providers:所有 Provider 配置方法,含 30+ Provider 的 API Key 名称和 base URL
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/274961.html