From 8ddb3f7731a36da0db9d6ed03a16f6893da4e37a Mon Sep 17 00:00:00 2001 From: mateo-berri <277851410+mateo-berri@users.noreply.github.com> Date: Wed, 28 Oct 2026 21:38:27 -0700 Subject: [PATCH] fix(dashscope): let the image env var beat any shared DashScope base --- .../dashscope/image_generation/transformation.py | 6 ++++-- tests/unit/test_dashscope_image_generation.py | 12 ++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/litellm/llms/dashscope/image_generation/transformation.py b/litellm/llms/dashscope/image_generation/transformation.py index 79fe13ce179..cdb8fef00d7 100644 --- a/litellm/llms/dashscope/image_generation/transformation.py +++ b/litellm/llms/dashscope/image_generation/transformation.py @@ -131,6 +131,8 @@ class DashScopeImageGenerationConfig(BaseImageGenerationConfig): stream: bool | None = None, ) -> str: image_env_api_base: Final = self._image_api_base_env() + if not api_base and image_env_api_base: + return image_env_api_base configured_api_base: Final = api_base or self._configured_chat_api_base() if configured_api_base and configured_api_base.rstrip("/").endswith(DASHSCOPE_CHAT_COMPATIBLE_PATH): return image_env_api_base or self._default_image_api_base() @@ -138,8 +140,8 @@ class DashScopeImageGenerationConfig(BaseImageGenerationConfig): return configured_api_base endpoints: Final = resolve_dashscope_endpoints(configured_api_base) if endpoints is not None: - return (None if api_base else image_env_api_base) or f"{endpoints.origin}{DASHSCOPE_IMAGE_PATH}" - return configured_api_base or image_env_api_base or self._default_image_api_base() + return f"{endpoints.origin}{DASHSCOPE_IMAGE_PATH}" + return configured_api_base or self._default_image_api_base() def validate_environment( self, diff --git a/tests/unit/test_dashscope_image_generation.py b/tests/unit/test_dashscope_image_generation.py index abd80e9732e..6e128282c6f 100644 --- a/tests/unit/test_dashscope_image_generation.py +++ b/tests/unit/test_dashscope_image_generation.py @@ -519,6 +519,18 @@ def test_litellm_image_generation_dashscope_end_to_end(model: str): ), (None, "https://gateway.example.com/dashscope/images", "", "https://gateway.example.com/dashscope/images"), (None, "https://dashscope-us.aliyuncs.com", "https://images.example.com/generate", "https://images.example.com/generate"), + ( + None, + f"https://dashscope-us.aliyuncs.com{DASHSCOPE_IMAGE_PATH}", + "https://images.example.com/generate", + "https://images.example.com/generate", + ), + ( + None, + "https://gateway.example.com/dashscope/images", + "https://images.example.com/generate", + "https://images.example.com/generate", + ), ( "https://dashscope-us.aliyuncs.com", "",