Skip to content

Add ReasoningEffort.Max - #7717

Open
AkiKurisu wants to merge 1 commit into
dotnet:mainfrom
AkiKurisu:feature/reasoning-effort-max
Open

Add ReasoningEffort.Max#7717
AkiKurisu wants to merge 1 commit into
dotnet:mainfrom
AkiKurisu:feature/reasoning-effort-max

Conversation

@AkiKurisu

@AkiKurisu AkiKurisu commented Aug 24, 2026

Copy link
Copy Markdown

Adds a Max level to ReasoningEffort, one tier above ExtraHigh. Both providers with
first-party IChatClient adapters now expose it: OpenAI added "max" to
ResponseReasoningEffortLevel in
openai-dotnet#1289, and Anthropic
12.42.0 already exposes Max on Anthropic.Models.Messages.Effort. Since ReasoningOptions
is sealed with only Effort and Output, there is currently no provider-neutral way to
request the top tier.

Implements the API proposed in #7715.

Changes

  • ReasoningEffort.cs: Add Max. Reword the ExtraHigh summary, which claimed
    "Maximum reasoning for the most demanding tasks".
  • OpenAIChatClient.cs / OpenAIResponsesChatClient.cs: Map ReasoningEffort.Max
    to new ChatReasoningEffortLevel("max") / new ResponseReasoningEffortLevel("max"),
    using the string constructor as "xhigh" does today (Map ReasoningEffort.None and ExtraHigh to "none" and "xhigh" in OpenAI IChatClient implementations #7319). These can move to the
    generated .Max property once a release containing openai-dotnet#1289 is picked up.
  • Microsoft.Extensions.AI.Abstractions.json: Add the new stable field to the API
    baseline.
  • Tests: Add Max as [InlineData] on the existing parameterized theories in
    ReasoningOptionsTests, OpenAIChatClientTests, and OpenAIResponseClientTests. The
    latter two assert the emitted "max" wire value.
Microsoft Reviewers: Open in CodeFlow

@AkiKurisu
AkiKurisu requested a review from a team as a code owner August 24, 2026 05:19
@AkiKurisu

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

@AkiKurisu

Copy link
Copy Markdown
Author

@dotnet-policy-service agree

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant