Skip to content

Opencode Zen Deepseek V4 Flash Free (new) reasoning_effort produces wrong behaviour #40777

Description

@CoderTom314

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_content and content from 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

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_content and content from streaming deltas.
  • Compare lengths and API‑reported token usage.

Screenshot and/or share link

No response

Operating System

N/A

Terminal

N/A

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions