| @@ -1,7 +0,0 @@ | |||||
| [flake8] | |||||
| max-line-length = 120 | |||||
| ignore = | |||||
| E203,E501,F841,W503 | |||||
| per-file-ignores = | |||||
| __init__.py: F401 | |||||
| ./learnware/utils/import_utils.py: F401 | |||||
| @@ -6,7 +6,7 @@ repos: | |||||
| args: ["-l 120"] | args: ["-l 120"] | ||||
| - repo: https://github.com/PyCQA/flake8 | - repo: https://github.com/PyCQA/flake8 | ||||
| rev: 4.0.1 | |||||
| rev: 6.1.0 | |||||
| hooks: | hooks: | ||||
| - id: flake8 | - id: flake8 | ||||
| args: ["--count", "--select=E9,F63,F7,F82", "--show-source", "--statistics"] | |||||
| args: ["--ignore=E203,E501,F841,W503"] | |||||
| @@ -1 +1,3 @@ | |||||
| from .learnware_client import LearnwareClient, SemanticSpecificationKey | from .learnware_client import LearnwareClient, SemanticSpecificationKey | ||||
| __all__ = ["LearnwareClient", "SemanticSpecificationKey"] | |||||
| @@ -6,3 +6,24 @@ from .evolve import EvolvedOrganizer | |||||
| from .evolve_anchor import EvolvedAnchoredOrganizer | from .evolve_anchor import EvolvedAnchoredOrganizer | ||||
| from .heterogeneous import HeteroMapTableOrganizer, HeteroSearcher | from .heterogeneous import HeteroMapTableOrganizer, HeteroSearcher | ||||
| from .module import instantiate_learnware_market | from .module import instantiate_learnware_market | ||||
| __all__ = [ | |||||
| "AnchoredOrganizer", | |||||
| "AnchoredSearcher", | |||||
| "AnchoredUserInfo", | |||||
| "BaseChecker", | |||||
| "BaseOrganizer", | |||||
| "BaseSearcher", | |||||
| "BaseUserInfo", | |||||
| "LearnwareMarket", | |||||
| "CondaChecker", | |||||
| "EasyOrganizer", | |||||
| "EasySearcher", | |||||
| "EasySemanticChecker", | |||||
| "EasyStatChecker", | |||||
| "EvolvedOrganizer", | |||||
| "EvolvedAnchoredOrganizer", | |||||
| "HeteroMapTableOrganizer", | |||||
| "HeteroSearcher", | |||||
| "instantiate_learnware_market", | |||||
| ] | |||||
| @@ -10,3 +10,5 @@ if not is_torch_available(verbose=False): | |||||
| logger.error("AnchoredSearcher is not available because 'torch' is not installed!") | logger.error("AnchoredSearcher is not available because 'torch' is not installed!") | ||||
| else: | else: | ||||
| from .searcher import AnchoredSearcher | from .searcher import AnchoredSearcher | ||||
| __all__ = ["AnchoredOrganizer", "AnchoredUserInfo", "AnchoredSearcher"] | |||||
| @@ -8,7 +8,20 @@ if not is_torch_available(verbose=False): | |||||
| EasySearcher = None | EasySearcher = None | ||||
| EasySemanticChecker = None | EasySemanticChecker = None | ||||
| EasyStatChecker = None | EasyStatChecker = None | ||||
| EasyExactSemanticSearcher = None | |||||
| EasyFuzzSemanticSearcher = None | |||||
| EasyStatSearcher = None | |||||
| logger.error("EasySeacher and EasyChecker are not available because 'torch' is not installed!") | logger.error("EasySeacher and EasyChecker are not available because 'torch' is not installed!") | ||||
| else: | else: | ||||
| from .checker import EasySemanticChecker, EasyStatChecker | from .checker import EasySemanticChecker, EasyStatChecker | ||||
| from .searcher import EasyExactSemanticSearcher, EasyFuzzSemanticSearcher, EasySearcher, EasyStatSearcher | from .searcher import EasyExactSemanticSearcher, EasyFuzzSemanticSearcher, EasySearcher, EasyStatSearcher | ||||
| __all__ = [ | |||||
| "EasyOrganizer", | |||||
| "EasySemanticChecker", | |||||
| "EasyStatChecker", | |||||
| "EasyExactSemanticSearcher", | |||||
| "EasyFuzzSemanticSearcher", | |||||
| "EasySearcher", | |||||
| "EasyStatSearcher", | |||||
| ] | |||||
| @@ -1 +1,3 @@ | |||||
| from .organizer import EvolvedOrganizer | from .organizer import EvolvedOrganizer | ||||
| __all__ = ["EvolvedOrganizer"] | |||||
| @@ -1 +1,3 @@ | |||||
| from .organizer import EvolvedAnchoredOrganizer | from .organizer import EvolvedAnchoredOrganizer | ||||
| __all__ = ["EvolvedAnchoredOrganizer"] | |||||
| @@ -10,3 +10,5 @@ if not is_torch_available(verbose=False): | |||||
| else: | else: | ||||
| from .organizer import HeteroMapTableOrganizer | from .organizer import HeteroMapTableOrganizer | ||||
| from .searcher import HeteroSearcher | from .searcher import HeteroSearcher | ||||
| __all__ = ["HeteroMapTableOrganizer", "HeteroSearcher"] | |||||
| @@ -646,3 +646,6 @@ class TransformerMultiLayer(nn.Module): | |||||
| for i, mod in enumerate(self.transformer_encoder): | for i, mod in enumerate(self.transformer_encoder): | ||||
| outputs = mod(outputs, src_key_padding_mask=attention_mask) | outputs = mod(outputs, src_key_padding_mask=attention_mask) | ||||
| return outputs | return outputs | ||||
| __all__ = ["HeteroMap", "Trainer"] | |||||
| @@ -1 +1,3 @@ | |||||
| from .base import BaseModel | from .base import BaseModel | ||||
| __all__ = ["BaseModel"] | |||||
| @@ -21,3 +21,14 @@ else: | |||||
| from .feature_augment import FeatureAugmentReuser | from .feature_augment import FeatureAugmentReuser | ||||
| from .hetero import FeatureAlignLearnware, HeteroMapAlignLearnware | from .hetero import FeatureAlignLearnware, HeteroMapAlignLearnware | ||||
| from .job_selector import JobSelectorReuser | from .job_selector import JobSelectorReuser | ||||
| __all__ = [ | |||||
| "AlignLearnware", | |||||
| "BaseReuser", | |||||
| "AveragingReuser", | |||||
| "EnsemblePruningReuser", | |||||
| "FeatureAugmentReuser", | |||||
| "FeatureAlignLearnware", | |||||
| "HeteroMapAlignLearnware", | |||||
| "JobSelectorReuser", | |||||
| ] | |||||
| @@ -1,2 +1,4 @@ | |||||
| from .feature_align import FeatureAlignLearnware | from .feature_align import FeatureAlignLearnware | ||||
| from .hetero_map import HeteroMapAlignLearnware | from .hetero_map import HeteroMapAlignLearnware | ||||
| __all__ = ["FeatureAlignLearnware", "HeteroMapAlignLearnware"] | |||||
| @@ -24,3 +24,20 @@ else: | |||||
| generate_semantic_spec, | generate_semantic_spec, | ||||
| generate_stat_spec, | generate_stat_spec, | ||||
| ) | ) | ||||
| __all__ = [ | |||||
| "BaseStatSpecification", | |||||
| "Specification", | |||||
| "RegularStatSpecification", | |||||
| "RKMEImageSpecification", | |||||
| "RKMEStatSpecification", | |||||
| "RKMETableSpecification", | |||||
| "RKMETextSpecification", | |||||
| "HeteroMapTableSpecification", | |||||
| "rkme_solve_qp", | |||||
| "generate_rkme_image_spec", | |||||
| "generate_rkme_table_spec", | |||||
| "generate_rkme_text_spec", | |||||
| "generate_semantic_spec", | |||||
| "generate_stat_spec", | |||||
| ] | |||||
| @@ -2,3 +2,12 @@ from .base import RegularStatSpecification | |||||
| from .image import RKMEImageSpecification | from .image import RKMEImageSpecification | ||||
| from .table import RKMEStatSpecification, RKMETableSpecification, rkme_solve_qp | from .table import RKMEStatSpecification, RKMETableSpecification, rkme_solve_qp | ||||
| from .text import RKMETextSpecification | from .text import RKMETextSpecification | ||||
| __all__ = [ | |||||
| "RegularStatSpecification", | |||||
| "RKMEImageSpecification", | |||||
| "RKMEStatSpecification", | |||||
| "RKMETableSpecification", | |||||
| "rkme_solve_qp", | |||||
| "RKMETextSpecification", | |||||
| ] | |||||
| @@ -8,3 +8,5 @@ if not is_torch_available(verbose=False): | |||||
| logger.error("RKMEImageSpecification is not available because 'torch' is not installed!") | logger.error("RKMEImageSpecification is not available because 'torch' is not installed!") | ||||
| else: | else: | ||||
| from .rkme import RKMEImageSpecification | from .rkme import RKMEImageSpecification | ||||
| __all__ = ["RKMEImageSpecification"] | |||||
| @@ -12,3 +12,5 @@ if not is_torch_available(verbose=False): | |||||
| ) | ) | ||||
| else: | else: | ||||
| from .rkme import RKMEStatSpecification, RKMETableSpecification, rkme_solve_qp | from .rkme import RKMEStatSpecification, RKMETableSpecification, rkme_solve_qp | ||||
| __all__ = ["RKMEStatSpecification", "RKMETableSpecification", "rkme_solve_qp"] | |||||
| @@ -8,3 +8,5 @@ if not is_torch_available(verbose=False): | |||||
| logger.error("RKMETextSpecification is not available because 'torch' is not installed!") | logger.error("RKMETextSpecification is not available because 'torch' is not installed!") | ||||
| else: | else: | ||||
| from .rkme import RKMETextSpecification | from .rkme import RKMETextSpecification | ||||
| __all__ = ["RKMETextSpecification"] | |||||
| @@ -9,3 +9,5 @@ if not is_torch_available(verbose=False): | |||||
| logger.error("HeteroMapTableSpecification is not available because 'torch' is not installed!") | logger.error("HeteroMapTableSpecification is not available because 'torch' is not installed!") | ||||
| else: | else: | ||||
| from .hetero_table import HeteroMapTableSpecification | from .hetero_table import HeteroMapTableSpecification | ||||
| __all__ = ["SystemStatSpecification", "HeteroMapTableSpecification"] | |||||
| @@ -1 +1,3 @@ | |||||
| from .utils import parametrize | from .utils import parametrize | ||||
| __all__ = ["parametrize"] | |||||
| @@ -5,7 +5,6 @@ from .file import convert_folder_to_zipfile, read_yaml_to_dict, save_dict_to_yam | |||||
| from .gpu import allocate_cuda_idx, choose_device, setup_seed | from .gpu import allocate_cuda_idx, choose_device, setup_seed | ||||
| from .import_utils import is_torch_available | from .import_utils import is_torch_available | ||||
| from .module import get_module_by_module_path | from .module import get_module_by_module_path | ||||
| from ..config import SystemType, get_platform | |||||
| def zip_learnware_folder(path: str, output_name: str): | def zip_learnware_folder(path: str, output_name: str): | ||||
| @@ -16,3 +15,15 @@ def zip_learnware_folder(path: str, output_name: str): | |||||
| if file.endswith(".pyc") or os.path.islink(full_path): | if file.endswith(".pyc") or os.path.islink(full_path): | ||||
| continue | continue | ||||
| zip_ref.write(full_path, arcname=os.path.relpath(full_path, path)) | zip_ref.write(full_path, arcname=os.path.relpath(full_path, path)) | ||||
| __all__ = [ | |||||
| "convert_folder_to_zipfile", | |||||
| "read_yaml_to_dict", | |||||
| "save_dict_to_yaml", | |||||
| "allocate_cuda_idx", | |||||
| "choose_device", | |||||
| "setup_seed", | |||||
| "is_torch_available", | |||||
| "get_module_by_module_path", | |||||
| ] | |||||
| @@ -5,7 +5,7 @@ logger = get_module_logger("import_utils") | |||||
| def is_torch_available(verbose=False): | def is_torch_available(verbose=False): | ||||
| try: | try: | ||||
| import torch | |||||
| import torch # noqa: F401 | |||||
| except ModuleNotFoundError as err: | except ModuleNotFoundError as err: | ||||
| if verbose is True: | if verbose is True: | ||||
| logger.warning("ModuleNotFoundError: torch is not installed, please install pytorch!") | logger.warning("ModuleNotFoundError: torch is not installed, please install pytorch!") | ||||