From d10d2582131493d736ae67d3cafb7c632147e7ec Mon Sep 17 00:00:00 2001 From: Brandon Rising Date: Tue, 3 Sep 2024 16:55:53 -0400 Subject: [PATCH] Add a comment for why we're converting scale tensors in flux models to bfloat16 --- invokeai/backend/model_manager/util/model_util.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/invokeai/backend/model_manager/util/model_util.py b/invokeai/backend/model_manager/util/model_util.py index bfcf31d965..7d3f032f5f 100644 --- a/invokeai/backend/model_manager/util/model_util.py +++ b/invokeai/backend/model_manager/util/model_util.py @@ -143,6 +143,8 @@ def convert_bundle_to_flux_transformer_checkpoint( if not k.startswith("model.diffusion_model"): continue if k.endswith("scale"): + # Scale math must be done at bfloat16 due to our current flux model + # support limitations at inference time v = v.to(dtype=torch.bfloat16) original_state_dict[k.replace("model.diffusion_model.", "")] = v return original_state_dict