Merge pull request #4115 from CalamitousFelicitousness/patch-1

LoRA load Torch tuple and string version checking
This commit is contained in:
Vladimir Mandic
2025-08-13 20:25:43 -04:00
committed by GitHub
+18
View File
@@ -199,6 +199,24 @@ def deprecate_warn(*args, **kwargs):
diffusers.utils.deprecation_utils.deprecate = deprecate_warn
diffusers.utils.deprecate = deprecate_warn
def patch_torch_version():
import torch
if not hasattr(torch, '__version_backup__'):
torch.__version_backup__ = torch.__version__
# Convert string version to tuple format to solve TypeError caused by BnB
version_parts = torch.__version__.split('+')[0].split('.')
torch.__version_tuple__ = tuple(int(x) for x in version_parts[:3])
# Support both string and tuple for version check
class VersionString(str):
def __ge__(self, other):
if isinstance(other, tuple):
self_tuple = tuple(int(x) for x in self.split('+')[0].split('.')[:len(other)])
return self_tuple >= other
return super().__ge__(other)
torch.__version__ = VersionString(torch.__version__)
patch_torch_version()
errors.log.info(f'Torch: torch=={torch.__version__} torchvision=={torchvision.__version__}')
errors.log.info(f'Packages: diffusers=={diffusers.__version__} transformers=={transformers.__version__} accelerate=={accelerate.__version__} gradio=={gradio.__version__} pydantic=={pydantic.__version__} numpy=={np.__version__}')