@@ -540,16 +540,12 @@ class LoRAConfigBase(ABC, BaseModel):
540
540
)
541
541
542
542
543
- def get_flux_lora_format (mod : ModelOnDisk ) -> FluxLoRAFormat | None :
544
- key = "FLUX_LORA_FORMAT"
545
- if key in mod .cache :
546
- return mod .cache [key ]
547
-
543
+ def _get_flux_lora_format (mod : ModelOnDisk ) -> FluxLoRAFormat | None :
544
+ # TODO(psyche): Moving this import to the function to avoid circular imports. Refactor later.
548
545
from invokeai .backend .patches .lora_conversions .formats import flux_format_from_state_dict
549
546
550
- sd = mod .load_state_dict (mod .path )
551
- value = flux_format_from_state_dict (sd , mod .metadata ())
552
- mod .cache [key ] = value
547
+ state_dict = mod .load_state_dict (mod .path )
548
+ value = flux_format_from_state_dict (state_dict , mod .metadata ())
553
549
return value
554
550
555
551
@@ -574,7 +570,7 @@ def from_model_on_disk(cls, mod: ModelOnDisk, fields: dict[str, Any]) -> Self:
574
570
@classmethod
575
571
def _validate_is_not_controllora_or_diffusers (cls , mod : ModelOnDisk ) -> None :
576
572
"""Raise `NotAMatch` if the model is a ControlLoRA or Diffusers LoRA."""
577
- flux_format = get_flux_lora_format (mod )
573
+ flux_format = _get_flux_lora_format (mod )
578
574
if flux_format in [FluxLoRAFormat .Control , FluxLoRAFormat .Diffusers ]:
579
575
raise NotAMatch (cls , "model looks like ControlLoRA or Diffusers LoRA" )
580
576
@@ -663,13 +659,13 @@ def _validate_looks_like_lora(cls, mod: ModelOnDisk) -> None:
663
659
@classmethod
664
660
def _validate_is_not_controllora_or_diffusers (cls , mod : ModelOnDisk ) -> None :
665
661
"""Raise `NotAMatch` if the model is a ControlLoRA or Diffusers LoRA."""
666
- flux_format = get_flux_lora_format (mod )
662
+ flux_format = _get_flux_lora_format (mod )
667
663
if flux_format in [FluxLoRAFormat .Control , FluxLoRAFormat .Diffusers ]:
668
664
raise NotAMatch (cls , "model looks like ControlLoRA or Diffusers LoRA" )
669
665
670
666
@classmethod
671
667
def _get_base_or_raise (cls , mod : ModelOnDisk ) -> LoRALyCORIS_SupportedBases :
672
- if get_flux_lora_format (mod ):
668
+ if _get_flux_lora_format (mod ):
673
669
return BaseModelType .Flux
674
670
675
671
state_dict = mod .load_state_dict ()
@@ -752,7 +748,7 @@ def from_model_on_disk(cls, mod: ModelOnDisk, fields: dict[str, Any]) -> Self:
752
748
753
749
@classmethod
754
750
def _validate_looks_like_diffusers_lora (cls , mod : ModelOnDisk ) -> None :
755
- flux_lora_format = get_flux_lora_format (mod )
751
+ flux_lora_format = _get_flux_lora_format (mod )
756
752
if flux_lora_format is not FluxLoRAFormat .Diffusers :
757
753
raise NotAMatch (cls , "model does not look like a FLUX Diffusers LoRA" )
758
754
0 commit comments