🔥Rework pipeline testing by removing PipelineTestCaseMeta 🚀 (#21516)
* Add PipelineTesterMixin * remove class PipelineTestCaseMeta * move validate_test_components * Add for ViT * Add to SPECIAL_MODULE_TO_TEST_MAP * style and quality * Add feature-extraction * update * raise instead of skip * add tiny_model_summary.json * more explicit * skip tasks not in mapping * add availability check * Add Copyright * A way to diable irrelevant tests * update with main * remove disable_irrelevant_tests * skip tests * better skip message * better skip message * Add all pipeline task tests * revert * Import PipelineTesterMixin * subclass test classes with PipelineTesterMixin * Add pipieline_model_mapping * Fix import after adding pipieline_model_mapping * Fix style and quality after adding pipieline_model_mapping * Fix one more import after adding pipieline_model_mapping * Fix style and quality after adding pipieline_model_mapping * Fix test issues * Fix import requirements * Fix mapping for MobileViTModelTest * Update * Better skip message * pipieline_model_mapping could not be None * Remove some PipelineTesterMixin * Fix typo * revert tests_fetcher.py * update * rename * revert * Remove PipelineTestCaseMeta from ZeroShotAudioClassificationPipelineTests * style and quality * test fetcher for all pipeline/model tests --------- Co-authored-by: ydshieh <ydshieh@users.noreply.github.com>
This commit is contained in:
@@ -22,6 +22,7 @@ from transformers.testing_utils import TestCasePlus, require_torch, slow, torch_
|
||||
from ...generation.test_utils import GenerationTesterMixin
|
||||
from ...test_configuration_common import ConfigTester
|
||||
from ...test_modeling_common import ModelTesterMixin, floats_tensor, ids_tensor, random_attention_mask
|
||||
from ...test_pipeline_mixin import PipelineTesterMixin
|
||||
|
||||
|
||||
if is_torch_available():
|
||||
@@ -365,7 +366,7 @@ class RobertaPreLayerNormModelTester:
|
||||
|
||||
@require_torch
|
||||
# Copied from tests.models.roberta.test_modelling_roberta.RobertaPreLayerNormModelTest with ROBERTA->ROBERTA_PRELAYERNORM,Roberta->RobertaPreLayerNorm
|
||||
class RobertaPreLayerNormModelTest(ModelTesterMixin, GenerationTesterMixin, unittest.TestCase):
|
||||
class RobertaPreLayerNormModelTest(ModelTesterMixin, GenerationTesterMixin, PipelineTesterMixin, unittest.TestCase):
|
||||
all_model_classes = (
|
||||
(
|
||||
RobertaPreLayerNormForCausalLM,
|
||||
@@ -380,6 +381,19 @@ class RobertaPreLayerNormModelTest(ModelTesterMixin, GenerationTesterMixin, unit
|
||||
else ()
|
||||
)
|
||||
all_generative_model_classes = (RobertaPreLayerNormForCausalLM,) if is_torch_available() else ()
|
||||
pipeline_model_mapping = (
|
||||
{
|
||||
"feature-extraction": RobertaPreLayerNormModel,
|
||||
"fill-mask": RobertaPreLayerNormForMaskedLM,
|
||||
"question-answering": RobertaPreLayerNormForQuestionAnswering,
|
||||
"text-classification": RobertaPreLayerNormForSequenceClassification,
|
||||
"text-generation": RobertaPreLayerNormForCausalLM,
|
||||
"token-classification": RobertaPreLayerNormForTokenClassification,
|
||||
"zero-shot": RobertaPreLayerNormForSequenceClassification,
|
||||
}
|
||||
if is_torch_available()
|
||||
else {}
|
||||
)
|
||||
fx_compatible = False
|
||||
|
||||
def setUp(self):
|
||||
|
||||
@@ -21,6 +21,7 @@ from transformers.testing_utils import require_sentencepiece, require_tf, requir
|
||||
|
||||
from ...test_configuration_common import ConfigTester
|
||||
from ...test_modeling_tf_common import TFModelTesterMixin, floats_tensor, ids_tensor, random_attention_mask
|
||||
from ...test_pipeline_mixin import PipelineTesterMixin
|
||||
|
||||
|
||||
if is_tf_available():
|
||||
@@ -549,7 +550,7 @@ class TFRobertaPreLayerNormModelTester:
|
||||
|
||||
@require_tf
|
||||
# Copied from tests.models.roberta.test_modelling_tf_roberta.TFRobertaPreLayerNormModelTest with ROBERTA->ROBERTA_PRELAYERNORM,Roberta->RobertaPreLayerNorm
|
||||
class TFRobertaPreLayerNormModelTest(TFModelTesterMixin, unittest.TestCase):
|
||||
class TFRobertaPreLayerNormModelTest(TFModelTesterMixin, PipelineTesterMixin, unittest.TestCase):
|
||||
all_model_classes = (
|
||||
(
|
||||
TFRobertaPreLayerNormModel,
|
||||
@@ -562,6 +563,19 @@ class TFRobertaPreLayerNormModelTest(TFModelTesterMixin, unittest.TestCase):
|
||||
if is_tf_available()
|
||||
else ()
|
||||
)
|
||||
pipeline_model_mapping = (
|
||||
{
|
||||
"feature-extraction": TFRobertaPreLayerNormModel,
|
||||
"fill-mask": TFRobertaPreLayerNormForMaskedLM,
|
||||
"question-answering": TFRobertaPreLayerNormForQuestionAnswering,
|
||||
"text-classification": TFRobertaPreLayerNormForSequenceClassification,
|
||||
"text-generation": TFRobertaPreLayerNormForCausalLM,
|
||||
"token-classification": TFRobertaPreLayerNormForTokenClassification,
|
||||
"zero-shot": TFRobertaPreLayerNormForSequenceClassification,
|
||||
}
|
||||
if is_tf_available()
|
||||
else {}
|
||||
)
|
||||
test_head_masking = False
|
||||
test_onnx = False
|
||||
|
||||
|
||||
Reference in New Issue
Block a user