Skip to content

discovery drops thinkingLevelMap: max/xhigh thinking levels not exposed for supported models #8

Description

@damngamerz

Summary

Discovered Requesty models are registered with pi as reasoning: true but without a thinkingLevelMap, so pi does not advertise the max (or xhigh) thinking levels — even for models that support them (e.g. DeepSeek V4 Flash).

Per pi's docs (docs/models.md → Thinking Level Map), a model with reasoning: true but no thinkingLevelMap exposes only the standard levels up to high; xhigh and max are treated as unsupported. So users of this extension can't select max for models that actually support it.

Where

discoverModels() in requesty.js maps each model from the /models response to a fixed field set:

{
  id, name,
  reasoning: model.supports_reasoning === true,
  input, cost, contextWindow, maxTokens
}

It only reads the boolean supports_reasoning and never emits thinkingLevelMap. The same shape is written back in updateModelsJson and registered at startup via pi.registerProvider(...).

Repro

  1. Install pi-requesty.
  2. Have Requesty's /models return a reasoning-capable model such as sference/deepseek-v4-flash-0731.
  3. In pi /settings (or --thinking), only min / low / med / high appear — no max.

Workaround (manual, survives sync because modelOverrides is a separate key from models):

{
  "providers": {
    "requesty": {
      "modelOverrides": {
        "sference/deepseek-v4-flash-0731": {
          "thinkingLevelMap": { "high": "high", "low": "low", "max": "max", "medium": "medium" }
        }
      }
    }
  }
}

Expected behavior

The extension should propagate per-model thinking-level metadata so pi exposes the correct levels automatically. Options:

  1. If Requesty's /models response includes per-model level info, map it to thinkingLevelMap in discoverModels and persist it in updateModelsJson.
  2. Otherwise, fall back to a sensible default thinkingLevelMap (e.g. expose high/max for reasoning: true models) unless the user overrides.

Environment

  • pi 0.83.0
  • pi-requesty v0.2.7
  • Model: sference/deepseek-v4-flash-0731 (requesty provider)

Metadata

Metadata

Assignees

No one assigned

    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