nsml.copy¶
-
nsml.
copy
(source, target)¶ nsml.save 에서 저장된 pickle 파일을 call by value 형식으로 load 할때 사용됩니다.
dict 와 class attributes 는 copy 가 되지만 list type 은 지원하지 않습니다.
매개 변수: - source -- source object 입니다.
- target -- target object 입니다.
주석
source 와 target 의 type 이 똑같아야 합니다.
Example
def bind_model(model, class_to_save): def save(filename, **kwargs): with open(os.path.join(filename, ‘class.pkl’), ‘wb’) as fp: pickle.dump(class_to_save, fp) ... def load(filename, **kwargs): with open(os.path.join(filename, ‘class.pkl’, ‘rb’) as fp: temp_class = pickle.load(fp) assert type(temp_class) is type(class_to_save) nsml.copy(temp_class, class_to_save) ... nsml.bind(save=save, load=load) class ClasToSave: def __init___(self): self.elem = 0 self.elem2 = 1 class_to_save=ClassToSave() bind_model(model=model, class_to_save=class_to_save)