feat(compute): 官方 Anthropic 模型声明接受不含 thinking 的工具轮 (#99)

新增 extra.thinkingToolTurnValidation(requires-thinking / accepts-thinkless),与
thinkingRoundTrip 并列(后者 additionalProperties:false,不能往里加字段)。

anthropic.json 与 anthropic-claude.json 的 Fable 5.1 / Opus 5 / Sonnet 5 声明
accepts-thinkless:官方 adaptive thinking 不要求工具轮以 thinking 开头,模型跳过思考的
工具轮原样回放即合法(mini 真机六轮验证全部 200)。客户端据此不再对这类响应重试、
不再降级为关闭思考。旧客户端忽略该字段,行为不变。

model-spec schema 的 spec.extra 同步禁止 thinkingRoundTrip 与 thinkingToolTurnValidation,
与客户端 Schema 一致,避免写错后新客户端整份拒收规格。

presetDataVersion 113 → 114。
This commit is contained in:
2026-09-13 05:48:36 -04:00
committed by GitHub
parent 008a082b2a
commit d28297242c
6 changed files with 60 additions and 7 deletions

View File

@@ -259,8 +259,12 @@
},
"extra": {
"type": "object",
"description": "模型内在开放扩展:modelOrigin 描述真实原厂身份,speech 描述可跨小版本复用的语音协议;不含价格,也不得声明 Provider/接入面的 reasoning effort 能力。",
"not": { "required": ["reasoning"] },
"description": "模型内在开放扩展:modelOrigin 描述真实原厂身份,speech 描述可跨小版本复用的语音协议;不含价格,也不得声明 Provider/接入面的 reasoning effort、thinking 回放能力(thinkingRoundTrip)或工具轮 thinking 校验口径(thinkingToolTurnValidation)——这些只能写在 provider model 的 extra 中,客户端 Schema 会拒收整份规格。",
"allOf": [
{ "not": { "required": ["reasoning"] } },
{ "not": { "required": ["thinkingRoundTrip"] } },
{ "not": { "required": ["thinkingToolTurnValidation"] } }
],
"properties": {
"modelOrigin": { "$ref": "#/definitions/modelOrigin" },
"speech": { "$ref": "#/definitions/speechModelProfile" },