Skip to content

[configuration] remove redundant classmethod #38812

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 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all 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
36 changes: 36 additions & 0 deletions src/transformers/configuration_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -1157,6 +1157,42 @@ def get_text_config(self, decoder=False) -> "PretrainedConfig":
config_to_return = self
return config_to_return

@classmethod
def from_text_vision_configs(cls, text_config, vision_config, **kwargs):
r"""
Instantiate a model config (or a derived class) from text model configuration and vision model
configuration.

Returns:
[`PreTrainedConfig`]: An instance of a configuration object
"""

warnings.warn(
"The `from_text_vision_configs` method is deprecated and will be removed in v4.60 of Transformers. Please instantiate "
"the config class directly with `MyConfig(text_config=text_config, vision_config=vision_config, **kwargs)` instead.",
FutureWarning,
)

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)

@classmethod
def from_text_audio_configs(cls, text_config, audio_config, **kwargs):
r"""
Instantiate a model config (or a derived class) from text model configuration and audio model
configuration.

Returns:
[`PreTrainedConfig`]: An instance of a configuration object
"""

warnings.warn(
"The `from_text_audio_configs` method is deprecated and will be removed in v4.60 of Transformers. Please instantiate "
"the config class directly with `MyConfig(text_config=text_config, audio_config=audio_config, **kwargs)` instead.",
FutureWarning,
)

return cls(text_config=text_config.to_dict(), audio_config=audio_config.to_dict(), **kwargs)


def get_configuration_file(configuration_files: list[str]) -> str:
"""
Expand Down
12 changes: 0 additions & 12 deletions src/transformers/models/align/configuration_align.py
Original file line number Diff line number Diff line change
Expand Up @@ -333,17 +333,5 @@ def __init__(
self.temperature_init_value = temperature_init_value
self.initializer_range = initializer_range

@classmethod
def from_text_vision_configs(cls, text_config: AlignTextConfig, vision_config: AlignVisionConfig, **kwargs):
r"""
Instantiate a [`AlignConfig`] (or a derived class) from align text model configuration and align vision model
configuration.

