From c28f56daec5b2f8b48756b7be58ab4e658cfae5d Mon Sep 17 00:00:00 2001 From: Kevin Turner <83819+keturn@users.noreply.github.com> Date: Fri, 9 Dec 2022 10:23:39 -0800 Subject: [PATCH] diffusers(ModelCache): stopgap to make from_cpu compatible with diffusers --- ldm/invoke/model_cache.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ldm/invoke/model_cache.py b/ldm/invoke/model_cache.py index 7b7b840b02..ee32ba12e5 100644 --- a/ldm/invoke/model_cache.py +++ b/ldm/invoke/model_cache.py @@ -464,9 +464,12 @@ class ModelCache(object): def _model_from_cpu(self,model): if self.device != 'cpu': model.to(self.device) - model.first_stage_model.to(self.device) - model.cond_stage_model.to(self.device) - model.cond_stage_model.device = self.device + try: + model.first_stage_model.to(self.device) + model.cond_stage_model.to(self.device) + model.cond_stage_model.device = self.device + except AttributeError as e: + warnings.warn(f"TODO: clean up legacy model-management: {e}") return model def _pop_oldest_model(self):