From 558ee0076bb640826fa43957d667a47a72685fa3 Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Wed, 30 Mar 2022 14:26:21 +0000 Subject: [PATCH 01/13] Add unpack_inputs to remaining models --- src/transformers/models/mbart/modeling_tf_mbart.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/transformers/models/mbart/modeling_tf_mbart.py b/src/transformers/models/mbart/modeling_tf_mbart.py index 3f2ea655f455..11e9a2a7d4fc 100644 --- a/src/transformers/models/mbart/modeling_tf_mbart.py +++ b/src/transformers/models/mbart/modeling_tf_mbart.py @@ -1278,7 +1278,7 @@ def call( decoder_head_mask: Optional[tf.Tensor] = None, cross_attn_head_mask: Optional[tf.Tensor] = None, encoder_outputs: Optional[TFBaseModelOutput] = None, - past_key_values: [Tuple[Tuple[tf.Tensor]]] = None, + past_key_values: Tuple[Tuple[tf.Tensor]] = None, inputs_embeds: Optional[tf.Tensor] = None, decoder_inputs_embeds: Optional[tf.Tensor] = None, use_cache: Optional[bool] = None, From 01c45393bed2ed8f4764f80c72a11e0cffb39048 Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Wed, 30 Mar 2022 11:33:56 +0000 Subject: [PATCH 02/13] tmp commit --- .../modeling_tf_encoder_decoder.py | 22 +++++-------------- .../modeling_tf_vision_encoder_decoder.py | 19 +++++----------- 2 files changed, 11 insertions(+), 30 deletions(-) diff --git a/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py b/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py index 1c59493e1bf7..b97c99d06f7d 100644 --- a/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py +++ b/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py @@ -23,7 +23,7 @@ from ...configuration_utils import PretrainedConfig from ...modeling_tf_outputs import TFBaseModelOutput, TFSeq2SeqLMOutput -from ...modeling_tf_utils import TFCausalLanguageModelingLoss, TFPreTrainedModel, get_initializer, input_processing +from ...modeling_tf_utils import TFCausalLanguageModelingLoss, TFPreTrainedModel, get_initializer from ...tf_utils import shape_list from ...utils import ( DUMMY_INPUTS, @@ -559,9 +559,7 @@ def call( if encoder_outputs is None: - encoder_processing_inputs = { - "func": self.encoder.call, - "config": self.encoder.config, + encoder_inputs = { "input_ids": input_ids, "attention_mask": attention_mask, "inputs_embeds": inputs_embeds, @@ -569,14 +567,10 @@ def call( "output_hidden_states": output_hidden_states, "return_dict": return_dict, "training": training, - "kwargs_call": {}, } # Add arguments to encoder from `kwargs_encoder` - for k, v in kwargs_encoder.items(): - encoder_processing_inputs[k] = v - - encoder_inputs = input_processing(**encoder_processing_inputs) + encoder_inputs.update(kwargs_encoder) # Handle the case where the inputs are passed as a single dict which contains `labels`. # The `labels` shouldn't be passed to `self.encoder` below, because it is a based model without this @@ -607,9 +601,7 @@ def call( labels, self.config.pad_token_id, self.config.decoder_start_token_id ) - decoder_processing_inputs = { - "func": self.decoder.call, - "config": self.decoder.config, + decoder_inputs = { "input_ids": decoder_input_ids, "attention_mask": decoder_attention_mask, "encoder_hidden_states": encoder_hidden_states, @@ -621,14 +613,12 @@ def call( "past_key_values": past_key_values, "return_dict": return_dict, "training": training, - "kwargs_call": {}, } # Add arguments to decoder from `kwargs_decoder` - for k, v in kwargs_decoder.items(): - decoder_processing_inputs[k] = v + decoder_inputs.update(kwargs_decoder) - decoder_inputs = input_processing(**decoder_processing_inputs) + breakpoint() decoder_outputs = self.decoder(**decoder_inputs) logits = decoder_outputs[0] diff --git a/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py b/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py index eeaca58c5a01..c28ddd1cbfde 100644 --- a/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py +++ b/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py @@ -23,7 +23,7 @@ from ...configuration_utils import PretrainedConfig from ...modeling_tf_outputs import TFBaseModelOutput, TFSeq2SeqLMOutput -from ...modeling_tf_utils import TFCausalLanguageModelingLoss, TFPreTrainedModel, get_initializer, input_processing +from ...modeling_tf_utils import TFCausalLanguageModelingLoss, TFPreTrainedModel, get_initializer from ...tf_utils import shape_list from ...utils import ( DUMMY_INPUTS, @@ -585,21 +585,16 @@ def call( if encoder_outputs is None: - encoder_processing_inputs = { - "func": self.encoder.call, - "config": self.encoder.config, + encoder_inputs = { "input_ids": pixel_values, "output_attentions": output_attentions, "output_hidden_states": output_hidden_states, "return_dict": return_dict, "training": training, - "kwargs_call": {}, } # Add arguments to encoder from `kwargs_encoder` - encoder_processing_inputs.update(kwargs_encoder) - - encoder_inputs = input_processing(**encoder_processing_inputs) + encoder_inputs.update(kwargs_encoder) if "input_ids" in encoder_inputs: encoder_inputs["pixel_values"] = encoder_inputs.pop("input_ids") @@ -639,9 +634,7 @@ def call( batch_size, sequence_length = shape_list(encoder_hidden_states)[:2] encoder_attention_mask = tf.ones(shape=(batch_size, sequence_length), dtype=tf.int32) - decoder_processing_inputs = { - "func": self.decoder.call, - "config": self.decoder.config, + decoder_inputs = { "input_ids": decoder_input_ids, "attention_mask": decoder_attention_mask, "encoder_hidden_states": encoder_hidden_states, @@ -653,13 +646,11 @@ def call( "past_key_values": past_key_values, "return_dict": return_dict, "training": training, - "kwargs_call": {}, } # Add arguments to decoder from `kwargs_decoder` - decoder_processing_inputs.update(kwargs_decoder) + decoder_inputs.update(kwargs_decoder) - decoder_inputs = input_processing(**decoder_processing_inputs) decoder_outputs = self.decoder(**decoder_inputs) logits = decoder_outputs[0] From 801fd1d227746e1e7f9f6e8ba5814393c03155d4 Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Wed, 30 Mar 2022 12:17:18 +0000 Subject: [PATCH 03/13] remove breakpoint --- .../models/encoder_decoder/modeling_tf_encoder_decoder.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py b/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py index b97c99d06f7d..836e46f6d5fc 100644 --- a/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py +++ b/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py @@ -618,7 +618,6 @@ def call( # Add arguments to decoder from `kwargs_decoder` decoder_inputs.update(kwargs_decoder) - breakpoint() decoder_outputs = self.decoder(**decoder_inputs) logits = decoder_outputs[0] From 821baa7ee1023471b9f9ed352f336f59da100b94 Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Wed, 30 Mar 2022 12:54:36 +0000 Subject: [PATCH 04/13] add unpack_inputs --- .../models/encoder_decoder/modeling_tf_encoder_decoder.py | 3 ++- .../modeling_tf_vision_encoder_decoder.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py b/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py index 836e46f6d5fc..9e92e767b1b8 100644 --- a/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py +++ b/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py @@ -23,7 +23,7 @@ from ...configuration_utils import PretrainedConfig from ...modeling_tf_outputs import TFBaseModelOutput, TFSeq2SeqLMOutput -from ...modeling_tf_utils import TFCausalLanguageModelingLoss, TFPreTrainedModel, get_initializer +from ...modeling_tf_utils import TFCausalLanguageModelingLoss, TFPreTrainedModel, get_initializer, unpack_inputs from ...tf_utils import shape_list from ...utils import ( DUMMY_INPUTS, @@ -491,6 +491,7 @@ def from_encoder_decoder_pretrained( config = EncoderDecoderConfig.from_encoder_decoder_configs(encoder.config, decoder.config, **kwargs) return cls(encoder=encoder, decoder=decoder, config=config) + @unpack_inputs @add_start_docstrings_to_model_forward(ENCODER_DECODER_INPUTS_DOCSTRING.format("batch_size, sequence_length")) @replace_return_docstrings(output_type=TFSeq2SeqLMOutput, config_class=_CONFIG_FOR_DOC) def call( diff --git a/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py b/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py index c28ddd1cbfde..edc2973a0734 100644 --- a/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py +++ b/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py @@ -23,7 +23,7 @@ from ...configuration_utils import PretrainedConfig from ...modeling_tf_outputs import TFBaseModelOutput, TFSeq2SeqLMOutput -from ...modeling_tf_utils import TFCausalLanguageModelingLoss, TFPreTrainedModel, get_initializer +from ...modeling_tf_utils import TFCausalLanguageModelingLoss, TFPreTrainedModel, get_initializer, unpack_inputs from ...tf_utils import shape_list from ...utils import ( DUMMY_INPUTS, @@ -510,6 +510,7 @@ def from_encoder_decoder_pretrained( config = VisionEncoderDecoderConfig.from_encoder_decoder_configs(encoder.config, decoder.config, **kwargs) return cls(encoder=encoder, decoder=decoder, config=config) + @unpack_inputs @add_start_docstrings_to_model_forward( VISION_ENCODER_DECODER_INPUTS_DOCSTRING.format("batch_size, sequence_length") ) From 3e912f7ff3bc68546de7dee4449234382b9c9518 Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Wed, 30 Mar 2022 14:20:38 +0000 Subject: [PATCH 05/13] removed kwargs up to clip --- src/transformers/modeling_tf_utils.py | 8 ++++---- src/transformers/models/albert/modeling_tf_albert.py | 8 -------- src/transformers/models/bart/modeling_tf_bart.py | 3 --- src/transformers/models/bert/modeling_tf_bert.py | 9 --------- .../models/blenderbot/modeling_tf_blenderbot.py | 3 --- .../blenderbot_small/modeling_tf_blenderbot_small.py | 3 --- src/transformers/models/clip/modeling_tf_clip.py | 12 ------------ 7 files changed, 4 insertions(+), 42 deletions(-) diff --git a/src/transformers/modeling_tf_utils.py b/src/transformers/modeling_tf_utils.py index d46226a5a1d1..9bc84c955aaa 100644 --- a/src/transformers/modeling_tf_utils.py +++ b/src/transformers/modeling_tf_utils.py @@ -402,7 +402,7 @@ def input_processing(func, config, input_ids, **kwargs): Two lists, one for the missing layers, and another one for the unexpected layers. """ signature = dict(inspect.signature(func).parameters) - signature.pop("kwargs", None) + has_kwargs = bool(signature.pop("kwargs", None)) signature.pop("self", None) parameter_names = list(signature.keys()) output = {} @@ -432,13 +432,13 @@ def input_processing(func, config, input_ids, **kwargs): elif "past_key_values" in kwargs["kwargs_call"] and "past" in parameter_names: kwargs["past"] = kwargs["kwargs_call"].pop("past_key_values") - if len(kwargs["kwargs_call"]) > 0: + if has_kwargs: + output["kwargs"] = kwargs.pop("kwargs_call", {}) + elif len(kwargs["kwargs_call"]) > 0: raise ValueError( f"The following keyword arguments are not supported by this model: {list(kwargs['kwargs_call'].keys())}." ) - kwargs.pop("kwargs_call") - for k, v in kwargs.items(): if isinstance(v, allowed_types) or v is None: output[k] = v diff --git a/src/transformers/models/albert/modeling_tf_albert.py b/src/transformers/models/albert/modeling_tf_albert.py index 51bc5c0ae77b..ae325558cd73 100644 --- a/src/transformers/models/albert/modeling_tf_albert.py +++ b/src/transformers/models/albert/modeling_tf_albert.py @@ -551,7 +551,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: if input_ids is not None and inputs_embeds is not None: @@ -785,7 +784,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: outputs = self.albert( input_ids=input_ids, @@ -854,7 +852,6 @@ def call( labels: Optional[Union[np.ndarray, tf.Tensor]] = None, sentence_order_label: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFAlbertForPreTrainingOutput, Tuple[tf.Tensor]]: r""" Return: @@ -976,7 +973,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1064,7 +1060,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1158,7 +1153,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1244,7 +1238,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1355,7 +1348,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMultipleChoiceModelOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/bart/modeling_tf_bart.py b/src/transformers/models/bart/modeling_tf_bart.py index 106a87c043c9..9cf3e04054ec 100644 --- a/src/transformers/models/bart/modeling_tf_bart.py +++ b/src/transformers/models/bart/modeling_tf_bart.py @@ -679,7 +679,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutput, Tuple[tf.Tensor]]: """ Args: @@ -834,7 +833,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPastAndCrossAttentions, Tuple[tf.Tensor]]: r""" Args: @@ -1273,7 +1271,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[tf.Tensor] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSeq2SeqLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/bert/modeling_tf_bert.py b/src/transformers/models/bert/modeling_tf_bert.py index 6dfae3d5fb60..5e8775ab0deb 100644 --- a/src/transformers/models/bert/modeling_tf_bert.py +++ b/src/transformers/models/bert/modeling_tf_bert.py @@ -737,7 +737,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPoolingAndCrossAttentions, Tuple[tf.Tensor]]: if not self.config.is_decoder: @@ -1067,7 +1066,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPoolingAndCrossAttentions, Tuple[tf.Tensor]]: r""" encoder_hidden_states (`tf.Tensor` of shape `(batch_size, sequence_length, hidden_size)`, *optional*): @@ -1174,7 +1172,6 @@ def call( labels: Optional[Union[np.ndarray, tf.Tensor]] = None, next_sentence_label: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBertForPreTrainingOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1302,7 +1299,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1520,7 +1516,6 @@ def call( return_dict: Optional[bool] = None, next_sentence_label: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFNextSentencePredictorOutput, Tuple[tf.Tensor]]: r""" Return: @@ -1628,7 +1623,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1723,7 +1717,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMultipleChoiceModelOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1857,7 +1850,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1949,7 +1941,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/blenderbot/modeling_tf_blenderbot.py b/src/transformers/models/blenderbot/modeling_tf_blenderbot.py index 80236fab0211..4225f8e14e58 100644 --- a/src/transformers/models/blenderbot/modeling_tf_blenderbot.py +++ b/src/transformers/models/blenderbot/modeling_tf_blenderbot.py @@ -662,7 +662,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): """ Args: @@ -823,7 +822,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): r""" Args: @@ -1276,7 +1274,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[tf.Tensor] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple[tf.Tensor], TFSeq2SeqLMOutput]: r""" labels (`tf.tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/blenderbot_small/modeling_tf_blenderbot_small.py b/src/transformers/models/blenderbot_small/modeling_tf_blenderbot_small.py index af575e6418b7..2d7fe2af6137 100644 --- a/src/transformers/models/blenderbot_small/modeling_tf_blenderbot_small.py +++ b/src/transformers/models/blenderbot_small/modeling_tf_blenderbot_small.py @@ -667,7 +667,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): """ Args: @@ -827,7 +826,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): r""" Args: @@ -1253,7 +1251,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[tf.Tensor] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple[tf.Tensor], TFSeq2SeqLMOutput]: r""" labels (`tf.tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/clip/modeling_tf_clip.py b/src/transformers/models/clip/modeling_tf_clip.py index f8192ac7aa05..366d0a9eb1dd 100644 --- a/src/transformers/models/clip/modeling_tf_clip.py +++ b/src/transformers/models/clip/modeling_tf_clip.py @@ -504,7 +504,6 @@ def call( output_hidden_states: bool, return_dict: bool, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: input_shape = shape_list(input_ids) @@ -593,7 +592,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: if input_ids is None: raise ValueError("You have to specify input_ids") @@ -632,7 +630,6 @@ def call( output_hidden_states: bool, return_dict: bool, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: embedding_output = self.embeddings(pixel_values=pixel_values) @@ -683,7 +680,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: if pixel_values is None: @@ -762,7 +758,6 @@ def get_text_features( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> tf.Tensor: if input_ids is None: @@ -796,7 +791,6 @@ def get_image_features( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> tf.Tensor: if pixel_values is None: raise ValueError("You have to specify pixel_values") @@ -826,7 +820,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFCLIPOutput, Tuple[tf.Tensor]]: if input_ids is None: @@ -1058,7 +1051,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: r""" Returns: @@ -1153,7 +1145,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: r""" Returns: @@ -1258,7 +1249,6 @@ def get_text_features( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> tf.Tensor: r""" Returns: @@ -1297,7 +1287,6 @@ def get_image_features( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> tf.Tensor: r""" Returns: @@ -1345,7 +1334,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFCLIPOutput, Tuple[tf.Tensor]]: r""" Returns: From a68901b7368b56da88c8b0481b2c0ed9ba30dea7 Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Wed, 30 Mar 2022 14:56:29 +0000 Subject: [PATCH 06/13] removed kwags up to longformer --- src/transformers/models/convbert/modeling_tf_convbert.py | 7 ------- src/transformers/models/convnext/modeling_tf_convnext.py | 3 --- src/transformers/models/ctrl/modeling_tf_ctrl.py | 4 ---- src/transformers/models/deberta/modeling_tf_deberta.py | 6 ------ .../models/deberta_v2/modeling_tf_deberta_v2.py | 6 ------ .../models/distilbert/modeling_tf_distilbert.py | 7 ------- src/transformers/models/dpr/modeling_tf_dpr.py | 7 ------- src/transformers/models/electra/modeling_tf_electra.py | 8 -------- src/transformers/models/flaubert/modeling_tf_flaubert.py | 3 --- src/transformers/models/funnel/modeling_tf_funnel.py | 9 --------- src/transformers/models/gpt2/modeling_tf_gpt2.py | 5 ----- src/transformers/models/gptj/modeling_tf_gptj.py | 5 ----- src/transformers/models/layoutlm/modeling_tf_layoutlm.py | 5 ----- src/transformers/models/led/modeling_tf_led.py | 5 +---- .../models/longformer/modeling_tf_longformer.py | 7 ------- 15 files changed, 1 insertion(+), 86 deletions(-) diff --git a/src/transformers/models/convbert/modeling_tf_convbert.py b/src/transformers/models/convbert/modeling_tf_convbert.py index f167325527b6..8ec1b18ae748 100644 --- a/src/transformers/models/convbert/modeling_tf_convbert.py +++ b/src/transformers/models/convbert/modeling_tf_convbert.py @@ -581,7 +581,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if input_ids is not None and inputs_embeds is not None: raise ValueError("You cannot specify both input_ids and inputs_embeds at the same time") @@ -751,7 +750,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): outputs = self.convbert( input_ids=input_ids, @@ -870,7 +868,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[tf.Tensor] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFMaskedLMOutput]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -979,7 +976,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[tf.Tensor] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFSequenceClassifierOutput]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1073,7 +1069,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[tf.Tensor] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFMultipleChoiceModelOutput]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1188,7 +1183,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[tf.Tensor] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFTokenClassifierOutput]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1268,7 +1262,6 @@ def call( start_positions: Optional[tf.Tensor] = None, end_positions: Optional[tf.Tensor] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFQuestionAnsweringModelOutput]: r""" start_positions (`tf.Tensor` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/convnext/modeling_tf_convnext.py b/src/transformers/models/convnext/modeling_tf_convnext.py index b952b6775248..1cb1b71b6130 100644 --- a/src/transformers/models/convnext/modeling_tf_convnext.py +++ b/src/transformers/models/convnext/modeling_tf_convnext.py @@ -293,7 +293,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: output_hidden_states = ( output_hidden_states if output_hidden_states is not None else self.config.output_hidden_states @@ -439,7 +438,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: r""" Returns: @@ -518,7 +516,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/ctrl/modeling_tf_ctrl.py b/src/transformers/models/ctrl/modeling_tf_ctrl.py index 89d3ef561141..2a58467119ae 100644 --- a/src/transformers/models/ctrl/modeling_tf_ctrl.py +++ b/src/transformers/models/ctrl/modeling_tf_ctrl.py @@ -268,7 +268,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): # If using past key value states, only the last tokens @@ -541,7 +540,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): outputs = self.transformer( input_ids=input_ids, @@ -653,7 +651,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -765,7 +762,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/deberta/modeling_tf_deberta.py b/src/transformers/models/deberta/modeling_tf_deberta.py index c97b676596fb..90ec5ca2c89e 100644 --- a/src/transformers/models/deberta/modeling_tf_deberta.py +++ b/src/transformers/models/deberta/modeling_tf_deberta.py @@ -928,7 +928,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutput, Tuple[tf.Tensor]]: if input_ids is not None and inputs_embeds is not None: @@ -1096,7 +1095,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutput, Tuple[tf.Tensor]]: outputs = self.deberta( input_ids=input_ids, @@ -1156,7 +1154,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1242,7 +1239,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1325,7 +1321,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1404,7 +1399,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/deberta_v2/modeling_tf_deberta_v2.py b/src/transformers/models/deberta_v2/modeling_tf_deberta_v2.py index 0a77a6057d9d..39cf57a146f6 100644 --- a/src/transformers/models/deberta_v2/modeling_tf_deberta_v2.py +++ b/src/transformers/models/deberta_v2/modeling_tf_deberta_v2.py @@ -1028,7 +1028,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutput, Tuple[tf.Tensor]]: if input_ids is not None and inputs_embeds is not None: @@ -1198,7 +1197,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutput, Tuple[tf.Tensor]]: outputs = self.deberta( input_ids=input_ids, @@ -1259,7 +1257,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1346,7 +1343,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1430,7 +1426,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1510,7 +1505,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/distilbert/modeling_tf_distilbert.py b/src/transformers/models/distilbert/modeling_tf_distilbert.py index ccae454ebe05..07aeee9e1f97 100644 --- a/src/transformers/models/distilbert/modeling_tf_distilbert.py +++ b/src/transformers/models/distilbert/modeling_tf_distilbert.py @@ -372,7 +372,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if input_ids is not None and inputs_embeds is not None: raise ValueError("You cannot specify both input_ids and inputs_embeds at the same time") @@ -543,7 +542,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutput, Tuple[tf.Tensor]]: outputs = self.distilbert( input_ids=input_ids, @@ -647,7 +645,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -735,7 +732,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -817,7 +813,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -911,7 +906,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMultipleChoiceModelOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1021,7 +1015,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/dpr/modeling_tf_dpr.py b/src/transformers/models/dpr/modeling_tf_dpr.py index f2b1a1606e4d..df290f6f5d72 100644 --- a/src/transformers/models/dpr/modeling_tf_dpr.py +++ b/src/transformers/models/dpr/modeling_tf_dpr.py @@ -174,7 +174,6 @@ def call( output_hidden_states: bool = None, return_dict: bool = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor, ...]]: outputs = self.bert_model( input_ids=input_ids, @@ -235,7 +234,6 @@ def call( output_hidden_states: bool = False, return_dict: bool = False, training: bool = False, - **kwargs, ) -> Union[TFDPRReaderOutput, Tuple[tf.Tensor, ...]]: # notations: N - number of questions in a batch, M - number of passages per questions, L - sequence length n_passages, sequence_length = shape_list(input_ids) if input_ids is not None else shape_list(inputs_embeds)[:2] @@ -294,7 +292,6 @@ def call( output_hidden_states: bool = False, return_dict: bool = False, training: bool = False, - **kwargs, ) -> Union[TFDPRReaderOutput, Tuple[tf.Tensor, ...]]: outputs = self.encoder( input_ids=input_ids, @@ -328,7 +325,6 @@ def call( output_hidden_states: bool = False, return_dict: bool = False, training: bool = False, - **kwargs, ) -> Union[TFDPRReaderOutput, Tuple[tf.Tensor, ...]]: outputs = self.encoder( input_ids=input_ids, @@ -560,7 +556,6 @@ def call( output_hidden_states=None, return_dict=None, training: bool = False, - **kwargs, ) -> Union[TFDPRContextEncoderOutput, Tuple[tf.Tensor, ...]]: r""" Return: @@ -648,7 +643,6 @@ def call( output_hidden_states=None, return_dict=None, training: bool = False, - **kwargs, ) -> Union[TFDPRQuestionEncoderOutput, Tuple[tf.Tensor, ...]]: r""" Return: @@ -734,7 +728,6 @@ def call( output_hidden_states: bool = None, return_dict=None, training: bool = False, - **kwargs, ) -> Union[TFDPRReaderOutput, Tuple[tf.Tensor, ...]]: r""" Return: diff --git a/src/transformers/models/electra/modeling_tf_electra.py b/src/transformers/models/electra/modeling_tf_electra.py index 9cbbd4b7e1e5..eccb321f1005 100644 --- a/src/transformers/models/electra/modeling_tf_electra.py +++ b/src/transformers/models/electra/modeling_tf_electra.py @@ -719,7 +719,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPastAndCrossAttentions, Tuple[tf.Tensor]]: if not self.config.is_decoder: use_cache = False @@ -953,7 +952,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPastAndCrossAttentions, Tuple[tf.Tensor]]: r""" encoder_hidden_states (`tf.Tensor` of shape `(batch_size, sequence_length, hidden_size)`, *optional*): @@ -1043,7 +1041,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFElectraForPreTrainingOutput, Tuple[tf.Tensor]]: r""" Returns: @@ -1180,7 +1177,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1290,7 +1286,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1383,7 +1378,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMultipleChoiceModelOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1501,7 +1495,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1583,7 +1576,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/flaubert/modeling_tf_flaubert.py b/src/transformers/models/flaubert/modeling_tf_flaubert.py index 8441e1801730..f751c0f22502 100644 --- a/src/transformers/models/flaubert/modeling_tf_flaubert.py +++ b/src/transformers/models/flaubert/modeling_tf_flaubert.py @@ -258,7 +258,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFBaseModelOutput]: outputs = self.transformer( input_ids=input_ids, @@ -490,7 +489,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFBaseModelOutput]: # removed: src_enc=None, src_len=None @@ -808,7 +806,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFFlaubertWithLMHeadModelOutput]: transformer_outputs = self.transformer( diff --git a/src/transformers/models/funnel/modeling_tf_funnel.py b/src/transformers/models/funnel/modeling_tf_funnel.py index 56e6bf13b494..c1ddef0ad9cd 100644 --- a/src/transformers/models/funnel/modeling_tf_funnel.py +++ b/src/transformers/models/funnel/modeling_tf_funnel.py @@ -761,7 +761,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if input_ids is not None and inputs_embeds is not None: @@ -835,7 +834,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if input_ids is not None and inputs_embeds is not None: raise ValueError("You cannot specify both input_ids and inputs_embeds at the same time") @@ -1117,7 +1115,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[Tuple[tf.Tensor], TFBaseModelOutput]: return self.funnel( input_ids=input_ids, @@ -1165,7 +1162,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[Tuple[tf.Tensor], TFBaseModelOutput]: return self.funnel( @@ -1293,7 +1289,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: bool = False, - **kwargs, ) -> Union[Tuple[tf.Tensor], TFMaskedLMOutput]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1369,7 +1364,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: bool = False, - **kwargs, ) -> Union[Tuple[tf.Tensor], TFSequenceClassifierOutput]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1455,7 +1449,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: bool = False, - **kwargs, ) -> Union[Tuple[tf.Tensor], TFMultipleChoiceModelOutput]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1566,7 +1559,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: bool = False, - **kwargs, ) -> Union[Tuple[tf.Tensor], TFTokenClassifierOutput]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1645,7 +1637,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: bool = False, - **kwargs, ) -> Union[Tuple[tf.Tensor], TFQuestionAnsweringModelOutput]: r""" start_positions (`tf.Tensor` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/gpt2/modeling_tf_gpt2.py b/src/transformers/models/gpt2/modeling_tf_gpt2.py index 88b4fb5ed607..8a35208b52e8 100644 --- a/src/transformers/models/gpt2/modeling_tf_gpt2.py +++ b/src/transformers/models/gpt2/modeling_tf_gpt2.py @@ -367,7 +367,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPastAndCrossAttentions, Tuple[tf.Tensor]]: if input_ids is not None and inputs_embeds is not None: @@ -730,7 +729,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPastAndCrossAttentions, Tuple[tf.Tensor]]: r""" encoder_hidden_states (`tf.Tensor` of shape `(batch_size, sequence_length, hidden_size)`, *optional*): @@ -920,7 +918,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFCausalLMOutputWithCrossAttentions, Tuple[tf.Tensor]]: r""" encoder_hidden_states (`tf.Tensor` of shape `(batch_size, sequence_length, hidden_size)`, *optional*): @@ -1038,7 +1035,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFGPT2DoubleHeadsModelOutput, Tuple[tf.Tensor]]: r""" mc_token_ids (`tf.Tensor` or `Numpy array` of shape `(batch_size, num_choices)`, *optional*, default to index of the last token of the input): @@ -1195,7 +1191,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutputWithPast, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/gptj/modeling_tf_gptj.py b/src/transformers/models/gptj/modeling_tf_gptj.py index ce5c5d78e5ae..702b163f4719 100644 --- a/src/transformers/models/gptj/modeling_tf_gptj.py +++ b/src/transformers/models/gptj/modeling_tf_gptj.py @@ -390,7 +390,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if input_ids is not None and inputs_embeds is not None: @@ -672,7 +671,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ): r""" use_cache (`bool`, *optional*, defaults to `True`): @@ -781,7 +779,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ): r""" labels (`np.ndarray` or `tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -886,7 +883,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ): r""" labels (`np.ndarray` or `tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1011,7 +1007,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ): r""" start_positions (`np.ndarray` or `tf.Tensor` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/layoutlm/modeling_tf_layoutlm.py b/src/transformers/models/layoutlm/modeling_tf_layoutlm.py index e6fd771d37e2..86b2fc5a38ae 100644 --- a/src/transformers/models/layoutlm/modeling_tf_layoutlm.py +++ b/src/transformers/models/layoutlm/modeling_tf_layoutlm.py @@ -706,7 +706,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPoolingAndCrossAttentions, Tuple[tf.Tensor]]: if input_ids is not None and inputs_embeds is not None: @@ -928,7 +927,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPoolingAndCrossAttentions, Tuple[tf.Tensor]]: r""" Returns: @@ -1048,7 +1046,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1172,7 +1169,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1303,7 +1299,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/led/modeling_tf_led.py b/src/transformers/models/led/modeling_tf_led.py index 4519f5df9808..8381d81afb4d 100644 --- a/src/transformers/models/led/modeling_tf_led.py +++ b/src/transformers/models/led/modeling_tf_led.py @@ -1666,7 +1666,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): """ Args: @@ -1911,7 +1910,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): r""" Args: @@ -2333,7 +2331,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): """ Returns: @@ -2429,7 +2426,7 @@ def prepare_inputs_for_generation( decoder_head_mask=None, use_cache=None, encoder_outputs=None, - **kwargs, + **kwargs ): # cut decoder_input_ids if past is used if past is not None: diff --git a/src/transformers/models/longformer/modeling_tf_longformer.py b/src/transformers/models/longformer/modeling_tf_longformer.py index 762f872ee709..850a8113f6ad 100644 --- a/src/transformers/models/longformer/modeling_tf_longformer.py +++ b/src/transformers/models/longformer/modeling_tf_longformer.py @@ -1676,7 +1676,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if input_ids is not None and inputs_embeds is not None: @@ -2023,7 +2022,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFLongformerBaseModelOutputWithPooling, Tuple[tf.Tensor]]: outputs = self.longformer( @@ -2100,7 +2098,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFLongformerMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -2194,7 +2191,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFLongformerQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -2340,7 +2336,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFLongformerSequenceClassifierOutput, Tuple[tf.Tensor]]: if global_attention_mask is None and input_ids is not None: @@ -2450,7 +2445,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFLongformerMultipleChoiceModelOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -2580,7 +2574,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.array, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFLongformerTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): From 9bc6e7645a861c9ea861f3eb82e9ebf827276d25 Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Wed, 30 Mar 2022 16:45:06 +0000 Subject: [PATCH 07/13] remove unused kwargs in remaining models; inputs_processing is now protected --- src/transformers/modeling_tf_utils.py | 4 ++-- .../encoder_decoder/modeling_tf_encoder_decoder.py | 2 +- src/transformers/models/lxmert/modeling_tf_lxmert.py | 3 --- src/transformers/models/marian/modeling_tf_marian.py | 3 --- src/transformers/models/mbart/modeling_tf_mbart.py | 3 --- .../models/mobilebert/modeling_tf_mobilebert.py | 9 --------- src/transformers/models/mpnet/modeling_tf_mpnet.py | 6 ------ src/transformers/models/openai/modeling_tf_openai.py | 5 ----- .../models/pegasus/modeling_tf_pegasus.py | 3 --- .../models/rembert/modeling_tf_rembert.py | 8 -------- .../models/roberta/modeling_tf_roberta.py | 8 -------- .../models/roformer/modeling_tf_roformer.py | 8 -------- .../speech_to_text/modeling_tf_speech_to_text.py | 2 -- src/transformers/models/t5/modeling_tf_t5.py | 4 ---- src/transformers/models/tapas/modeling_tf_tapas.py | 5 ----- .../models/transfo_xl/modeling_tf_transfo_xl.py | 4 ---- .../modeling_tf_vision_encoder_decoder.py | 2 +- src/transformers/models/vit/modeling_tf_vit.py | 3 --- .../models/vit_mae/modeling_tf_vit_mae.py | 3 --- src/transformers/models/xlm/modeling_tf_xlm.py | 7 ------- src/transformers/models/xlnet/modeling_tf_xlnet.py | 7 ------- ...odeling_tf_{{cookiecutter.lowercase_modelname}}.py | 11 ----------- 22 files changed, 4 insertions(+), 106 deletions(-) diff --git a/src/transformers/modeling_tf_utils.py b/src/transformers/modeling_tf_utils.py index 9bc84c955aaa..6df5995dbf95 100644 --- a/src/transformers/modeling_tf_utils.py +++ b/src/transformers/modeling_tf_utils.py @@ -373,7 +373,7 @@ def run_call_with_unpacked_inputs(self, *args, **kwargs): # process the inputs and call the wrapped function main_input_name = getattr(self, "main_input_name", func.__code__.co_varnames[1]) main_input = fn_args_and_kwargs.pop(main_input_name, None) - unpacked_inputs = input_processing(func, self.config, main_input, **fn_args_and_kwargs) + unpacked_inputs = _input_processing(func, self.config, main_input, **fn_args_and_kwargs) return func(self, **unpacked_inputs) # Keras enforces the first layer argument to be passed, and checks it through `inspect.getfullargspec()`. This @@ -384,7 +384,7 @@ def run_call_with_unpacked_inputs(self, *args, **kwargs): return run_call_with_unpacked_inputs -def input_processing(func, config, input_ids, **kwargs): +def _input_processing(func, config, input_ids, **kwargs): """ Process the input of each TensorFlow model including the booleans. In case of a list of symbolic inputs, each input has to be named accordingly to the parameters name, i.e. `input_ids = tf.keras.Input(shape=(128,), dtype='int32', diff --git a/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py b/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py index 9e92e767b1b8..43aadd7b5ef4 100644 --- a/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py +++ b/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py @@ -575,7 +575,7 @@ def call( # Handle the case where the inputs are passed as a single dict which contains `labels`. # The `labels` shouldn't be passed to `self.encoder` below, because it is a based model without this - # parameter (otherwise, an error occurs when `input_processing` is called inside `self.encoder.call()`). + # parameter (otherwise, an error occurs when `_input_processing` is called inside `self.encoder.call()`). if "labels" in encoder_inputs: labels = encoder_inputs.pop("labels") diff --git a/src/transformers/models/lxmert/modeling_tf_lxmert.py b/src/transformers/models/lxmert/modeling_tf_lxmert.py index efa812a59654..2101b7cf1f54 100644 --- a/src/transformers/models/lxmert/modeling_tf_lxmert.py +++ b/src/transformers/models/lxmert/modeling_tf_lxmert.py @@ -685,7 +685,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if input_ids is not None and inputs_embeds is not None: @@ -946,7 +945,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): outputs = self.lxmert( input_ids, @@ -1282,7 +1280,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): r""" masked_lm_labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/marian/modeling_tf_marian.py b/src/transformers/models/marian/modeling_tf_marian.py index aa766e681544..a696a5648fe4 100644 --- a/src/transformers/models/marian/modeling_tf_marian.py +++ b/src/transformers/models/marian/modeling_tf_marian.py @@ -707,7 +707,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): """ Args: @@ -866,7 +865,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): r""" Args: @@ -1296,7 +1294,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/mbart/modeling_tf_mbart.py b/src/transformers/models/mbart/modeling_tf_mbart.py index 11e9a2a7d4fc..021dc21f21a1 100644 --- a/src/transformers/models/mbart/modeling_tf_mbart.py +++ b/src/transformers/models/mbart/modeling_tf_mbart.py @@ -684,7 +684,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutput, Tuple[tf.Tensor]]: """ Args: @@ -848,7 +847,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[ TFBaseModelOutputWithPastAndCrossAttentions, Tuple[tf.Tensor, tf.Tensor, tf.Tensor, tf.Tensor, tf.Tensor] ]: @@ -1287,7 +1285,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[tf.Tensor] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSeq2SeqLMOutput, Tuple[tf.Tensor]]: """ labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/mobilebert/modeling_tf_mobilebert.py b/src/transformers/models/mobilebert/modeling_tf_mobilebert.py index 007be43f5f06..5d1c74252e9b 100644 --- a/src/transformers/models/mobilebert/modeling_tf_mobilebert.py +++ b/src/transformers/models/mobilebert/modeling_tf_mobilebert.py @@ -692,7 +692,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if input_ids is not None and inputs_embeds is not None: raise ValueError("You cannot specify both input_ids and inputs_embeds at the same time") @@ -928,7 +927,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): outputs = self.mobilebert( input_ids=input_ids, @@ -993,7 +991,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): r""" Return: @@ -1092,7 +1089,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1176,7 +1172,6 @@ def call( return_dict=None, next_sentence_label=None, training=False, - **kwargs, ): r""" Return: @@ -1287,7 +1282,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1381,7 +1375,6 @@ def call( start_positions=None, end_positions=None, training=False, - **kwargs, ): r""" start_positions (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1498,7 +1491,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1626,7 +1618,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/mpnet/modeling_tf_mpnet.py b/src/transformers/models/mpnet/modeling_tf_mpnet.py index 5edd73c4170b..0e8c61e3403c 100644 --- a/src/transformers/models/mpnet/modeling_tf_mpnet.py +++ b/src/transformers/models/mpnet/modeling_tf_mpnet.py @@ -497,7 +497,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if input_ids is not None and inputs_embeds is not None: @@ -686,7 +685,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): outputs = self.mpnet( input_ids=input_ids, @@ -803,7 +801,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -909,7 +906,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1000,7 +996,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1112,7 +1107,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/openai/modeling_tf_openai.py b/src/transformers/models/openai/modeling_tf_openai.py index 490b3fac47e5..794bfdd9d783 100644 --- a/src/transformers/models/openai/modeling_tf_openai.py +++ b/src/transformers/models/openai/modeling_tf_openai.py @@ -247,7 +247,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if input_ids is not None and inputs_embeds is not None: @@ -520,7 +519,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): outputs = self.transformer( @@ -584,7 +582,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -667,7 +664,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): r""" mc_token_ids (`tf.Tensor` or `Numpy array` of shape `(batch_size, num_choices)`, *optional*, default to index of the last token of the input): @@ -811,7 +807,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/pegasus/modeling_tf_pegasus.py b/src/transformers/models/pegasus/modeling_tf_pegasus.py index 26f3ef461198..d7eea1660a40 100644 --- a/src/transformers/models/pegasus/modeling_tf_pegasus.py +++ b/src/transformers/models/pegasus/modeling_tf_pegasus.py @@ -710,7 +710,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): """ Args: @@ -872,7 +871,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): r""" Args: @@ -1305,7 +1303,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): """ labels (`tf.tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/rembert/modeling_tf_rembert.py b/src/transformers/models/rembert/modeling_tf_rembert.py index 9a3892f409fe..f40ea6f6f1c4 100644 --- a/src/transformers/models/rembert/modeling_tf_rembert.py +++ b/src/transformers/models/rembert/modeling_tf_rembert.py @@ -660,7 +660,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPoolingAndCrossAttentions, Tuple[tf.Tensor]]: if not self.config.is_decoder: @@ -959,7 +958,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPoolingAndCrossAttentions, Tuple[tf.Tensor]]: r""" encoder_hidden_states (`tf.Tensor` of shape `(batch_size, sequence_length, hidden_size)`, *optional*): @@ -1060,7 +1058,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1155,7 +1152,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFCausalLMOutputWithCrossAttentions, Tuple[tf.Tensor]]: r""" encoder_hidden_states (`tf.Tensor` of shape `(batch_size, sequence_length, hidden_size)`, *optional*): @@ -1283,7 +1279,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1374,7 +1369,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMultipleChoiceModelOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1494,7 +1488,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1575,7 +1568,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/roberta/modeling_tf_roberta.py b/src/transformers/models/roberta/modeling_tf_roberta.py index a62659582b7e..b63d99a901b7 100644 --- a/src/transformers/models/roberta/modeling_tf_roberta.py +++ b/src/transformers/models/roberta/modeling_tf_roberta.py @@ -624,7 +624,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPoolingAndCrossAttentions, Tuple[tf.Tensor]]: if not self.config.is_decoder: @@ -936,7 +935,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFBaseModelOutputWithPoolingAndCrossAttentions]: r""" encoder_hidden_states (`tf.Tensor` of shape `(batch_size, sequence_length, hidden_size)`, *optional*): @@ -1093,7 +1091,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1196,7 +1193,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFCausalLMOutputWithCrossAttentions, Tuple[tf.Tensor]]: r""" encoder_hidden_states (`tf.Tensor` of shape `(batch_size, sequence_length, hidden_size)`, *optional*): @@ -1353,7 +1349,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1449,7 +1444,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMultipleChoiceModelOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1567,7 +1561,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1655,7 +1648,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/roformer/modeling_tf_roformer.py b/src/transformers/models/roformer/modeling_tf_roformer.py index bed8ecf975c2..020824bb37e2 100644 --- a/src/transformers/models/roformer/modeling_tf_roformer.py +++ b/src/transformers/models/roformer/modeling_tf_roformer.py @@ -614,7 +614,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutput, Tuple[tf.Tensor]]: if input_ids is not None and inputs_embeds is not None: @@ -817,7 +816,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: outputs = self.roformer( input_ids=input_ids, @@ -877,7 +875,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -953,7 +950,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFCausalLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1064,7 +1060,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1155,7 +1150,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMultipleChoiceModelOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1269,7 +1263,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1348,7 +1341,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/speech_to_text/modeling_tf_speech_to_text.py b/src/transformers/models/speech_to_text/modeling_tf_speech_to_text.py index 6c78ab1b58f3..7848630314d4 100755 --- a/src/transformers/models/speech_to_text/modeling_tf_speech_to_text.py +++ b/src/transformers/models/speech_to_text/modeling_tf_speech_to_text.py @@ -791,7 +791,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): """ Args: @@ -957,7 +956,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): r""" Args: diff --git a/src/transformers/models/t5/modeling_tf_t5.py b/src/transformers/models/t5/modeling_tf_t5.py index 133103f3e855..9a2493862f3e 100644 --- a/src/transformers/models/t5/modeling_tf_t5.py +++ b/src/transformers/models/t5/modeling_tf_t5.py @@ -654,7 +654,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ) -> Tuple: if input_ids is not None and inputs_embeds is not None: @@ -1152,7 +1151,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFSeq2SeqModelOutput]: r""" Returns: @@ -1329,7 +1327,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFSeq2SeqLMOutput]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1627,7 +1624,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFBaseModelOutput]: r""" Returns: diff --git a/src/transformers/models/tapas/modeling_tf_tapas.py b/src/transformers/models/tapas/modeling_tf_tapas.py index 8f2138f2fbad..b6a2f10d1205 100644 --- a/src/transformers/models/tapas/modeling_tf_tapas.py +++ b/src/transformers/models/tapas/modeling_tf_tapas.py @@ -770,7 +770,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: if input_ids is not None and inputs_embeds is not None: @@ -980,7 +979,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: r""" Returns: @@ -1067,7 +1065,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1285,7 +1282,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTableQuestionAnsweringOutput, Tuple[tf.Tensor]]: r""" table_mask (`tf.Tensor` of shape `(batch_size, seq_length)`, *optional*): @@ -1602,7 +1598,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`torch.LongTensor` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/transfo_xl/modeling_tf_transfo_xl.py b/src/transformers/models/transfo_xl/modeling_tf_transfo_xl.py index d5dc28c36503..8ad931150edc 100644 --- a/src/transformers/models/transfo_xl/modeling_tf_transfo_xl.py +++ b/src/transformers/models/transfo_xl/modeling_tf_transfo_xl.py @@ -550,7 +550,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): # the original code for Transformer-XL used shapes [len, bsz] but we want a unified interface in the library @@ -898,7 +897,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): outputs = self.transformer( input_ids=input_ids, @@ -979,7 +977,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): if input_ids is not None: bsz, tgt_len = shape_list(input_ids)[:2] @@ -1088,7 +1085,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[Tuple, TFTransfoXLSequenceClassifierOutputWithPast]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): diff --git a/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py b/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py index edc2973a0734..39fdded0731f 100644 --- a/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py +++ b/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py @@ -605,7 +605,7 @@ def call( # Handle the case where the inputs are passed as a single dict which contains `labels`. # The `labels` shouldn't be passed to `self.encoder` below, because it is a based model without this - # parameter (otherwise, an error occurs when `input_processing` is called inside `self.encoder.call()`). + # parameter (otherwise, an error occurs when `_input_processing` is called inside `self.encoder.call()`). if "labels" in encoder_inputs: labels = encoder_inputs.pop("labels") diff --git a/src/transformers/models/vit/modeling_tf_vit.py b/src/transformers/models/vit/modeling_tf_vit.py index e2e946d8c9f4..cbf935f4f743 100644 --- a/src/transformers/models/vit/modeling_tf_vit.py +++ b/src/transformers/models/vit/modeling_tf_vit.py @@ -486,7 +486,6 @@ def call( interpolate_pos_encoding: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: if pixel_values is None: @@ -656,7 +655,6 @@ def call( interpolate_pos_encoding: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPooling, Tuple[tf.Tensor]]: r""" Returns: @@ -757,7 +755,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/vit_mae/modeling_tf_vit_mae.py b/src/transformers/models/vit_mae/modeling_tf_vit_mae.py index 40f100b64ff1..6ff588fce3d4 100644 --- a/src/transformers/models/vit_mae/modeling_tf_vit_mae.py +++ b/src/transformers/models/vit_mae/modeling_tf_vit_mae.py @@ -647,7 +647,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFViTMAEModelOutput, Tuple[tf.Tensor]]: embedding_output, mask, ids_restore = self.embeddings( pixel_values=pixel_values, training=training, noise=noise @@ -811,7 +810,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFViTMAEModelOutput, Tuple[tf.Tensor]]: r""" Returns: @@ -1028,7 +1026,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFViTMAEForPreTrainingOutput, Tuple[tf.Tensor]]: r""" Returns: diff --git a/src/transformers/models/xlm/modeling_tf_xlm.py b/src/transformers/models/xlm/modeling_tf_xlm.py index dbb994ed47c1..46b41fba3ae7 100644 --- a/src/transformers/models/xlm/modeling_tf_xlm.py +++ b/src/transformers/models/xlm/modeling_tf_xlm.py @@ -360,7 +360,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): # removed: src_enc=None, src_len=None @@ -707,7 +706,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): outputs = self.transformer( input_ids=input_ids, @@ -843,7 +841,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): transformer_outputs = self.transformer( input_ids=input_ids, @@ -917,7 +914,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1025,7 +1021,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): if input_ids is not None: num_choices = shape_list(input_ids)[1] @@ -1150,7 +1145,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1237,7 +1231,6 @@ def call( start_positions=None, end_positions=None, training=False, - **kwargs, ): r""" start_positions (`tf.Tensor` of shape `(batch_size,)`, *optional*): diff --git a/src/transformers/models/xlnet/modeling_tf_xlnet.py b/src/transformers/models/xlnet/modeling_tf_xlnet.py index 3a77c4845dfd..d81924d3451e 100644 --- a/src/transformers/models/xlnet/modeling_tf_xlnet.py +++ b/src/transformers/models/xlnet/modeling_tf_xlnet.py @@ -597,7 +597,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): if training and use_mems is None: @@ -1152,7 +1151,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): outputs = self.transformer( input_ids=input_ids, @@ -1262,7 +1260,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFXLNetLMHeadModelOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1394,7 +1391,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFXLNetForSequenceClassificationOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1501,7 +1497,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFXLNetForMultipleChoiceOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size,)`, *optional*): @@ -1623,7 +1618,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFXLNetForTokenClassificationOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` of shape `(batch_size, sequence_length)`, *optional*): @@ -1711,7 +1705,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFXLNetForQuestionAnsweringSimpleOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` of shape `(batch_size,)`, *optional*): diff --git a/templates/adding_a_new_model/cookiecutter-template-{{cookiecutter.modelname}}/modeling_tf_{{cookiecutter.lowercase_modelname}}.py b/templates/adding_a_new_model/cookiecutter-template-{{cookiecutter.modelname}}/modeling_tf_{{cookiecutter.lowercase_modelname}}.py index da2a0a3828f9..2d9914eebd6c 100644 --- a/templates/adding_a_new_model/cookiecutter-template-{{cookiecutter.modelname}}/modeling_tf_{{cookiecutter.lowercase_modelname}}.py +++ b/templates/adding_a_new_model/cookiecutter-template-{{cookiecutter.modelname}}/modeling_tf_{{cookiecutter.lowercase_modelname}}.py @@ -653,7 +653,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: bool = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPastAndCrossAttentions, Tuple[tf.Tensor]]: if not self.config.is_decoder: @@ -949,7 +948,6 @@ def call( output_hidden_states: Optional[bool] = None, return_dict: Optional[bool] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFBaseModelOutputWithPastAndCrossAttentions, Tuple[tf.Tensor]]: r""" encoder_hidden_states (`tf.Tensor` of shape `(batch_size, sequence_length, hidden_size)`, *optional*): @@ -1049,7 +1047,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMaskedLMOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1146,7 +1143,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFCausalLMOutputWithCrossAttentions, Tuple[tf.Tensor]]: r""" encoder_hidden_states (`tf.Tensor` of shape `(batch_size, sequence_length, hidden_size)`, *optional*): @@ -1289,7 +1285,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFSequenceClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1379,7 +1374,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFMultipleChoiceModelOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -1506,7 +1500,6 @@ def call( return_dict: Optional[bool] = None, labels: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFTokenClassifierOutput, Tuple[tf.Tensor]]: r""" labels (`tf.Tensor` or `np.ndarray` of shape `(batch_size, sequence_length)`, *optional*): @@ -1588,7 +1581,6 @@ def call( start_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, end_positions: Optional[Union[np.ndarray, tf.Tensor]] = None, training: Optional[bool] = False, - **kwargs, ) -> Union[TFQuestionAnsweringModelOutput, Tuple[tf.Tensor]]: r""" start_positions (`tf.Tensor` or `np.ndarray` of shape `(batch_size,)`, *optional*): @@ -2262,7 +2254,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): """ Args: @@ -2421,7 +2412,6 @@ def call( output_hidden_states=None, return_dict=None, training=False, - **kwargs, ): r""" Args: @@ -2876,7 +2866,6 @@ def call( return_dict=None, labels=None, training=False, - **kwargs, ): """ Returns: From 87b7ab574f727161290122b07cc0959f842fff1e Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Thu, 31 Mar 2022 09:26:52 +0000 Subject: [PATCH 08/13] forgot to pop empty kwargs --- src/transformers/modeling_tf_utils.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/transformers/modeling_tf_utils.py b/src/transformers/modeling_tf_utils.py index 6df5995dbf95..ac83d76daf8c 100644 --- a/src/transformers/modeling_tf_utils.py +++ b/src/transformers/modeling_tf_utils.py @@ -434,10 +434,12 @@ def _input_processing(func, config, input_ids, **kwargs): if has_kwargs: output["kwargs"] = kwargs.pop("kwargs_call", {}) - elif len(kwargs["kwargs_call"]) > 0: - raise ValueError( - f"The following keyword arguments are not supported by this model: {list(kwargs['kwargs_call'].keys())}." - ) + else: + if len(kwargs["kwargs_call"]) > 0: + raise ValueError( + f"The following keyword arguments are not supported by this model: {list(kwargs['kwargs_call'].keys())}." + ) + kwargs.pop("kwargs_call") for k, v in kwargs.items(): if isinstance(v, allowed_types) or v is None: From ac1f936ea37c9c40b602c309077c26385bf74851 Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Thu, 31 Mar 2022 15:26:35 +0000 Subject: [PATCH 09/13] handle models without attention --- src/transformers/modeling_tf_utils.py | 13 +++++++++---- tests/test_modeling_tf_common.py | 1 - 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/transformers/modeling_tf_utils.py b/src/transformers/modeling_tf_utils.py index ac83d76daf8c..21623ad7dcfd 100644 --- a/src/transformers/modeling_tf_utils.py +++ b/src/transformers/modeling_tf_utils.py @@ -312,9 +312,12 @@ def booleans_processing(config, **kwargs): if tf.executing_eagerly(): # Pure conv models (such as ConvNext) do not have `output_attentions` - final_booleans["output_attentions"] = kwargs.get("output_attentions", None) - if final_booleans["output_attentions"] is None: - final_booleans["output_attentions"] = config.output_attentions + if "output_attentions" in kwargs: + final_booleans["output_attentions"] = ( + kwargs["output_attentions"] + if kwargs["output_attentions"] is not None + else config.output_hidden_states + ) final_booleans["output_hidden_states"] = ( kwargs["output_hidden_states"] if kwargs["output_hidden_states"] is not None @@ -329,7 +332,9 @@ def booleans_processing(config, **kwargs): kwargs["use_cache"] if kwargs["use_cache"] is not None else getattr(config, "use_cache", None) ) else: - final_booleans["output_attentions"] = config.output_attentions + # Pure conv models (such as ConvNext) do not have `output_attentions` + if "output_attentions" in kwargs: + final_booleans["output_attentions"] = config.output_attentions final_booleans["output_hidden_states"] = config.output_hidden_states if kwargs.get("return_dict", None) not in (None, True): diff --git a/tests/test_modeling_tf_common.py b/tests/test_modeling_tf_common.py index 3d2f7976cf6c..f29054128af6 100644 --- a/tests/test_modeling_tf_common.py +++ b/tests/test_modeling_tf_common.py @@ -722,7 +722,6 @@ def check_encoder_attentions_output(outputs): for model_class in self.all_model_classes: inputs_dict["output_attentions"] = True - inputs_dict["use_cache"] = False config.output_hidden_states = False model = model_class(config) outputs = model(self._prepare_for_class(inputs_dict, model_class)) From 93c2a6590174f7662a151c25a15936314759ddaa Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Thu, 31 Mar 2022 16:11:10 +0000 Subject: [PATCH 10/13] derp --- src/transformers/modeling_tf_utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/transformers/modeling_tf_utils.py b/src/transformers/modeling_tf_utils.py index 21623ad7dcfd..2b08f60862e4 100644 --- a/src/transformers/modeling_tf_utils.py +++ b/src/transformers/modeling_tf_utils.py @@ -316,7 +316,7 @@ def booleans_processing(config, **kwargs): final_booleans["output_attentions"] = ( kwargs["output_attentions"] if kwargs["output_attentions"] is not None - else config.output_hidden_states + else config.output_attentions ) final_booleans["output_hidden_states"] = ( kwargs["output_hidden_states"] From df4da7942fde35ea2a734315abce95c61b5dd1b4 Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Fri, 1 Apr 2022 10:09:08 +0000 Subject: [PATCH 11/13] fix t5 tests --- src/transformers/models/t5/modeling_tf_t5.py | 17 +++++++++++ tests/convbert/test_modeling_tf_convbert.py | 1 - tests/t5/test_modeling_tf_t5.py | 5 +++ tests/test_modeling_tf_common.py | 32 +++++++++++--------- 4 files changed, 39 insertions(+), 16 deletions(-) diff --git a/src/transformers/models/t5/modeling_tf_t5.py b/src/transformers/models/t5/modeling_tf_t5.py index 9a2493862f3e..d7fd5b30145d 100644 --- a/src/transformers/models/t5/modeling_tf_t5.py +++ b/src/transformers/models/t5/modeling_tf_t5.py @@ -1608,6 +1608,10 @@ def __init__(self, config, *inputs, **kwargs): encoder_config.use_cache = False self.encoder = TFT5MainLayer(encoder_config, embed_tokens, name="encoder") + @property + def dummy_inputs(self): + return {"input_ids": tf.constant(DUMMY_INPUTS)} + def get_encoder(self): return self.encoder @@ -1666,6 +1670,19 @@ def call( attentions=encoder_outputs.attentions, ) + @tf.function( + input_signature=[ + { + "input_ids": tf.TensorSpec((None, None), tf.int32, name="input_ids"), + "attention_mask": tf.TensorSpec((None, None), tf.int32, name="attention_mask"), + } + ] + ) + def serving(self, inputs): + output = self.call(inputs) + + return self.serving_output(output) + # Copied from transformers.models.distilbert.modeling_tf_distilbert.TFDistilBertModel.serving_output def serving_output(self, output): hs = tf.convert_to_tensor(output.hidden_states) if self.config.output_hidden_states else None diff --git a/tests/convbert/test_modeling_tf_convbert.py b/tests/convbert/test_modeling_tf_convbert.py index ff4cbb1aa974..8ea646a38f2d 100644 --- a/tests/convbert/test_modeling_tf_convbert.py +++ b/tests/convbert/test_modeling_tf_convbert.py @@ -355,7 +355,6 @@ def check_encoder_attentions_output(outputs): for model_class in self.all_model_classes: inputs_dict["output_attentions"] = True - inputs_dict["use_cache"] = False config.output_hidden_states = False model = model_class(config) outputs = model(self._prepare_for_class(inputs_dict, model_class)) diff --git a/tests/t5/test_modeling_tf_t5.py b/tests/t5/test_modeling_tf_t5.py index a2ea255faca5..299f15f928c5 100644 --- a/tests/t5/test_modeling_tf_t5.py +++ b/tests/t5/test_modeling_tf_t5.py @@ -346,6 +346,11 @@ def test_resize_embeddings(self): self.assertEqual(model.get_input_embeddings().weight.shape[0], len(tokenizer)) self.assertNotEqual(model.get_input_embeddings().weight.shape[0], original_vocab_size) + # This test is run in `TFT5EncoderOnlyModelTest`, where the main layer has the same inputs as the model + @unittest.skip(reason="The inputs of the Main Layer are different.") + def test_keras_save_load(self): + pass + class TFT5EncoderOnlyModelTester: def __init__( diff --git a/tests/test_modeling_tf_common.py b/tests/test_modeling_tf_common.py index f29054128af6..c6079a6e4ca5 100644 --- a/tests/test_modeling_tf_common.py +++ b/tests/test_modeling_tf_common.py @@ -943,10 +943,6 @@ def recursive_check(tuple_object, dict_object): dict_inputs = self._prepare_for_class(inputs_dict, model_class) check_equivalence(model, tuple_inputs, dict_inputs) - tuple_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) - dict_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) - check_equivalence(model, tuple_inputs, dict_inputs) - tuple_inputs = self._prepare_for_class(inputs_dict, model_class) dict_inputs = self._prepare_for_class(inputs_dict, model_class) check_equivalence(model, tuple_inputs, dict_inputs, {"output_hidden_states": True}) @@ -955,19 +951,25 @@ def recursive_check(tuple_object, dict_object): dict_inputs = self._prepare_for_class(inputs_dict, model_class) check_equivalence(model, tuple_inputs, dict_inputs, {"output_attentions": True}) - tuple_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) - dict_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) - check_equivalence(model, tuple_inputs, dict_inputs, {"output_hidden_states": True}) + # Not all models accept "labels" in the forward pass (yet :) ) + if "labels" in inspect.signature(model.call).parameters.keys(): + tuple_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) + dict_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) + check_equivalence(model, tuple_inputs, dict_inputs) - tuple_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) - dict_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) - check_equivalence(model, tuple_inputs, dict_inputs, {"output_attentions": True}) + tuple_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) + dict_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) + check_equivalence(model, tuple_inputs, dict_inputs, {"output_hidden_states": True}) - tuple_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) - dict_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) - check_equivalence( - model, tuple_inputs, dict_inputs, {"output_hidden_states": True, "output_attentions": True} - ) + tuple_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) + dict_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) + check_equivalence(model, tuple_inputs, dict_inputs, {"output_attentions": True}) + + tuple_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) + dict_inputs = self._prepare_for_class(inputs_dict, model_class, return_labels=True) + check_equivalence( + model, tuple_inputs, dict_inputs, {"output_hidden_states": True, "output_attentions": True} + ) def test_inputs_embeds(self): config, inputs_dict = self.model_tester.prepare_config_and_inputs_for_common() From 364284ce766f959ed7fc9c618874715cc4e999ff Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Fri, 1 Apr 2022 10:24:06 +0000 Subject: [PATCH 12/13] Fix equivalence tests --- src/transformers/modeling_tf_utils.py | 4 +--- tests/test_modeling_tf_common.py | 7 ++++++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/transformers/modeling_tf_utils.py b/src/transformers/modeling_tf_utils.py index 2b08f60862e4..6a7b8b5684d0 100644 --- a/src/transformers/modeling_tf_utils.py +++ b/src/transformers/modeling_tf_utils.py @@ -314,9 +314,7 @@ def booleans_processing(config, **kwargs): # Pure conv models (such as ConvNext) do not have `output_attentions` if "output_attentions" in kwargs: final_booleans["output_attentions"] = ( - kwargs["output_attentions"] - if kwargs["output_attentions"] is not None - else config.output_attentions + kwargs["output_attentions"] if kwargs["output_attentions"] is not None else config.output_attentions ) final_booleans["output_hidden_states"] = ( kwargs["output_hidden_states"] diff --git a/tests/test_modeling_tf_common.py b/tests/test_modeling_tf_common.py index c6079a6e4ca5..a0ecbece310f 100644 --- a/tests/test_modeling_tf_common.py +++ b/tests/test_modeling_tf_common.py @@ -573,7 +573,12 @@ def check_pt_tf_models(tf_model, pt_model): pt_model = pt_model_class(config) tf_inputs_dict = self._prepare_for_class(inputs_dict, model_class) - tf_inputs_dict_maybe_with_labels = self._prepare_for_class(inputs_dict, model_class, return_labels=True) + tf_inputs_dict_maybe_with_labels = self._prepare_for_class( + inputs_dict, + model_class, + # Not all models accept "labels" in the forward pass (yet :) ) + return_labels=True if "labels" in inspect.signature(model_class.call).parameters.keys() else False, + ) # Check we can load pt model in tf and vice-versa with model => model functions tf_model = transformers.load_pytorch_model_in_tf2_model(tf_model, pt_model, tf_inputs=tf_inputs_dict) From a8d859d07f684c0984ed5b7a93137f948b12f9f4 Mon Sep 17 00:00:00 2001 From: Joao Gante Date: Mon, 4 Apr 2022 14:53:18 +0000 Subject: [PATCH 13/13] PR comments --- src/transformers/modeling_tf_utils.py | 10 ++++++---- .../encoder_decoder/modeling_tf_encoder_decoder.py | 2 +- .../modeling_tf_vision_encoder_decoder.py | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/transformers/modeling_tf_utils.py b/src/transformers/modeling_tf_utils.py index 6a7b8b5684d0..286209c0bc4b 100644 --- a/src/transformers/modeling_tf_utils.py +++ b/src/transformers/modeling_tf_utils.py @@ -311,7 +311,8 @@ def booleans_processing(config, **kwargs): final_booleans = {} if tf.executing_eagerly(): - # Pure conv models (such as ConvNext) do not have `output_attentions` + # Pure conv models (such as ConvNext) do not have `output_attentions`. If the signature has + # `output_attentions`, it will be present here in `kwargs`, even if unset (in that case, as `None`) if "output_attentions" in kwargs: final_booleans["output_attentions"] = ( kwargs["output_attentions"] if kwargs["output_attentions"] is not None else config.output_attentions @@ -330,7 +331,8 @@ def booleans_processing(config, **kwargs): kwargs["use_cache"] if kwargs["use_cache"] is not None else getattr(config, "use_cache", None) ) else: - # Pure conv models (such as ConvNext) do not have `output_attentions` + # Pure conv models (such as ConvNext) do not have `output_attentions`. If the signature has + # `output_attentions`, it will be present here in `kwargs`, even if unset (in that case, as `None`) if "output_attentions" in kwargs: final_booleans["output_attentions"] = config.output_attentions final_booleans["output_hidden_states"] = config.output_hidden_states @@ -376,7 +378,7 @@ def run_call_with_unpacked_inputs(self, *args, **kwargs): # process the inputs and call the wrapped function main_input_name = getattr(self, "main_input_name", func.__code__.co_varnames[1]) main_input = fn_args_and_kwargs.pop(main_input_name, None) - unpacked_inputs = _input_processing(func, self.config, main_input, **fn_args_and_kwargs) + unpacked_inputs = input_processing(func, self.config, main_input, **fn_args_and_kwargs) return func(self, **unpacked_inputs) # Keras enforces the first layer argument to be passed, and checks it through `inspect.getfullargspec()`. This @@ -387,7 +389,7 @@ def run_call_with_unpacked_inputs(self, *args, **kwargs): return run_call_with_unpacked_inputs -def _input_processing(func, config, input_ids, **kwargs): +def input_processing(func, config, input_ids, **kwargs): """ Process the input of each TensorFlow model including the booleans. In case of a list of symbolic inputs, each input has to be named accordingly to the parameters name, i.e. `input_ids = tf.keras.Input(shape=(128,), dtype='int32', diff --git a/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py b/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py index 43aadd7b5ef4..9e92e767b1b8 100644 --- a/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py +++ b/src/transformers/models/encoder_decoder/modeling_tf_encoder_decoder.py @@ -575,7 +575,7 @@ def call( # Handle the case where the inputs are passed as a single dict which contains `labels`. # The `labels` shouldn't be passed to `self.encoder` below, because it is a based model without this - # parameter (otherwise, an error occurs when `_input_processing` is called inside `self.encoder.call()`). + # parameter (otherwise, an error occurs when `input_processing` is called inside `self.encoder.call()`). if "labels" in encoder_inputs: labels = encoder_inputs.pop("labels") diff --git a/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py b/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py index 39fdded0731f..edc2973a0734 100644 --- a/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py +++ b/src/transformers/models/vision_encoder_decoder/modeling_tf_vision_encoder_decoder.py @@ -605,7 +605,7 @@ def call( # Handle the case where the inputs are passed as a single dict which contains `labels`. # The `labels` shouldn't be passed to `self.encoder` below, because it is a based model without this - # parameter (otherwise, an error occurs when `_input_processing` is called inside `self.encoder.call()`). + # parameter (otherwise, an error occurs when `input_processing` is called inside `self.encoder.call()`). if "labels" in encoder_inputs: labels = encoder_inputs.pop("labels")