diff --git a/autogen/oai/client.py b/autogen/oai/client.py index 481e55728c54..3fa3b5be179b 100644 --- a/autogen/oai/client.py +++ b/autogen/oai/client.py @@ -472,11 +472,14 @@ def _configure_azure_openai(self, config: Dict[str, Any], openai_config: Dict[st openai_config["azure_endpoint"] = openai_config.get("azure_endpoint", openai_config.pop("base_url", None)) # Create a default Azure token provider if requested - if openai_config.get("azure_ad_token_provider") == "DEFAULT": + azure_ad_token_provider = openai_config.get("azure_ad_token_provider") + if azure_ad_token_provider is not None: + assert isinstance(azure_ad_token_provider, str), "azure_ad_token_provider must be a string" import azure.identity - + if azure_ad_token_provider == "DEFAULT": + azure_ad_token_provider = "https://cognitiveservices.azure.com/.default" openai_config["azure_ad_token_provider"] = azure.identity.get_bearer_token_provider( - azure.identity.DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default" + azure.identity.DefaultAzureCredential(), azure_ad_token_provider ) def _configure_openai_config_for_bedrock(self, config: Dict[str, Any], openai_config: Dict[str, Any]) -> None: