anomalyco / anomalyco/opencode
Opencode Zen Deepseek V4 Flash Free (new) reasoning_effort produces wrong behaviour
@MrMushrooooom is already working on this.
Since Aug 6, 2026.
- Dominant language
- TypeScript
- Stars
- 209k
- Forks
- 27.5k
- PR merge metrics
- PR metrics pending
Description
Description
When using thinking.type: enabled with the reasoning_effort parameter on the deepseek-v4-flash-free model, I observe that **reasoning_effort: "low"produces significantly longer visible reasoning content** than"max"`.
Steps to reproduce
- Send a streaming request with:
{ "model": "deepseek-v4-flash-free", "messages": [{"role": "user", "content": "Design a microservices architecture for e‑commerce"}], "stream": true, "thinking": {"type": "enabled"}, "reasoning_effort": "low" // or "max" } - Accumulate
reasoning_contentandcontentfrom streaming deltas. - Compare lengths and API‑reported token usage.
Observed results (averaged over 5 iterations)
Effort Time (s) Reasoning chars Final chars
low 23.61 5646 1764
high 12.36 1303 1855
max 29.07 1476 1107
Expected behaviour
I would expect reasoning_effort: "max" to either produce more reasoning content than "low", or that the parameter controls the amount of reasoning in a straightforward way. The current behaviour is surprising and may confuse users.
Environment
- Model:
deepseek-v4-flash-free - API endpoint: https://opencode.ai/zen/v1
- Used streaming with
thinking.type: enabled
Plugins
N/A
OpenCode version
N/A
Steps to reproduce
- Send a streaming request with:
{ "model": "deepseek-v4-flash-free", "messages": [{"role": "user", "content": "Design a microservices architecture for e‑commerce"}], "stream": true, "thinking": {"type": "enabled"}, "reasoning_effort": "low" // or "max" } - Accumulate
reasoning_contentandcontentfrom streaming deltas. - Compare lengths and API‑reported token usage.
Screenshot and/or share link
No response
Operating System
N/A
Terminal
N/A
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.
Assessment
This issue has not been assessed yet.