Fast imports part 3 (#9474)
* New intermediate inits * Update template * Avoid importing torch/tf/flax in tokenization unless necessary * Styling * Shutup flake8 * Better python version check
This commit is contained in:
@@ -16,37 +16,101 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
from ...file_utils import is_flax_available, is_tf_available, is_tokenizers_available, is_torch_available
|
||||
from .configuration_mpnet import MPNET_PRETRAINED_CONFIG_ARCHIVE_MAP, MPNetConfig
|
||||
from .tokenization_mpnet import MPNetTokenizer
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from ...file_utils import (
|
||||
_BaseLazyModule,
|
||||
is_flax_available,
|
||||
is_tf_available,
|
||||
is_tokenizers_available,
|
||||
is_torch_available,
|
||||
)
|
||||
|
||||
|
||||
_import_structure = {
|
||||
"configuration_mpnet": ["MPNET_PRETRAINED_CONFIG_ARCHIVE_MAP", "MPNetConfig"],
|
||||
"tokenization_mpnet": ["MPNetTokenizer"],
|
||||
}
|
||||
|
||||
if is_tokenizers_available():
|
||||
from .tokenization_mpnet_fast import MPNetTokenizerFast
|
||||
_import_structure["tokenization_mpnet_fast"] = ["MPNetTokenizerFast"]
|
||||
|
||||
if is_torch_available():
|
||||
from .modeling_mpnet import (
|
||||
MPNET_PRETRAINED_MODEL_ARCHIVE_LIST,
|
||||
MPNetForMaskedLM,
|
||||
MPNetForMultipleChoice,
|
||||
MPNetForQuestionAnswering,
|
||||
MPNetForSequenceClassification,
|
||||
MPNetForTokenClassification,
|
||||
MPNetLayer,
|
||||
MPNetModel,
|
||||
MPNetPreTrainedModel,
|
||||
)
|
||||
_import_structure["modeling_mpnet"] = [
|
||||
"MPNET_PRETRAINED_MODEL_ARCHIVE_LIST",
|
||||
"MPNetForMaskedLM",
|
||||
"MPNetForMultipleChoice",
|
||||
"MPNetForQuestionAnswering",
|
||||
"MPNetForSequenceClassification",
|
||||
"MPNetForTokenClassification",
|
||||
"MPNetLayer",
|
||||
"MPNetModel",
|
||||
"MPNetPreTrainedModel",
|
||||
]
|
||||
|
||||
if is_tf_available():
|
||||
from .modeling_tf_mpnet import (
|
||||
TF_MPNET_PRETRAINED_MODEL_ARCHIVE_LIST,
|
||||
TFMPNetEmbeddings,
|
||||
TFMPNetForMaskedLM,
|
||||
TFMPNetForMultipleChoice,
|
||||
TFMPNetForQuestionAnswering,
|
||||
TFMPNetForSequenceClassification,
|
||||
TFMPNetForTokenClassification,
|
||||
TFMPNetMainLayer,
|
||||
TFMPNetModel,
|
||||
TFMPNetPreTrainedModel,
|
||||
)
|
||||
_import_structure["modeling_tf_mpnet"] = [
|
||||
"TF_MPNET_PRETRAINED_MODEL_ARCHIVE_LIST",
|
||||
"TFMPNetEmbeddings",
|
||||
"TFMPNetForMaskedLM",
|
||||
"TFMPNetForMultipleChoice",
|
||||
"TFMPNetForQuestionAnswering",
|
||||
"TFMPNetForSequenceClassification",
|
||||
"TFMPNetForTokenClassification",
|
||||
"TFMPNetMainLayer",
|
||||
"TFMPNetModel",
|
||||
"TFMPNetPreTrainedModel",
|
||||
]
|
||||
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from .configuration_mpnet import MPNET_PRETRAINED_CONFIG_ARCHIVE_MAP, MPNetConfig
|
||||
from .tokenization_mpnet import MPNetTokenizer
|
||||
|
||||
if is_tokenizers_available():
|
||||
from .tokenization_mpnet_fast import MPNetTokenizerFast
|
||||
|
||||
if is_torch_available():
|
||||
from .modeling_mpnet import (
|
||||
MPNET_PRETRAINED_MODEL_ARCHIVE_LIST,
|
||||
MPNetForMaskedLM,
|
||||
MPNetForMultipleChoice,
|
||||
MPNetForQuestionAnswering,
|
||||
MPNetForSequenceClassification,
|
||||
MPNetForTokenClassification,
|
||||
MPNetLayer,
|
||||
MPNetModel,
|
||||
MPNetPreTrainedModel,
|
||||
)
|
||||
|
||||
if is_tf_available():
|
||||
from .modeling_tf_mpnet import (
|
||||
TF_MPNET_PRETRAINED_MODEL_ARCHIVE_LIST,
|
||||
TFMPNetEmbeddings,
|
||||
TFMPNetForMaskedLM,
|
||||
TFMPNetForMultipleChoice,
|
||||
TFMPNetForQuestionAnswering,
|
||||
TFMPNetForSequenceClassification,
|
||||
TFMPNetForTokenClassification,
|
||||
TFMPNetMainLayer,
|
||||
TFMPNetModel,
|
||||
TFMPNetPreTrainedModel,
|
||||
)
|
||||
|
||||
else:
|
||||
import importlib
|
||||
import os
|
||||
import sys
|
||||
|
||||
class _LazyModule(_BaseLazyModule):
|
||||
"""
|
||||
Module class that surfaces all objects but only performs associated imports when the objects are requested.
|
||||
"""
|
||||
|
||||
__file__ = globals()["__file__"]
|
||||
__path__ = [os.path.dirname(__file__)]
|
||||
|
||||
def _get_module(self, module_name: str):
|
||||
return importlib.import_module("." + module_name, self.__name__)
|
||||
|
||||
sys.modules[__name__] = _LazyModule(__name__, _import_structure)
|
||||
|
||||
Reference in New Issue
Block a user