feat: introduced max reasoning effort tier across model and rpc systems

- Introduced `Max` as a first-class reasoning effort tier across all packages, including AI providers, coding agent configurations, and RPC protocols.
- Refactored model effort ladders to use wire-exact mappings and removed legacy effort aliasing (e.g., `max-to-xhigh` mapping).
- Updated model registry and provider configurations to support `Max` tier routing, color themes, and UI icon associations.
- Expanded test suites to provide end-to-end coverage for the new reasoning tier, including updated compatibility and fallback scenarios.
This commit is contained in:
can1357
2026-07-10 13:39:33 +02:00
parent 6813fa128f
commit d435385ab1
78 changed files with 1688 additions and 2868 deletions
+1 -1
View File
@@ -10,7 +10,7 @@ from typing import Literal
from pydantic import Field, SecretStr, field_validator, model_validator
from pydantic_settings import BaseSettings, SettingsConfigDict
ThinkingLevel = Literal["off", "low", "medium", "high", "xhigh"]
ThinkingLevel = Literal["off", "low", "medium", "high", "xhigh", "max"]
class Settings(BaseSettings):
+3 -2
View File
@@ -33,7 +33,7 @@ Supported keys (today):
contains `<alias>` (case-insensitive). Falls back to the normal random
pool selection if no member matches.
- `/thinking <level>` — override `ROBOMP_THINKING` for this run. Accepts
`off|none|no`, `lo|low`, `med|medium`, `hi|high`, `xhi|xhigh`
`off|none|no`, `lo|low`, `med|medium`, `hi|high`, `xhi|xhigh`, `max`
(case-insensitive); anything else is ignored.
Parser semantics:
@@ -49,7 +49,7 @@ from __future__ import annotations
import re
from typing import Literal
ThinkingLevel = Literal["off", "low", "medium", "high", "xhigh"]
ThinkingLevel = Literal["off", "low", "medium", "high", "xhigh", "max"]
# Key = ascii lowercase / digit / dash / underscore, must start with a letter.
# The value (when using `/key=value` form) runs to end-of-token.
@@ -164,6 +164,7 @@ _THINKING_ALIASES: dict[str, ThinkingLevel] = {
"high": "high",
"xhi": "xhigh",
"xhigh": "xhigh",
"max": "max",
}