diff --git a/gptqmodel/looper/module_looper.py b/gptqmodel/looper/module_looper.py index 517d065fb..618b02bd1 100644 --- a/gptqmodel/looper/module_looper.py +++ b/gptqmodel/looper/module_looper.py @@ -349,7 +349,7 @@ def loop(self, fail_safe: bool = False, **kwargs): if hasattr(subset[name], 'forward_hook'): original_hook = processor.pre_process_fwd_hook(name) subset[name].forward_hook = self._masked_hook_wrapper(processor, original_hook) - if is_last: + if is_last and processor.fwd_after_process: subset[name].forward_hook_last = True else: # Older registration path diff --git a/gptqmodel/quantization/gptqv2.py b/gptqmodel/quantization/gptqv2.py index e1b180d11..64d305765 100644 --- a/gptqmodel/quantization/gptqv2.py +++ b/gptqmodel/quantization/gptqv2.py @@ -28,6 +28,7 @@ def __init__(self, module: NamedModule, qcfg: Optional[QuantizeConfig] = None): super().__init__(module, qcfg) + self.H = None self.dXXT = None self.native_inps = module.state.pop(NATIVE_INPUTS_STATE_KEY)