DeepSeek Harness · run failure
dsh run failed: 400 “unsupported model” — the route cannot serve it
400 "unsupported model"
The request named a model the provider route cannot serve. The turn ended with `{"kind":"error","code":"INVALID_REQUEST"}` and `400 "unsupported model"`.
请求点名了一个 provider 路由无法提供的模型。turn 以 `{"kind":"error","code":"INVALID_REQUEST"}` 和 `400 "unsupported model"` 结束。
Why it happens根因
The model identifier is not offered by the endpoint your credential points at — a model that does not exist, one that is not enabled for this key, or one renamed or retired upstream. Like provider-pricing, it commonly appears the same day a model changes.
该模型标识不被你的凭证所指向的端点提供——模型不存在、未为此 key 启用,或在上游被改名/下线。和 provider-pricing 一样,它常与模型变更同日出现。
How to fix it怎么修
- Choose a model this key can serve; `400 unsupported model` means the route does not offer it.
- If you just switched, switch back or update the route before switching again.
- Run `npx dsh-why run --all` — if pricing and auth failures share the day, the model change is the single root.
npx dsh-why run see every run failure this can name看它能定性的全部运行期失败- 选一个这条 key 能服务的模型;`400 unsupported model` 表示路由不提供它。
- 如果刚切过,先切回去,或先更新路由再切。
- 跑 `npx dsh-why run --all`——如果 pricing 和 auth 的失败也在同一天,模型变更是唯一的根因。
npx dsh-why run see every run failure this can name看它能定性的全部运行期失败Is this my plugin’s fault?这是我的插件引起的吗?
No. This is a local configuration state, not code. Nothing in your plugin set can set or unset a credential.
不是。这是本地配置状态,不是代码问题。你装的任何插件都无法设置或取消一个凭证。
Related failures相关失败
503 "pricing not configured for provider/model"no pricing for this model401: The API Key appears to be invalid or may have expiredthe key was rejectedclient-modules: require("…") missed the module table— or the other way round: dsh will not start at all
FAQ常见问题
The model is in the composer list but the request says unsupported
The composer list and the routes your credential can actually reach are different sets. The provider is the authority on the second one.
Does this damage my session?
No. The turn failed at request validation, before the model produced anything, so there is nothing to clean up. dsh-why reports whether any tool call had already run.
模型在 composer 列表里,但请求说不支持
composer 列表与你的凭证实际能触达的路由是两个不同的集合。后者以 provider 为准。
这会损坏我的会话吗?
不会。turn 在请求校验阶段就失败了,模型还没产出任何东西,所以没有需要清理的东西。dsh-why 会报告是否已有工具调用执行过。