From c3307243577a01d7acf619e36c0f242262b81473 Mon Sep 17 00:00:00 2001 From: chinganc Date: Tue, 7 Jan 2025 13:43:27 -0800 Subject: [PATCH 1/2] Make azure_ad_token_provider customizable. --- autogen/oai/client.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/autogen/oai/client.py b/autogen/oai/client.py index 481e55728c54..e0b92e287579 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 type(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: From 92e0d2eb1d39250482228ee8a732ec404c3eff58 Mon Sep 17 00:00:00 2001 From: chinganc Date: Tue, 7 Jan 2025 13:57:25 -0800 Subject: [PATCH 2/2] Minor change to satisfy pre-commit-check --- autogen/oai/client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autogen/oai/client.py b/autogen/oai/client.py index e0b92e287579..3fa3b5be179b 100644 --- a/autogen/oai/client.py +++ b/autogen/oai/client.py @@ -474,7 +474,7 @@ def _configure_azure_openai(self, config: Dict[str, Any], openai_config: Dict[st # Create a default Azure token provider if requested azure_ad_token_provider = openai_config.get("azure_ad_token_provider") if azure_ad_token_provider is not None: - assert type(azure_ad_token_provider) == str, "azure_ad_token_provider must be a string" + 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"