* Azure Service Principal with Secret authentication workflow. (#5131)
* Implement Azure Service Principal with Secret authentication workflow.
* Use `ClientSecretCredential` instead of `DefaultAzureCredential`.
* Move imports into the function.
* Add type hint for `azure_ad_token_provider`.
* Add unit test for router initialization and sample completion using Azure Service Principal with Secret authentication workflow.
* Add unit test for router initialization with neither API key nor using Azure Service Principal with Secret authentication workflow.
* fix(client_initializtion_utils.py): fix typing + overrides
* test: fix linting errors
* fix(client_initialization_utils.py): fix client init azure ad token logic
* fix(router_client_initialization.py): add flag check for reading azure ad token from environment
* test(test_streaming.py): skip end of life bedrock model
* test(test_router_client_init.py): add correct flag to test
---------
Co-authored-by: kzych-inpost <142029278+kzych-inpost@users.noreply.github.com>
Without this change, the default version of the Azure OpenAI API is hardcoded in
the code as an old version, `"2024-02-01"`. This change allows the user to set
the default version of the Azure OpenAI API by setting the environment variable
`AZURE_API_VERSION` or by using the command-line parameter `--api_version`.