mirror of
https://github.com/invoke-ai/InvokeAI.git
synced 2026-04-23 03:00:31 -04:00
feat(mm): port CLIPVisionDiffusersConfig to new api
This commit is contained in:
@@ -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."""
|
||||
|
||||
Reference in New Issue
Block a user