model_not_found 模型不存在或不可用怎么解决
调用返回 404 和 model_not_found,意思是:请求本身(地址、Key)没问题,但当前 Key 所属的分组里,没有任何通道能处理你指定的这个模型。几乎都是模型 ID 填错,或者分组选错了。
为什么会出现
HRouter 会先确认你的 Key 通过,再去分组里找能处理该模型的通道。找不到时,会明确返回 404 model_not_found,而不是一个含糊的 503,这样你能直接知道问题出在配置,而不是服务不稳定。常见原因:
| 原因 | 说明 |
|---|---|
| 模型 ID 拼错 | 大小写、连字符、日期后缀不一致 |
| 用了展示名称 | 客户端里显示的名字不是调用用的 ID |
| 模型不在当前分组 | 同一账号下,不同分组可用的模型不同 |
| 模型已下线或改名 | 旧教程里的型号已经不再提供 |
| 协议不匹配 | 用 OpenAI 协议请求 Claude 模型,或反过来 |
排查步骤
1. 重新查询当前 Key 的模型列表
curl https://hrouter.net/v1/models \
-H "Authorization: Bearer $HROUTER_API_KEY"
在返回的 data[].id 里找你要的模型。找不到,就是当前分组没有它,见第 3 步。详细说明见 查询可用模型。
2. 逐字复制 ID
把列表里的 id 原样复制到工具里。不要手敲,不要用展示名,不要补充或省略后缀。
3. 检查分组
如果列表里没有想要的模型:
怎么选分组见 如何选择 Key 分组。
4. 检查协议
| 模型类型 | 应使用的协议 | Base URL |
|---|---|---|
| Claude | Anthropic Messages | https://hrouter.net |
| OpenAI / Codex、Grok | OpenAI | https://hrouter.net/v1 |
| Gemini | Gemini | https://hrouter.net |
详见 API 地址对照表。
5. 列表里有,调用仍然失败
模型出现在列表里,不代表所有客户端都能用。有的分组限制客户端,例如名称或说明里带 “Claude Code only” 的分组只能给 Claude Code 使用。核对分组说明,见 API 403 报错。
各工具里怎么改
| 工具 | 在哪里改模型 |
|---|---|
| Claude Code | ANTHROPIC_MODEL 环境变量,或会话里 /model;详见 Claude Code |
| Codex | config.toml 里的 model;详见 Codex |
| HRouter Desktop | 编辑配置,重新点击“识别 Key”,保存新的模型绑定;详见 HRouter Desktop |
| Cherry Studio、Cline | 服务商设置里的模型 ID;详见 Cherry Studio、Cline |
| SDK | 请求参数里的 model |
和 503 的区别
如果返回的是 503,并且错误类型是 api_error,意思是分组里有能处理该模型的通道,但暂时都不可用(例如临时限流),稍后重试可能恢复,见 503、超时与流式中断。404 model_not_found 重试没有意义,必须改配置。