| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- # Copyright 2020 The HuggingFace Team. All rights reserved.
- #
- # Licensed under the Apache License, Version 2.0 (the "License");
- # you may not use this file except in compliance with the License.
- # You may obtain a copy of the License at
- #
- # http://www.apache.org/licenses/LICENSE-2.0
- #
- # Unless required by applicable law or agreed to in writing, software
- # distributed under the License is distributed on an "AS IS" BASIS,
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- # See the License for the specific language governing permissions and
- # limitations under the License.
- from .dependency_versions_table import deps
- from .utils.versions import require_version, require_version_core
- # define which module versions we always want to check at run time
- # (usually the ones defined in `install_requires` in setup.py)
- #
- # order specific notes:
- # - tqdm must be checked before tokenizers
- pkgs_to_check_at_runtime = [
- "python",
- "tqdm",
- "regex",
- "requests",
- "packaging",
- "filelock",
- "numpy",
- "tokenizers",
- "huggingface-hub",
- "safetensors",
- "accelerate",
- "pyyaml",
- ]
- for pkg in pkgs_to_check_at_runtime:
- if pkg in deps:
- if pkg == "tokenizers":
- # must be loaded here, or else tqdm check may fail
- from .utils import is_tokenizers_available
- if not is_tokenizers_available():
- continue # not required, check version only if installed
- elif pkg == "accelerate":
- # must be loaded here, or else tqdm check may fail
- from .utils import is_accelerate_available
- # Maybe switch to is_torch_available in the future here so that Accelerate is hard dep of
- # Transformers with PyTorch
- if not is_accelerate_available():
- continue # not required, check version only if installed
- require_version_core(deps[pkg])
- else:
- raise ValueError(f"can't find {pkg} in {deps.keys()}, check dependency_versions_table.py")
- def dep_version_check(pkg, hint=None):
- require_version(deps[pkg], hint)
|