From 6775b211b6412ddda9494da9498773bbb498a3de Mon Sep 17 00:00:00 2001 From: lewtun Date: Mon, 7 Feb 2022 17:32:13 +0100 Subject: [PATCH] Remove Longformers from ONNX-supported models (#15273) --- docs/source/serialization.mdx | 3 +-- .../longformer/configuration_longformer.py | 19 +------------------ src/transformers/onnx/features.py | 10 ---------- tests/test_onnx_v2.py | 1 - utils/check_table.py | 2 +- 5 files changed, 3 insertions(+), 32 deletions(-) diff --git a/docs/source/serialization.mdx b/docs/source/serialization.mdx index 83d291f767..b985fabaa2 100644 --- a/docs/source/serialization.mdx +++ b/docs/source/serialization.mdx @@ -43,7 +43,7 @@ and are designed to be easily extendable to other architectures. Ready-made configurations include the following architectures: - + - ALBERT - BART @@ -53,7 +53,6 @@ Ready-made configurations include the following architectures: - GPT Neo - I-BERT - LayoutLM -- Longformer - Marian - mBART - OpenAI GPT-2 diff --git a/src/transformers/models/longformer/configuration_longformer.py b/src/transformers/models/longformer/configuration_longformer.py index 59f6fc90bb..e3f5ba1a24 100644 --- a/src/transformers/models/longformer/configuration_longformer.py +++ b/src/transformers/models/longformer/configuration_longformer.py @@ -13,10 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. """ Longformer configuration""" -from collections import OrderedDict -from typing import List, Mapping, Union +from typing import List, Union -from ...onnx import OnnxConfig from ...utils import logging from ..roberta.configuration_roberta import RobertaConfig @@ -69,18 +67,3 @@ class LongformerConfig(RobertaConfig): def __init__(self, attention_window: Union[List[int], int] = 512, sep_token_id: int = 2, **kwargs): super().__init__(sep_token_id=sep_token_id, **kwargs) self.attention_window = attention_window - - -class LongformerOnnxConfig(OnnxConfig): - @property - def inputs(self) -> Mapping[str, Mapping[int, str]]: - return OrderedDict( - [ - ("input_ids", {0: "batch", 1: "sequence"}), - ("attention_mask", {0: "batch", 1: "sequence"}), - ] - ) - - @property - def outputs(self) -> Mapping[str, Mapping[int, str]]: - return OrderedDict([("last_hidden_state", {0: "batch", 1: "sequence"}), ("pooler_output", {0: "batch"})]) diff --git a/src/transformers/onnx/features.py b/src/transformers/onnx/features.py index 41f8970d70..1020387592 100644 --- a/src/transformers/onnx/features.py +++ b/src/transformers/onnx/features.py @@ -11,7 +11,6 @@ from ..models.gpt2 import GPT2OnnxConfig from ..models.gpt_neo import GPTNeoOnnxConfig from ..models.ibert import IBertOnnxConfig from ..models.layoutlm import LayoutLMOnnxConfig -from ..models.longformer import LongformerOnnxConfig from ..models.marian import MarianOnnxConfig from ..models.mbart import MBartOnnxConfig from ..models.roberta import RobertaOnnxConfig @@ -154,15 +153,6 @@ class FeaturesManager: "question-answering", onnx_config_cls=DistilBertOnnxConfig, ), - "longformer": supported_features_mapping( - "default", - "masked-lm", - "sequence-classification", - # "multiple-choice", - "token-classification", - "question-answering", - onnx_config_cls=LongformerOnnxConfig, - ), "marian": supported_features_mapping( "default", "default-with-past", diff --git a/tests/test_onnx_v2.py b/tests/test_onnx_v2.py index 53b28718a6..c159431027 100644 --- a/tests/test_onnx_v2.py +++ b/tests/test_onnx_v2.py @@ -174,7 +174,6 @@ PYTORCH_EXPORT_MODELS = { ("ibert", "kssteven/ibert-roberta-base"), ("camembert", "camembert-base"), ("distilbert", "distilbert-base-cased"), - # ("longFormer", "longformer-base-4096"), ("roberta", "roberta-base"), ("xlm-roberta", "xlm-roberta-base"), ("layoutlm", "microsoft/layoutlm-base-uncased"), diff --git a/utils/check_table.py b/utils/check_table.py index 9c81937f44..449ad02c3b 100644 --- a/utils/check_table.py +++ b/utils/check_table.py @@ -210,7 +210,7 @@ def check_onnx_model_list(overwrite=False): """Check the model list in the serialization.mdx is consistent with the state of the lib and maybe `overwrite`.""" current_list, start_index, end_index, lines = _find_text_in_file( filename=os.path.join(PATH_TO_DOCS, "serialization.mdx"), - start_prompt="", + start_prompt="", end_prompt="The ONNX conversion is supported for the PyTorch versions of the models.", ) new_list = get_onnx_model_list()