From 0a92bade53e5c9e7748d2eb4a48ca8bc1e577a55 Mon Sep 17 00:00:00 2001 From: Adithyan Madhu Date: Thu, 15 Jan 2026 17:03:02 +0530 Subject: [PATCH 1/2] Robust FP8 layer detection for ignore_layers (#1283) Signed-off-by: Adithyan Madhu --- auto_round/compressors/utils.py | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/auto_round/compressors/utils.py b/auto_round/compressors/utils.py index db95d9547..0c0eaf363 100644 --- a/auto_round/compressors/utils.py +++ b/auto_round/compressors/utils.py @@ -865,9 +865,33 @@ def get_fp_layer_names(model: torch.nn.Module, ignore_layers: str): subcomponents of those layers. """ from auto_round.utils import SUPPORTED_LAYER_TYPES + + not_to_quantized_layers = [] + + for n,m in model.name_modules(): + if is_fp8_linear(m): + not_to_quantized_layers.append(n) + logger.trace(f"Auto-detected FP8 layer to ignore : {n}") + + + if ignore_layers: + ignore_list = ignore_layers.replace(" ","").split(",") + for fp_layer in ignore_list: + if not fp_layer: + continue + for n, _ in model.named_modules(): + match_name = fp_layer + if fp_layer[-1].isdigit(): + match_name += "." + if match_name in n: + if n not in not_to_quantized_layers: + not_to_quantized_layers.append(n) + logger.trace(f"User-specified ignore layer matched {n}:") + + logger.trace(f"not_to_quantized_layers: {not_to_quantized_layers}") + return not_to_quantized_layers + - if not ignore_layers: - return [] ignore_layers = ignore_layers.replace(" ", "").split(",") all_layer_names = [] for n, m in model.named_modules(): From f4837bfb2a0cba5c41f9596fcce523cc7fb087c7 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu, 15 Jan 2026 14:22:56 +0000 Subject: [PATCH 2/2] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- auto_round/compressors/utils.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/auto_round/compressors/utils.py b/auto_round/compressors/utils.py index 0c0eaf363..bb1bb9cf1 100644 --- a/auto_round/compressors/utils.py +++ b/auto_round/compressors/utils.py @@ -865,17 +865,16 @@ def get_fp_layer_names(model: torch.nn.Module, ignore_layers: str): subcomponents of those layers. """ from auto_round.utils import SUPPORTED_LAYER_TYPES - + not_to_quantized_layers = [] - for n,m in model.name_modules(): + for n, m in model.name_modules(): if is_fp8_linear(m): not_to_quantized_layers.append(n) logger.trace(f"Auto-detected FP8 layer to ignore : {n}") - if ignore_layers: - ignore_list = ignore_layers.replace(" ","").split(",") + ignore_list = ignore_layers.replace(" ", "").split(",") for fp_layer in ignore_list: if not fp_layer: continue @@ -891,7 +890,6 @@ def get_fp_layer_names(model: torch.nn.Module, ignore_layers: str): logger.trace(f"not_to_quantized_layers: {not_to_quantized_layers}") return not_to_quantized_layers - ignore_layers = ignore_layers.replace(" ", "").split(",") all_layer_names = [] for n, m in model.named_modules():