Skip to content
Open
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 7 additions & 10 deletions src/llmcompressor/modifiers/autoround/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,7 @@
QuantizationStrategy,
enable_quantization,
)
from compressed_tensors.utils import (
align_module_device,
delete_offload_parameter,
match_named_modules,
register_offload_parameter,
)
from compressed_tensors.utils import align_module_device, match_named_modules
Comment thread
kylesayrs marked this conversation as resolved.
from loguru import logger
from pydantic import PrivateAttr

Expand Down Expand Up @@ -408,10 +403,12 @@ def _preprocess_qparams(self, model):
if name not in llmc_registered_qparams:
llmc_registered_qparams[name] = {}
llmc_registered_qparams[name][key] = getattr(module, key).clone()
delete_offload_parameter(module, key)
delattr(module, key)
return llmc_registered_qparams

def _postprocess_qparams(self, model, llmc_registered_qparams):
def _postprocess_qparams(
self, model: torch.nn.Module, llmc_registered_qparams: dict[str, dict[str, torch.Tensor]]
):
Comment thread
HDCharles marked this conversation as resolved.
"""Mapping qparam name from AutoRound to LLMC and register qparams in model."""
qparams_mapping = {
# AutoRound parameter name: LLMCompressor parameter name
Expand Down Expand Up @@ -457,7 +454,7 @@ def _postprocess_qparams(self, model, llmc_registered_qparams):
# Register to LLMC
param_value = torch.nn.Parameter(ar_value, requires_grad=False)
delattr(module, ar_param_name)
register_offload_parameter(module, llmc_param_name, param_value)
module.register_parameter(llmc_param_name, param_value)
Comment thread
kylesayrs marked this conversation as resolved.

# Set place holder for other qparams.
if name in llmc_registered_qparams:
Expand All @@ -467,7 +464,7 @@ def _postprocess_qparams(self, model, llmc_registered_qparams):
llmc_registered_qparams[name][qparam_name],
requires_grad=False,
)
register_offload_parameter(module, qparam_name, param_value)
module.register_parameter(qparam_name, param_value)
Comment thread
kylesayrs marked this conversation as resolved.

def _mapping_config_to_autoround(self):
if isinstance(self.scheme, str):
Expand Down
Loading