模型排障 · 生产路由已验证

OpenAI 兼容 API model not found 模型错误排查

先用同一个 Key 查询模型列表。一次短请求就能判断应该检查认证、路由、模型 ID,还是生成接口兼容性。

model not found 到底表示什么?

直接结论:服务端无法把本次请求中的模型标识路由到可用模型。不要凭记忆改模型名,应使用同一 API Key 查询模型列表,再复制返回的完整 id。

实际结果能确认什么下一步
GET /v1/models 返回 401请求已到认证层,但凭据缺失或未通过检查 Authorization 头,以及 Key 由哪套 MonkeyAI 系统签发
模型列表成功,但没有目标 ID该 Key 当前看不到这个完整 ID选择返回列表中的 ID,或确认是否应开通权限
模型列表成功,完整 ID 存在,但生成失败基础路由和模型可见性已通过检查接口兼容性、错误码和请求证据
模型列表返回 HTML 或 404请求可能没有进入兼容 API 路由检查 Base URL,以及客户端是否正确拼接 /models

先查询当前 Key 可见的模型

OpenAI Models API 把 GET /v1/models 定义为查询当前可用模型及其基础信息的接口。请使用出错客户端正在使用的同一域名和同一 Key 发起请求。

curl -sS https://monkeytheme.com/v1/models \
  -H "Authorization: Bearer ***"

查看返回的 data[].id。拼写、标点和后缀都要一致。其他服务商、旧教程或不同账户出现过某个名字,并不能证明当前 Key 在这里也能调用它。

2026 年 8 月 3 日,未携带凭据的生产探测在该路径收到结构化 HTTP 401。这只能确认公开模型路径到达 MonkeyAI 认证层,不能证明任何特定 Key 或模型可用。

Base URL、域名和 Key 必须属于同一套系统

请使用与出错客户端相同的 Base URL 和凭据排查。不同系统签发的 Key 不能混用。MonkeyAI 的 OpenAI 兼容接入参数是:

OPENAI_BASE_URL=https://monkeytheme.com/v1
OPENAI_API_KEY=***

客户端只要求填写一次 Base URL。不要同时在 Base URL 和自定义接口字段追加 /v1,否则可能变成 /v1/v1。如果原始响应是 HTML,应先检查最终请求 URL,而不是继续改模型名。

复制完整模型 ID,不要自造别名

模型字段应使用 /v1/models 返回的完整 ID。客户端里显示的“fast”“default”或中文名称可能只是本地标签,不一定是 API 模型 ID。请同时检查客户端模型字段、环境变量、工作区配置和 Agent 单独覆盖项。

curl -sS https://monkeytheme.com/v1/models \
  -H "Authorization: Bearer ***" \
| python3 -c 'import json,sys; [print(x.get("id")) for x in json.load(sys.stdin).get("data", [])]'
这段命令只打印模型列表中的 ID,不会测试生成接口或协议兼容性。

模型在列表里,但请求仍然失败怎么办?

保存 HTTP 状态、结构化错误码、响应头、可用的 request ID、接口类型和时间戳。模型出现在列表中,不代表它支持所有接口和所有请求字段。OpenAI 兼容网关的协议覆盖范围可能不同,应以实际响应为准。

官方资料与相关教程

常见问题

出现 model not found 后,可以直接猜一个更新的模型名吗?

不可以。请使用同一 Key 请求 GET /v1/models,并复制返回的完整 data[].id。

模型列表成功,是否代表生成请求一定成功?

不代表。它只能确认本次请求的基础认证、路由和模型可见性;生成接口与请求格式仍需兼容。

为什么 models 接口返回 HTML?

请求可能进入了网站或 SPA 页面,而不是 API。请检查最终 Base URL,并确认请求地址是 /v1/models。

其他 MonkeyAI 系统签发的 Key 可以混用吗?

不可以。凭据只属于签发它的系统。请配套使用 monkeytheme.com 的 Key 和 Base URL。

提交排障工单时应提供什么?

提供时间戳、接口、模型 ID、HTTP 状态、安全的错误详情和可用的 request ID。不要提交 API Key 或完整敏感提示词。