[Bug] 思考档位对 grok 这类自定义模型是摆设,请求里根本没带 reasoning_effort
Nobody has claimed this yet.
- Dominant language
- No language data
- Stars
- 22
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
提交前确认 · Pre-submission checklist
- 我已搜索过现有 issue,确认这不是重复 / I searched existing issues and confirmed this isn't a duplicate.
- 我已阅读 CONTRIBUTING.md / I've read CONTRIBUTING.md.
问题类别 · Category
模型设置 / 切换 · Model config
涉及的 Agent 框架 · Agent framework
ZCode Agent(自研)
严重程度 · Severity
阻塞使用 · Blocking (无法使用核心功能 / core function unusable)
复现频率 · Reproducibility
必现 · Always
问题描述 · Description
我用自定义 OpenAI 兼容接口接 grok-4.6。模型设置里填了思考档位,聊天框也能选,但发出去的请求里完全没有 reasoning_effort。换 low、high 都一样,软件也不提示。
不是网关吞的。直连抓包也没有这个字段。同一家供应商,模型 ID 改成带 gpt 的就能发出去;curl 手动带上 reasoning_effort,上游也认。
问题出在 ZCode 自己。界面上的档位,和真正写进请求的参数,是两套东西。写进请求那套只认模型名字里有没有 gpt、glm、claude、deepseek、kimi。名字对不上就不写这个字段,等于开关是假的。
白名单给官方模型做兼容没问题,但自定义模型漏了兜底。用户已经声明了档位,就应该按档位发。发不出去也该说一声,别偷偷丢掉。
3.9.1 我报过一次(#389),一直待评估。3.10.2 还在,3.11.1 规则表也没改。一般人看不到请求体,中转站大多也没有后台,所以这个问题很容易被当成模型不支持。其实是客户端没发。
复现步骤 · Steps to reproduce
加一个 openai-compatible 供应商,模型填 grok-4.6,设置里打开思考档位
选 high 发一条,看请求体,没有 reasoning_effort
把模型 ID 改成 gpt-grok-4.6 再发一条,字段就有了
期望表现 · Expected behavior
界面选了什么档,请求里就带 reasoning_effort。名字不在白名单里也一样。如果某档确定不发,请提示,别静默丢掉。别静默丢掉!!!别静默丢掉!!!!!!!!!什么毛病?货不对板。你要恶心第三方模型在你家平台的使用,倒是写明白啊。你偷偷摸摸恶心用户算什么本事???!!你偷偷摸摸恶心用户算什么本事???!!
实际表现 · Actual behavior
请求里没有 reasoning_effort,换档没用。同供应商下,名字带 gpt 就正常。
ZCode 版本 · ZCode version
3.11.1
设备 / 系统 / 浏览器 · Device / OS / Browser
macOS Apple Silicon
截图 / 录屏 / 日志 · Screenshots / Recordings / Logs
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the issue with an OpenAI-compatible provider using model ID grok-4.6, then inspect the outgoing request body and compare it with the gpt-prefixed case. Done means the selected reasoning level is reflected as reasoning_effort for custom model IDs, or the user receives an explicit warning when it cannot be sent.
Written by the indexing model from the issue text.
Assessment
- Domain
- api
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 48/100