[diffusion][bugfix] Separate Diffusers hooks from model metadata (#6749)

Signed-off-by: david6666666 <530634352@qq.com>
Signed-off-by: Gao Han <hgaoaf@connect.ust.hk>
Co-authored-by: Gao Han <hgaoaf@connect.ust.hk>
This commit is contained in:
WeiQing ChenandGao Han authored and GitHub committed 2026-08-29 17:37:14 +00:00
1 parent 73893e73ea
commit 9a88d2d21d
11 files changed
+232 -12

No files matched your search

+17 -4
View File
@@ -685,6 +685,19 @@ def resolve_model_class_name(
return None
def uses_diffusers_adapter(od_config: object) -> bool:
"""Return whether execution uses the Diffusers adapter backend.
A custom pipeline takes precedence over ``diffusion_load_format`` in the
worker, so adapter-specific behavior must only apply when no custom
pipeline override is configured.
"""
return (
getattr(od_config, "custom_pipeline_args", None) is None
and getattr(od_config, "diffusion_load_format", "default") == "diffusers"
)
@dataclass
class OmniDiffusionConfig:
# Model and path configuration (for convenience)
@@ -1317,10 +1330,6 @@ class OmniDiffusionConfig:
from vllm_omni.diffusion.utils.hf_utils import get_diffusion_model_index
# Default model_class_name for diffusers adapter
if self.model_class_name is None and self.diffusion_load_format == "diffusers":
self.model_class_name = "DiffusersAdapterPipeline"
assert self.model is not None
try:
config_dict = get_diffusion_model_index(
@@ -1330,6 +1339,8 @@ class OmniDiffusionConfig:
if config_dict is not None:
if self.model_class_name is None:
self.model_class_name = config_dict.get("_class_name", None)
if self.model_class_name is None and self.diffusion_load_format == "diffusers":
self.model_class_name = "DiffusersAdapterPipeline"
self.update_multimodal_support()
# Skip transformer config loading for diffusers adapter
@@ -1370,6 +1381,8 @@ class OmniDiffusionConfig:
# Skip transformer config loading for diffusers adapter
# (non-DiT models don't have a separate transformer folder/config)
if self.diffusion_load_format == "diffusers":
if self.model_class_name is None:
self.model_class_name = "DiffusersAdapterPipeline"
self.set_tf_model_config(TransformerConfig())
logger.warning(
"Could not find a valid pipeline index per Diffusers format. "