From 98308fa187c2a9b900ebb15bcbf350a42bd343c2 Mon Sep 17 00:00:00 2001 From: Disty0 Date: Sun, 11 May 2025 07:08:21 +0300 Subject: [PATCH] NNCF fix group size calculation --- modules/model_quant_nncf.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/model_quant_nncf.py b/modules/model_quant_nncf.py index ec0db41d4..66ae75a85 100644 --- a/modules/model_quant_nncf.py +++ b/modules/model_quant_nncf.py @@ -66,16 +66,16 @@ def nncf_compress_layer(layer, num_bits, is_asym_mode, torch_dtype=None, quant_c num_of_groups = shared.opts.nncf_compress_weights_num_of_groups channel_size = layer.weight.shape[-1] - group_size = channel_size // num_of_groups + group_size = channel_size / num_of_groups while channel_size % group_size != 0: # find something divisible num_of_groups -= 1 - group_size = channel_size // num_of_groups + group_size = channel_size / num_of_groups if num_of_groups > 1: result_shape = layer.weight.shape new_shape = list(result_shape) last_dim_index = layer.weight.ndim - new_shape[last_dim_index - 1 : last_dim_index] = (num_of_groups, group_size) + new_shape[last_dim_index - 1 : last_dim_index] = (int(num_of_groups), int(group_size)) layer.weight.data = layer.weight.reshape(new_shape) if shared.opts.diffusers_offload_mode != "none":