Skip to content

[Bugfix] Fix AutoModel.from_pretrained(..., quantization_config=None) regression #39770

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

kylesayrs
Copy link
Contributor

@kylesayrs kylesayrs commented Jul 29, 2025

Purpose

  • Fix bug where passing quantization_config=None to AutoModelForCausalLM will lead to an error
Traceback (most recent call last):
  File "/home/kyle/llm-compressor/asdf.py", line 2, in <module>
    model = AutoModelForCausalLM.from_pretrained("RedHatAI/Meta-Llama-3.1-8B-Instruct-quantized.w4a16", quantization_config=None)
  File "/home/kyle/transformers/src/transformers/models/auto/auto_factory.py", line 547, in from_pretrained
    config, kwargs = AutoConfig.from_pretrained(
  File "/home/kyle/transformers/src/transformers/models/auto/configuration_auto.py", line 1277, in from_pretrained
    return config_class.from_dict(config_dict, **unused_kwargs)
  File "/home/kyle/transformers/src/transformers/configuration_utils.py", line 817, in from_dict
    logger.info(f"Model config {config}")
  File "/home/kyle/transformers/src/transformers/configuration_utils.py", line 851, in __repr__
    return f"{self.__class__.__name__} {self.to_json_string()}"
  File "/home/kyle/transformers/src/transformers/configuration_utils.py", line 963, in to_json_string
    config_dict = self.to_diff_dict()
  File "/home/kyle/transformers/src/transformers/configuration_utils.py", line 865, in to_diff_dict
    config_dict = self.to_dict()
  File "/home/kyle/transformers/src/transformers/configuration_utils.py", line 942, in to_dict
    self.quantization_config.to_dict()
AttributeError: 'NoneType' object has no attribute 'to_dict'
  • This option was supported in previous releases, and is documented in docstring
quantization_config (`Union[QuantizationConfigMixin,Dict]`, *optional*):
  • I'm not exactly sure what change caused the regression, still trying to track that down

Changes

  • Ensuring that the quantization config is never overwritten when instantiating from _BaseAutoModelClass

Testing

from transformers import AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained("RedHatAI/Meta-Llama-3.1-8B-Instruct-quantized.w4a16", quantization_config=None)

Signed-off-by: Kyle Sayers <[email protected]>
Copy link
Contributor

[For maintainers] Suggested jobs to run (before merge)

run-slow: auto

@Rocketknight1
Copy link
Member

cc @MekkCyber for quantization maybe? Feel free to ping me if you think it should go to someone else

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants