From fccb6932fa2c1b0ae0ca5c27df09519751ff129e Mon Sep 17 00:00:00 2001 From: shhKnight30 Date: Sat, 4 Apr 2026 12:11:04 +0530 Subject: [PATCH 1/2] fix: restore mypy type checking for PreTrainedConfig subclasses (#45071) Add @dataclass_transform (PEP 681) so type checkers can synthesize __init__ signatures from dataclass fields. No runtime behavior change. Same pattern used by pydantic and attrs. --- src/transformers/configuration_utils.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/transformers/configuration_utils.py b/src/transformers/configuration_utils.py index 97d6b94b57aa..8388a373a3e5 100755 --- a/src/transformers/configuration_utils.py +++ b/src/transformers/configuration_utils.py @@ -26,6 +26,7 @@ from huggingface_hub import create_repo from huggingface_hub.dataclasses import strict from packaging import version +from typing_extensions import dataclass_transform from . import __version__ from .dynamic_module_utils import custom_object_save @@ -75,6 +76,8 @@ # copied from huggingface_hub.dataclasses.strict when `accept_kwargs=True` def wrap_init_to_accept_kwargs(cls: dataclass): + + # Get the original dataclass-generated __init__ original_init = cls.__init__ @wraps(original_init) @@ -113,6 +116,7 @@ def __init__(self, *args, **kwargs: Any) -> None: return cls +@dataclass_transform(kw_only_default=True) @strict(accept_kwargs=True) @dataclass(repr=False) class PreTrainedConfig(PushToHubMixin, RotaryEmbeddingConfigMixin): From 56e885a87f8bdb281a4796b8f405f710ffe71367 Mon Sep 17 00:00:00 2001 From: raushan Date: Fri, 10 Apr 2026 12:18:22 +0200 Subject: [PATCH 2/2] style --- src/transformers/configuration_utils.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/transformers/configuration_utils.py b/src/transformers/configuration_utils.py index 8388a373a3e5..86a4d85a2617 100755 --- a/src/transformers/configuration_utils.py +++ b/src/transformers/configuration_utils.py @@ -76,7 +76,6 @@ # copied from huggingface_hub.dataclasses.strict when `accept_kwargs=True` def wrap_init_to_accept_kwargs(cls: dataclass): - # Get the original dataclass-generated __init__ original_init = cls.__init__