Skip to content

OpenRouter supports xhigh,high,medium,low,minimal,none for reasoning effort, but Big-AGI exposes only high,medium and low #940

Description

@Slava-256

What's happening?

According to https://openrouter.ai/docs/guides/best-practices/reasoning-tokens

OpenRouter normalizes the different ways of customizing the amount of reasoning tokens that the model will use, providing a unified interface across different providers.
"effort": "high", // Can be "xhigh", "high", "medium", "low", "minimal" or "none" (OpenAI-style)

So as long as the model support reasoning, presumably all xhigh,high,medium,low,minimal,none values can be used.

I tried xhigh,minimal,none with openai/o1 model on OpenRouter, and they worked, even though official OpenAI API should support only high,medium,low for o1 model, which is an earlier model than gpt-5 (when new values started to be introduced).

C:\test>curl https://openrouter.ai/api/v1/chat/completions -H "Content-Type: application/json" -H "Authorization: Bearer sk-<my_key>" -d "{"model": "openai/o1", "messages": [{"role": "user", "content": "Hi!"}], "reasoning_effort": "xhigh"}"
{"id":"gen-NNN","provider":"OpenAI","model":"openai/o1","object":"chat.completion","created":NNN,"choices":[{"logprobs":null,"finish_reason":"stop","native_finish_reason":"completed","index":0,"message":{"role":"assistant","content":"Hi there! How can I help you today?","refusal":null,"reasoning":null}}],"usage":{"prompt_tokens":8,"completion_tokens":11,"total_tokens":19,"cost":0.00078,"is_byok":false,"prompt_tokens_details":{"cached_tokens":0},"cost_details":{"upstream_inference_cost":0.00078,"upstream_inference_prompt_cost":0.00012,"upstream_inference_completions_cost":0.00066},"completion_tokens_details":{"reasoning_tokens":0,"image_tokens":0}}}

C:\test>curl https://openrouter.ai/api/v1/chat/completions -H "Content-Type: application/json" -H "Authorization: Bearer sk-<my_key>" -d "{"model": "openai/o1", "messages": [{"role": "user", "content": "Hi!"}], "reasoning_effort": "minimal"}"
{"id":"gen-NNN","provider":"OpenAI","model":"openai/o1","object":"chat.completion","created":NNN,"choices":[{"logprobs":null,"finish_reason":"stop","native_finish_reason":"completed","index":0,"message":{"role":"assistant","content":"Hello there! How can I help you today?","refusal":null,"reasoning":null}}],"usage":{"prompt_tokens":8,"completion_tokens":11,"total_tokens":19,"cost":0.00078,"is_byok":false,"prompt_tokens_details":{"cached_tokens":0},"cost_details":{"upstream_inference_cost":0.00078,"upstream_inference_prompt_cost":0.00012,"upstream_inference_completions_cost":0.00066},"completion_tokens_details":{"reasoning_tokens":0,"image_tokens":0}}}

C:\test>curl https://openrouter.ai/api/v1/chat/completions -H "Content-Type: application/json" -H "Authorization: Bearer sk-<my_key>" -d "{"model": "openai/o1", "messages": [{"role": "user", "content": "Hi!"}], "reasoning_effort": "none"}"
{"id":"gen-NNN","provider":"OpenAI","model":"openai/o1","object":"chat.completion","created":NNN,"choices":[{"logprobs":null,"finish_reason":"stop","native_finish_reason":"completed","index":0,"message":{"role":"assistant","content":"Hi there! How can I help you today?","refusal":null,"reasoning":null}}],"usage":{"prompt_tokens":8,"completion_tokens":11,"total_tokens":19,"cost":0.00078,"is_byok":false,"prompt_tokens_details":{"cached_tokens":0},"cost_details":{"upstream_inference_cost":0.00078,"upstream_inference_prompt_cost":0.00012,"upstream_inference_completions_cost":0.00066},"completion_tokens_details":{"reasoning_tokens":0,"image_tokens":0}}}

https://platform.openai.com/docs/api-reference/responses/create#responses_create-reasoning-effort says the following:

effort

string
Optional
Defaults to medium

Constrains effort on reasoning for reasoning models. Currently supported values are none, minimal, low, medium, high, and xhigh. Reducing reasoning effort can result in faster responses and fewer tokens used on reasoning in a response.

gpt-5.1 defaults to none, which does not perform reasoning. The supported reasoning values for gpt-5.1 are none, low, medium, and high. Tool calls are supported for all reasoning values in gpt-5.1.
All models before gpt-5.1 default to medium reasoning effort, and do not support none.
The gpt-5-pro model defaults to (and only supports) high reasoning effort.
xhigh is supported for all models after gpt-5.1-codex-max

https://platform.openai.com/docs/changelog clarifies introduction of "minimal" value:

Introduced the minimal reasoning effort value to optimize for fast responses in GPT-5 models (which support reasoning).

https://openai.com/index/gpt-5-1-codex-max clarifies that gpt-5-1-codex-max supports "xhigh":

For non-latency-sensitive tasks, we’re also introducing a new Extra High (‘xhigh’) reasoning effort

And it was the last model released in 5.1 family.

So it looks like all OpenAI reasoning models support low, medium, high.

Models starting with GPT-5 support minimal.

Models starting with gpt-5.1 support none

Models starting with gpt-5.1-codex-max support xhigh (which means gpt-5.1-codex-max and all 5.2, and potentially newer models)

I suggest to match this logic for OpenRouter models in Big-AGI and add support for additional reasoning effort values to respective models.

Where does this happen?

Big-AGI Pro (big-agi.com)

Impact on your workflow

Low - Minor inconvenience

Environment (if applicable)

No response

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    Status
    Shipped

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions