fix(dashscope): let the image env var beat any shared DashScope base

This commit is contained in:
mateo-berri 2026-10-28 21:38:27 -07:00
parent 2a48c69e3e
commit 8ddb3f7731
2 changed files with 16 additions and 2 deletions

View file

@ -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,

View file

@ -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",
"",