|
|
|
@@ -1,75 +0,0 @@ |
|
|
|
import os |
|
|
|
import unittest |
|
|
|
import zipfile |
|
|
|
import numpy as np |
|
|
|
|
|
|
|
import learnware |
|
|
|
from learnware.learnware import get_learnware_from_dirpath |
|
|
|
from learnware.client import LearnwareClient |
|
|
|
from learnware.client.container import ModelCondaContainer, LearnwaresContainer |
|
|
|
from learnware.learnware.reuse import AveragingReuser |
|
|
|
|
|
|
|
|
|
|
|
class TestLearnwareLoad(unittest.TestCase): |
|
|
|
def setUp(self): |
|
|
|
unittest.TestCase.setUpClass() |
|
|
|
email = "liujd@lamda.nju.edu.cn" |
|
|
|
token = "f7e647146a314c6e8b4e2e1079c4bca4" |
|
|
|
|
|
|
|
self.client = LearnwareClient() |
|
|
|
self.client.login(email, token) |
|
|
|
|
|
|
|
root = os.path.dirname(__file__) |
|
|
|
self.learnware_ids = ["00000084", "00000154", "00000155"] |
|
|
|
self.zip_paths = [os.path.join(root, x) for x in ["1.zip", "2.zip", "3.zip"]] |
|
|
|
|
|
|
|
def test_load_single_learnware_by_zippath(self): |
|
|
|
for learnware_id, zip_path in zip(self.learnware_ids, self.zip_paths): |
|
|
|
self.client.download_learnware(learnware_id, zip_path) |
|
|
|
|
|
|
|
learnware_list = [ |
|
|
|
self.client.load_learnware(learnware_path=zippath, runnable_option="conda_env") |
|
|
|
for zippath in self.zip_paths |
|
|
|
] |
|
|
|
reuser = AveragingReuser(learnware_list, mode="vote_by_label") |
|
|
|
input_array = np.random.random(size=(20, 13)) |
|
|
|
print(reuser.predict(input_array)) |
|
|
|
|
|
|
|
for learnware in learnware_list: |
|
|
|
print(learnware.id, learnware.predict(input_array)) |
|
|
|
|
|
|
|
def test_load_multi_learnware_by_zippath(self): |
|
|
|
for learnware_id, zip_path in zip(self.learnware_ids, self.zip_paths): |
|
|
|
self.client.download_learnware(learnware_id, zip_path) |
|
|
|
|
|
|
|
learnware_list = self.client.load_learnware(learnware_path=self.zip_paths, runnable_option="conda_env") |
|
|
|
reuser = AveragingReuser(learnware_list, mode="vote_by_label") |
|
|
|
input_array = np.random.random(size=(20, 13)) |
|
|
|
print(reuser.predict(input_array)) |
|
|
|
|
|
|
|
for learnware in learnware_list: |
|
|
|
print(learnware.id, learnware.predict(input_array)) |
|
|
|
|
|
|
|
def test_load_single_learnware_by_id(self): |
|
|
|
learnware_list = [ |
|
|
|
self.client.load_learnware(learnware_id=idx, runnable_option="conda_env") for idx in self.learnware_ids |
|
|
|
] |
|
|
|
reuser = AveragingReuser(learnware_list, mode="vote_by_label") |
|
|
|
input_array = np.random.random(size=(20, 13)) |
|
|
|
print(reuser.predict(input_array)) |
|
|
|
|
|
|
|
for learnware in learnware_list: |
|
|
|
print(learnware.id, learnware.predict(input_array)) |
|
|
|
|
|
|
|
def test_load_multi_learnware_by_id(self): |
|
|
|
learnware_list = self.client.load_learnware(learnware_id=self.learnware_ids, runnable_option="conda_env") |
|
|
|
reuser = AveragingReuser(learnware_list, mode="vote_by_label") |
|
|
|
input_array = np.random.random(size=(20, 13)) |
|
|
|
print(reuser.predict(input_array)) |
|
|
|
|
|
|
|
for learnware in learnware_list: |
|
|
|
print(learnware.id, learnware.predict(input_array)) |
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__": |
|
|
|
unittest.main() |