fix(azure): forward responses context_management

This commit is contained in:
Ousama Ben Younes 2026-11-02 00:31:03 +00:00
parent 60fc121ce8
commit ebec6ca308
2 changed files with 8 additions and 17 deletions

View file

@ -70,9 +70,6 @@ def _with_responses_api_version(api_base: str | None, litellm_params: Mapping[st
class AzureOpenAIResponsesAPIConfig(OpenAIResponsesAPIConfig):
# Parameters not supported by Azure Responses API
AZURE_UNSUPPORTED_PARAMS = ["context_management"]
@property
def custom_llm_provider(self) -> LlmProviders:
return LlmProviders.AZURE
@ -99,13 +96,6 @@ class AzureOpenAIResponsesAPIConfig(OpenAIResponsesAPIConfig):
def unresolved_model_reasoning_field_values(self, model: str) -> ReasoningFieldValues | None:
return SUMMARY_ONLY_REASONING_FIELD_VALUES if self._is_gpt_5_model(model) else None
def get_supported_openai_params(self, model: str) -> list:
"""
Azure Responses API does not support context_management (compaction).
"""
base_supported_params: Final = super().get_supported_openai_params(model)
return [param for param in base_supported_params if param not in self.AZURE_UNSUPPORTED_PARAMS]
def validate_environment(self, headers: dict, model: str, litellm_params: GenericLiteLLMParams | None) -> dict:
return BaseAzureLLM.base_validate_azure_environment(headers=headers, litellm_params=litellm_params)

View file

@ -710,14 +710,15 @@ class TestAzureResponsesAPIConfig:
assert "tools" not in response_api_params
def test_azure_responses_api_context_management_unsupported(self):
"""Test that context_management is not in Azure supported params.
def test_azure_responses_api_supports_context_management(self):
supported = self.config.get_supported_openai_params("gpt-5.1")
assert "context_management" in supported
Azure does not support context_management (compaction). It should be
excluded from supported params so it gets dropped.
"""
supported = self.config.get_supported_openai_params(self.model)
assert "context_management" not in supported
o_series_supported = AzureOpenAIOSeriesResponsesAPIConfig().get_supported_openai_params(
"o_series/gpt-o1"
)
assert "context_management" in o_series_supported
assert "temperature" not in o_series_supported
def _anyof_tool(self):
return {