Browse Source

Merge branch 'main' of github.com:Learnware-LAMDA/Learnware into fix_docker_win

tags/v0.3.2
GeneLiuXe 2 years ago
parent
commit
11853981f1
4 changed files with 16 additions and 8 deletions
  1. +1
    -1
      learnware/__init__.py
  2. +1
    -1
      learnware/client/package_utils.py
  3. +12
    -2
      learnware/market/heterogeneous/__init__.py
  4. +2
    -4
      learnware/market/heterogeneous/searcher.py

+ 1
- 1
learnware/__init__.py View File

@@ -1,4 +1,4 @@
__version__ = "0.2.0.5"
__version__ = "0.2.0.6"


import os import os
import json import json


+ 1
- 1
learnware/client/package_utils.py View File

@@ -30,7 +30,7 @@ def parse_pip_requirement(line: str):


line = line.strip() line = line.strip()
if len(line) == 0 or line[0] in ("#", "-"): if len(line) == 0 or line[0] in ("#", "-"):
return None
return None, None


package_name, package_version = line, line package_name, package_version = line, line
for split_ch in ("=", ">", "<", "!", "~", " ", "="): for split_ch in ("=", ">", "<", "!", "~", " ", "="):


+ 12
- 2
learnware/market/heterogeneous/__init__.py View File

@@ -1,2 +1,12 @@
from .organizer import HeteroMapTableOrganizer
from .searcher import HeteroSearcher
from ...utils import is_torch_available
from ...logger import get_module_logger

logger = get_module_logger("market_hetero")

if not is_torch_available(verbose=False):
HeteroMapTableOrganizer = None
HeteroSearcher = None
logger.error("HeteroMapTableOrganizer and HeteroSearcher are not available because 'torch' is not installed!")
else:
from .organizer import HeteroMapTableOrganizer
from .searcher import HeteroSearcher

+ 2
- 4
learnware/market/heterogeneous/searcher.py View File

@@ -1,11 +1,9 @@
import traceback
from typing import Tuple, List
from typing import Optional


from .utils import is_hetero from .utils import is_hetero
from ..base import BaseUserInfo, SearchResults from ..base import BaseUserInfo, SearchResults
from ..easy import EasySearcher from ..easy import EasySearcher
from ..utils import parse_specification_type from ..utils import parse_specification_type
from ...learnware import Learnware
from ...logger import get_module_logger from ...logger import get_module_logger




@@ -14,7 +12,7 @@ logger = get_module_logger("hetero_searcher")


class HeteroSearcher(EasySearcher): class HeteroSearcher(EasySearcher):
def __call__( def __call__(
self, user_info: BaseUserInfo, check_status: int = None, max_search_num: int = 5, search_method: str = "greedy"
self, user_info: BaseUserInfo, check_status: Optional[int] = None, max_search_num: int = 5, search_method: str = "greedy"
) -> SearchResults: ) -> SearchResults:
"""Search learnwares based on user_info from learnwares with check_status. """Search learnwares based on user_info from learnwares with check_status.
Employs heterogeneous learnware search if specific requirements are met, otherwise resorts to homogeneous search methods. Employs heterogeneous learnware search if specific requirements are met, otherwise resorts to homogeneous search methods.


Loading…
Cancel
Save