feat(mm): port CLIPVisionDiffusersConfig to new api

This commit is contained in:
psychedelicious
2025-09-24 18:30:49 +10:00
parent e1a54badc1
commit 036ab04376

View File

@@ -1063,12 +1063,43 @@ class CLIPLEmbedDiffusersConfig(CLIPEmbedDiffusersConfig, ModelConfigBase):
return cls(**fields)
class CLIPVisionDiffusersConfig(DiffusersConfigBase, LegacyProbeMixin, ModelConfigBase):
class CLIPVisionDiffusersConfig(DiffusersConfigBase, ModelConfigBase):
"""Model config for CLIPVision."""
type: Literal[ModelType.CLIPVision] = ModelType.CLIPVision
format: Literal[ModelFormat.Diffusers] = ModelFormat.Diffusers
VALID_OVERRIDES: ClassVar = {
"type": ModelType.CLIPVision,
"format": ModelFormat.Diffusers,
}
VALID_CLASS_NAMES: ClassVar = {
"CLIPVisionModelWithProjection",
}
@classmethod
def from_model_on_disk(cls, mod: ModelOnDisk, fields: dict[str, Any]) -> Self:
if _validate_overrides(
config_class=cls,
provided_overrides=fields,
valid_overrides=cls.VALID_OVERRIDES,
):
return cls(**fields)
if mod.path.is_file():
raise NotAMatch(cls, "model path is a file, not a directory")
config_path = mod.path / "config.json"
_validate_class_names(
config_class=cls,
config_path=config_path,
valid_class_names=cls.VALID_CLASS_NAMES,
)
return cls(**fields)
class T2IAdapterConfig(DiffusersConfigBase, ControlAdapterConfigBase, LegacyProbeMixin, ModelConfigBase):
"""Model config for T2I."""