Returns:
[`AlignConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


__all__ = ["AlignTextConfig", "AlignVisionConfig", "AlignConfig"]
12 changes: 0 additions & 12 deletions src/transformers/models/altclip/configuration_altclip.py
Original file line number Diff line number Diff line change
Expand Up @@ -368,17 +368,5 @@ def __init__(
self.logit_scale_init_value = logit_scale_init_value
self.initializer_factor = 1.0

@classmethod
def from_text_vision_configs(cls, text_config: AltCLIPTextConfig, vision_config: AltCLIPVisionConfig, **kwargs):
r"""
Instantiate a [`AltCLIPConfig`] (or a derived class) from altclip text model configuration and altclip vision
model configuration.

Returns:
[`AltCLIPConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


__all__ = ["AltCLIPTextConfig", "AltCLIPVisionConfig", "AltCLIPConfig"]
12 changes: 0 additions & 12 deletions src/transformers/models/blip/configuration_blip.py
Original file line number Diff line number Diff line change
Expand Up @@ -313,17 +313,5 @@ def __init__(
self.image_text_hidden_size = image_text_hidden_size
self.label_smoothing = label_smoothing

@classmethod
def from_text_vision_configs(cls, text_config: BlipTextConfig, vision_config: BlipVisionConfig, **kwargs):
r"""
Instantiate a [`BlipConfig`] (or a derived class) from blip text model configuration and blip vision model
configuration.

Returns:
[`BlipConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


__all__ = ["BlipConfig", "BlipTextConfig", "BlipVisionConfig"]
11 changes: 0 additions & 11 deletions src/transformers/models/bridgetower/configuration_bridgetower.py
Original file line number Diff line number Diff line change
Expand Up @@ -304,16 +304,5 @@ def __init__(
self.text_config = BridgeTowerTextConfig(**text_config)
self.vision_config = BridgeTowerVisionConfig(**vision_config)

@classmethod
def from_text_vision_configs(
cls, text_config: BridgeTowerTextConfig, vision_config: BridgeTowerVisionConfig, **kwargs
):
r"""
Instantiate a [`BridgeTowerConfig`] (or a derived class) from BridgeTower text model configuration. Returns:
[`BridgeTowerConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


__all__ = ["BridgeTowerConfig", "BridgeTowerTextConfig", "BridgeTowerVisionConfig"]
12 changes: 0 additions & 12 deletions src/transformers/models/chinese_clip/configuration_chinese_clip.py
Original file line number Diff line number Diff line change
Expand Up @@ -373,18 +373,6 @@ def __init__(
self.initializer_factor = 1.0
self.initializer_range = 0.02

@classmethod
def from_text_vision_configs(
cls, text_config: ChineseCLIPTextConfig, vision_config: ChineseCLIPVisionConfig, **kwargs
):
r"""
Instantiate a [`ChineseCLIPConfig`] (or a derived class) from Chinese-CLIP text model configuration and
Chinese-CLIP vision model configuration. Returns:
[`ChineseCLIPConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


class ChineseCLIPOnnxConfig(OnnxConfig):
@property
Expand Down
12 changes: 0 additions & 12 deletions src/transformers/models/clap/configuration_clap.py
Original file line number Diff line number Diff line change
Expand Up @@ -378,17 +378,5 @@ def __init__(
self.initializer_factor = initializer_factor
self.num_hidden_layers = self.text_config.num_hidden_layers + len(self.audio_config.depths)

@classmethod
def from_text_audio_configs(cls, text_config: ClapTextConfig, audio_config: ClapAudioConfig, **kwargs):
r"""
Instantiate a [`ClapConfig`] (or a derived class) from clap text model configuration and clap audio model
configuration.

Returns:
[`ClapConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), audio_config=audio_config.to_dict(), **kwargs)


__all__ = ["ClapAudioConfig", "ClapConfig", "ClapTextConfig"]
12 changes: 0 additions & 12 deletions src/transformers/models/clip/configuration_clip.py
Original file line number Diff line number Diff line change
Expand Up @@ -361,18 +361,6 @@ def __init__(
self.logit_scale_init_value = logit_scale_init_value
self.initializer_factor = 1.0

@classmethod
def from_text_vision_configs(cls, text_config: CLIPTextConfig, vision_config: CLIPVisionConfig, **kwargs):
r"""
Instantiate a [`CLIPConfig`] (or a derived class) from clip text model configuration and clip vision model
configuration.

Returns:
[`CLIPConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


class CLIPOnnxConfig(OnnxConfig):
@property
Expand Down
12 changes: 0 additions & 12 deletions src/transformers/models/clipseg/configuration_clipseg.py
Original file line number Diff line number Diff line change
Expand Up @@ -380,17 +380,5 @@ def __init__(
self.initializer_factor = 1.0
self.use_complex_transposed_convolution = use_complex_transposed_convolution

@classmethod
def from_text_vision_configs(cls, text_config: CLIPSegTextConfig, vision_config: CLIPSegVisionConfig, **kwargs):
r"""
Instantiate a [`CLIPSegConfig`] (or a derived class) from clipseg text model configuration and clipseg vision
model configuration.

Returns:
[`CLIPSegConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


__all__ = ["CLIPSegConfig", "CLIPSegTextConfig", "CLIPSegVisionConfig"]
12 changes: 0 additions & 12 deletions src/transformers/models/groupvit/configuration_groupvit.py
Original file line number Diff line number Diff line change
Expand Up @@ -357,18 +357,6 @@ def __init__(
self.initializer_factor = 1.0
self.output_segmentation = False

@classmethod
def from_text_vision_configs(cls, text_config: GroupViTTextConfig, vision_config: GroupViTVisionConfig, **kwargs):
r"""
Instantiate a [`GroupViTConfig`] (or a derived class) from groupvit text model configuration and groupvit
vision model configuration.

Returns:
[`GroupViTConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


class GroupViTOnnxConfig(OnnxConfig):
@property
Expand Down
17 changes: 1 addition & 16 deletions src/transformers/models/owlv2/configuration_owlv2.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
# limitations under the License.
"""OWLv2 model configuration"""

from typing import TYPE_CHECKING, Dict
from typing import TYPE_CHECKING


if TYPE_CHECKING:
Expand Down Expand Up @@ -270,20 +270,5 @@ def __init__(
self.return_dict = return_dict
self.initializer_factor = 1.0

@classmethod
def from_text_vision_configs(cls, text_config: Dict, vision_config: Dict, **kwargs):
r"""
Instantiate a [`Owlv2Config`] (or a derived class) from owlv2 text model configuration and owlv2 vision
model configuration.

Returns:
[`Owlv2Config`]: An instance of a configuration object
"""
config_dict = {}
config_dict["text_config"] = text_config
config_dict["vision_config"] = vision_config

return cls.from_dict(config_dict, **kwargs)


__all__ = ["Owlv2Config", "Owlv2TextConfig", "Owlv2VisionConfig"]
17 changes: 1 addition & 16 deletions src/transformers/models/owlvit/configuration_owlvit.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

from collections import OrderedDict
from collections.abc import Mapping
from typing import TYPE_CHECKING, Any, Dict, Optional
from typing import TYPE_CHECKING, Any, Optional


if TYPE_CHECKING:
Expand Down Expand Up @@ -271,21 +271,6 @@ def __init__(
self.return_dict = return_dict
self.initializer_factor = 1.0

@classmethod
def from_text_vision_configs(cls, text_config: Dict, vision_config: Dict, **kwargs):
r"""
Instantiate a [`OwlViTConfig`] (or a derived class) from owlvit text model configuration and owlvit vision
model configuration.

Returns:
[`OwlViTConfig`]: An instance of a configuration object
"""
config_dict = {}
config_dict["text_config"] = text_config
config_dict["vision_config"] = vision_config

return cls.from_dict(config_dict, **kwargs)


class OwlViTOnnxConfig(OnnxConfig):
@property
Expand Down
14 changes: 0 additions & 14 deletions src/transformers/models/pix2struct/configuration_pix2struct.py
Original file line number Diff line number Diff line change
Expand Up @@ -332,19 +332,5 @@ def __init__(

self.is_vqa = is_vqa

@classmethod
def from_text_vision_configs(
cls, text_config: Pix2StructTextConfig, vision_config: Pix2StructVisionConfig, **kwargs
):
r"""
Instantiate a [`Pix2StructConfig`] (or a derived class) from pix2struct text model configuration and pix2struct
vision model configuration.

Returns:
[`Pix2StructConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


__all__ = ["Pix2StructConfig", "Pix2StructTextConfig", "Pix2StructVisionConfig"]
12 changes: 0 additions & 12 deletions src/transformers/models/siglip/configuration_siglip.py
Original file line number Diff line number Diff line change
Expand Up @@ -253,17 +253,5 @@ def __init__(self, text_config=None, vision_config=None, **kwargs):

self.initializer_factor = 1.0

@classmethod
def from_text_vision_configs(cls, text_config: SiglipTextConfig, vision_config: SiglipVisionConfig, **kwargs):
r"""
Instantiate a [`SiglipConfig`] (or a derived class) from siglip text model configuration and siglip vision
model configuration.

Returns:
[`SiglipConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


__all__ = ["SiglipConfig", "SiglipTextConfig", "SiglipVisionConfig"]
12 changes: 0 additions & 12 deletions src/transformers/models/siglip2/configuration_siglip2.py
Original file line number Diff line number Diff line change
Expand Up @@ -261,17 +261,5 @@ def __init__(self, text_config=None, vision_config=None, **kwargs):

self.initializer_factor = 1.0

@classmethod
def from_text_vision_configs(cls, text_config: Siglip2TextConfig, vision_config: Siglip2VisionConfig, **kwargs):
r"""
Instantiate a [`Siglip2Config`] (or a derived class) from siglip2 text model configuration and siglip2 vision
model configuration.

Returns:
[`Siglip2Config`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


__all__ = ["Siglip2Config", "Siglip2TextConfig", "Siglip2VisionConfig"]
12 changes: 0 additions & 12 deletions src/transformers/models/x_clip/configuration_x_clip.py
Original file line number Diff line number Diff line change
Expand Up @@ -365,17 +365,5 @@ def __init__(
self.logit_scale_init_value = logit_scale_init_value
self.initializer_factor = 1.0

@classmethod
def from_text_vision_configs(cls, text_config: XCLIPTextConfig, vision_config: XCLIPVisionConfig, **kwargs):
r"""
Instantiate a [`XCLIPConfig`] (or a derived class) from xclip text model configuration and xclip vision model
configuration.

Returns:
[`XCLIPConfig`]: An instance of a configuration object
"""

return cls(text_config=text_config.to_dict(), vision_config=vision_config.to_dict(), **kwargs)


__all__ = ["XCLIPConfig", "XCLIPTextConfig", "XCLIPVisionConfig"]
6 changes: 4 additions & 2 deletions tests/models/align/test_modeling_align.py
Original file line number Diff line number Diff line change
Expand Up @@ -408,8 +408,10 @@ def prepare_config_and_inputs(self):
return config, input_ids, token_type_ids, input_mask, pixel_values

def get_config(self):
return AlignConfig.from_text_vision_configs(
self.text_model_tester.get_config(), self.vision_model_tester.get_config(), projection_dim=64
return AlignConfig(
text_config=self.text_model_tester.get_config().to_dict(),
vision_config=self.vision_model_tester.get_config().to_dict(),
projection_dim=64,
)

def create_and_check_model(self, config, input_ids, token_type_ids, attention_mask, pixel_values):
Expand Down
6 changes: 4 additions & 2 deletions tests/models/altclip/test_modeling_altclip.py
Original file line number Diff line number Diff line change
Expand Up @@ -376,8 +376,10 @@ def prepare_config_and_inputs(self):
return config, input_ids, attention_mask, pixel_values

def get_config(self):
return AltCLIPConfig.from_text_vision_configs(
self.text_model_tester.get_config(), self.vision_model_tester.get_config(), projection_dim=64
return AltCLIPConfig(
text_config=self.text_model_tester.get_config().to_dict(),
vision_config=self.vision_model_tester.get_config().to_dict(),
projection_dim=64,
)

def create_and_check_model(self, config, input_ids, attention_mask, pixel_values):
Expand Down
Loading