diff --git a/litellm/llms/openai/workload_identity.py b/litellm/llms/openai/workload_identity.py index 8a914039bd0..e9ac26e26a2 100644 --- a/litellm/llms/openai/workload_identity.py +++ b/litellm/llms/openai/workload_identity.py @@ -45,7 +45,7 @@ def resolve_openai_workload_identity_config( api_key: str | None, api_base: str | None, ) -> OpenAIWorkloadIdentityConfig | None: - if api_key is not None or get_secret_str("OPENAI_API_KEY") is not None: + if api_key or get_secret_str("OPENAI_API_KEY"): return None effective_api_base: Final = ( api_base or litellm.api_base or get_secret_str("OPENAI_BASE_URL") or get_secret_str("OPENAI_API_BASE") diff --git a/tests/test_litellm/llms/openai/test_openai_workload_identity.py b/tests/test_litellm/llms/openai/test_openai_workload_identity.py index 852e499dc54..228d591b47a 100644 --- a/tests/test_litellm/llms/openai/test_openai_workload_identity.py +++ b/tests/test_litellm/llms/openai/test_openai_workload_identity.py @@ -63,6 +63,15 @@ class TestResolveConfig: monkeypatch.setenv("OPENAI_API_KEY", "sk-from-env") assert resolve_openai_workload_identity_config(api_key=None, api_base=None) is None + def test_empty_env_openai_api_key_counts_as_unset( + self, wif_env: OpenAIWorkloadIdentityConfig, monkeypatch: pytest.MonkeyPatch + ) -> None: + monkeypatch.setenv("OPENAI_API_KEY", "") + assert resolve_openai_workload_identity_config(api_key=None, api_base=None) == wif_env + + def test_empty_api_key_param_counts_as_unset(self, wif_env: OpenAIWorkloadIdentityConfig) -> None: + assert resolve_openai_workload_identity_config(api_key="", api_base=None) == wif_env + def test_foreign_api_base_disables(self, wif_env: OpenAIWorkloadIdentityConfig) -> None: assert resolve_openai_workload_identity_config(api_key=None, api_base="https://my-vllm.internal/v1") is None