diff --git a/src/sequrity/types/messages/__init__.py b/src/sequrity/types/messages/__init__.py index 780bb5d..ed782dd 100644 --- a/src/sequrity/types/messages/__init__.py +++ b/src/sequrity/types/messages/__init__.py @@ -17,6 +17,7 @@ OutputConfigParam, TextBlockParam, ThinkingBlockParam, + ThinkingConfigAdaptiveParam, ThinkingConfigDisabledParam, ThinkingConfigEnabledParam, ThinkingConfigParam, @@ -68,6 +69,7 @@ "ThinkingConfigParam", "ThinkingConfigEnabledParam", "ThinkingConfigDisabledParam", + "ThinkingConfigAdaptiveParam", "MetadataParam", "OutputConfigParam", "JSONOutputFormatParam", diff --git a/src/sequrity/types/messages/request.py b/src/sequrity/types/messages/request.py index 8fe7a2a..380fe13 100644 --- a/src/sequrity/types/messages/request.py +++ b/src/sequrity/types/messages/request.py @@ -325,8 +325,21 @@ class ThinkingConfigDisabledParam(BaseModel): model_config = ConfigDict(extra="ignore") +class ThinkingConfigAdaptiveParam(BaseModel): + """Adaptive thinking configuration. + + Claude automatically decides whether to use extended thinking based on + the complexity of the request. + See https://docs.anthropic.com/en/api/messages + """ + + type: Literal["adaptive"] = Field(default="adaptive", description="Thinking is adaptive.") + + model_config = ConfigDict(extra="ignore") + + ThinkingConfigParam = Annotated[ - ThinkingConfigEnabledParam | ThinkingConfigDisabledParam, + ThinkingConfigEnabledParam | ThinkingConfigDisabledParam | ThinkingConfigAdaptiveParam, Field(discriminator="type"), ]